Page MenuHomeWildfire Games

Trailer hacks [not for commit]
Needs ReviewPublic

Authored by wraitii on Feb 1 2021, 11:55 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

This is the diff for trailer hacks, which can be used to record the game at a constant framerate.
Some of this is splittable and committable, some of this isn't. Ideally, in the farther future, this will be supported.

Does not include the library files themselves for libJPEG.


Rebased from https://github.com/elexis1/0ad/tree/trailerhacks_a23

Test Plan

Compile.

Diff Detail

Repository
rP 0 A.D. Public Repository
Branch
__TRAILER_HACKS
Lint
Lint Errors
SeverityLocationCodeMessage
Warningbinaries/data/mods/public/gui/session/session.js:682ESLINTspaced-comment
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:54ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTkey-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTobject-curly-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTcomma-spacing
Warningbinaries/data/mods/public/maps/cinematics/CinemaHelper.js:55ESLINTobject-curly-spacing
Unit
No Unit Test Coverage
Build Status
Buildable 18041
Build 42175: Vulcan BuildJenkins
Build 42174: Vulcan Build (macOS)Jenkins
Build 42173: Vulcan Build (Windows)Jenkins
Build 42172: arc lint + arc unit

Event Timeline

wraitii created this revision.Feb 1 2021, 11:55 AM
Owners added subscribers: Restricted Owners Package, Restricted Owners Package.Feb 1 2021, 11:55 AM
wraitii updated this revision to Diff 15785.Feb 1 2021, 11:57 AM

FFMPEG script

Build has FAILED

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libnetwork_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/liblobby_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
../../../source/graphics/ShaderProgram.cpp:86:15: warning: 'Reload' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
        virtual void Reload()
                     ^
../../../source/graphics/ShaderProgram.h:124:15: note: overridden virt

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/3130/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/macos-differential/3130/display/redirectconsole

Build has FAILED

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libnetwork_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/liblobby_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
../../../source/graphics/ShaderProgram.cpp:86:15: warning: 'Reload' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
        virtual void Reload()
                     ^
../../../source/graphics/ShaderProgram.h:124:15: note: overridden virt

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/3131/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/macos-differential/3131/display/redirectconsole

Build has FAILED

builderr-debug-gcc7.txt
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: jpeglib.h: No such file or directory
 #include <jpeglib.h>
          ^~~~~~~~~~~
compilation terminated.
make[1]: *** [lowlevel.make:427: obj/lowlevel_Debug/tex_jpg.o] Error 1
make: *** [Makefile:143: lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/4788/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/docker-differential/4788/display/redirectconsole

Why JPEG? It's not really good for quality in terms of recompressing in a sequence. Because each frame will have artifacts in different places.

I believe that the best solution is to just redirect the video stream to ffmpeg.

Stan added subscribers: elexis, Stan.EditedFeb 1 2021, 12:08 PM

That was what was done by @elexis for the last trailer, it worked well enough. If you want to help making the trailer feature be my guest.

There is no "video stream" we just take a awful lot of screenshots and make sure we have 60 image per second of game.

Build has FAILED

builderr-debug-gcc7.txt
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: jpeglib.h: No such file or directory
 #include <jpeglib.h>
          ^~~~~~~~~~~
compilation terminated.
make[1]: *** [lowlevel.make:427: obj/lowlevel_Debug/tex_jpg.o] Error 1
make: *** [Makefile:143: lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/4789/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/docker-differential/4789/display/redirectconsole

wraitii requested review of this revision.Feb 1 2021, 12:10 PM

Build has FAILED

Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     3>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\Collada.vcxproj]
     5>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\work

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4220/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4220/display/redirectconsole

Build has FAILED

Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     3>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\Collada.vcxproj]
     5>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\work

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4221/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4221/display/redirectconsole

Vulcan added a comment.Feb 1 2021, 1:03 PM

Build has FAILED

Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     3>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\Collada.vcxproj]
     5>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Support for targeting Windows XP is deprecated and will not be present in future releases of Visual Studio. Please see https://go.microsoft.com/fwlink/?linkid=2023588 for more information. [E:\Jenkins\workspace\vs2015-differential\build\work

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4223/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4223/display/redirectconsole

Vulcan added a comment.Feb 1 2021, 1:15 PM

Build has FAILED

Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     6>e:\jenkins\workspace\vs2015-differential\source\rlinterface\rlinterface.cpp(374): warning C4062: enumerator 'RL::GameMessageType::None' in switch of enum 'RL::GameMessageType' is not handled [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\rlinterface.vcxproj]
     9>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     9>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4224/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4224/display/redirectconsole

In D3507#154343, @Stan wrote:

we just take a awful lot of screenshots and make sure we have 60 image per second of game.

That's called video stream. Just saving it to files.

Why JPEG? It's not really good for quality in terms of recompressing in a sequence. Because each frame will have artifacts in different places.

I think the quality at > 80% quality levels is sufficient for our purposes. Our frames are rarely static anyways, so I don't think the artefacts are a huge issue.
Regardless, I think this saves JPEG because .png will quickly be too heavy to be practical. An image at 1650x1050 is 3Mb. 60 FPS is 180MB/s. .png is also slower to read/write, making the whole process slightly worse.

I believe that the best solution is to just redirect the video stream to ffmpeg.

Yes, not claiming this is the "best" solution. It's a quick hack I rebased from elexis. I do agree with you - it seems possibly easier, certainly faster to just stream into ffmpeg directly.

Vulcan added a comment.Feb 1 2021, 2:34 PM

Build has FAILED

Debug:\n 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     6>e:\jenkins\workspace\vs2015-differential\source\rlinterface\rlinterface.cpp(374): warning C4062: enumerator 'RL::GameMessageType::None' in switch of enum 'RL::GameMessageType' is not handled [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\rlinterface.vcxproj]
     8>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     8>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\wor

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4229/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4229/display/redirectconsole

Vulcan added a comment.Feb 1 2021, 2:39 PM

Build has FAILED

Debug: 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     6>e:\jenkins\workspace\vs2015-differential\source\rlinterface\rlinterface.cpp(374): warning C4062: enumerator 'RL::GameMessageType::None' in switch of enum 'RL::GameMessageType' is not handled [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\rlinterface.vcxproj]
    11>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\components\CCmpAIManager.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
     9>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkin

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4230/display/redirect
See console output for more information: https://jenkins.wildfiregames.com/job/vs2015-differential/4230/display/redirectconsole

Vulcan added a comment.Feb 1 2021, 3:57 PM

Build failure - The Moirai have given mortals hearts that can endure.

Debug: 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     6>e:\jenkins\workspace\vs2015-differential\source\rlinterface\rlinterface.cpp(374): warning C4062: enumerator 'RL::GameMessageType::None' in switch of enum 'RL::GameMessageType' is not handled [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\rlinterface.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(200): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(230): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(200): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(230): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(200): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(230): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(148): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(193): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(200): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\source\network\netmessages.h(230): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     7>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\network\NetMessageSim.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
     8>tinygettext.obj : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\tinygettext.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\components\CCmpAIManager.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\source\simulation2\components\ccmppathfinder.cpp(823): warning C4456: declaration of 'profile2__' hides previous local declaration [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    13>e:\jenkins\workspace\vs2015-differential\libraries\win32\fmt\include\fmt\format.h(1535): warning C4459: declaration of 'prefix' hides global declaration (compiling source file ..\..\..\source\ps\DllLoader.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\engine.vcxproj]
    13>e:\jenkins\workspace\vs2015-differential\source\ps\gamesetup\gamesetup.cpp(288): warning C4456: declaration of 'profile2__' hides previous local declaration [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\engine.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\serialization\BinarySerializer.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\serialization\HashSerializer.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\serialization\StdDeserializer.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\serialization\StdSerializer.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    12>e:\jenkins\workspace\vs2015-differential\libraries\source\spidermonkey\include-win32-debug\js\sweepingapi.h(38): warning C4100: 'needs': unreferenced formal parameter (compiling source file ..\..\..\source\simulation2\system\ComponentManagerSerialization.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\simulation2.vcxproj]
    14>e:\jenkins\workspace\vs2015-differential\source\renderer\renderer.cpp(1282): warning C4456: declaration of 'profile2__' hides previous local declaration [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\graphics.vcxproj]
    14>e:\jenkins\workspace\vs2015-differential\source\renderer\renderer.cpp(1308): warning C4456: declaration of 'profile2__' hides previous local declaration [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\graphics.vcxproj]
    14>e:\jenkins\workspace\vs2015-differential\source\renderer\renderer.cpp(1328): warning C4456: declaration of 'profile2__' hides previous local declaration [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\graphics.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_bmp.cpp(127): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_dds.cpp(618): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\external_libraries\libjpeg.h(32): fatal error C1083: Cannot open include file: 'jpeglib.h': No such file or directory (compiling source file ..\..\..\source\lib\tex\tex_jpg.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_tga.cpp(147): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_png.cpp(307): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/4234/display/redirect

wraitii edited the summary of this revision. (Show Details)Feb 2 2021, 9:46 AM
Stan added inline comments.Feb 2 2021, 10:47 PM
source/main.cpp
365

Stuff should probably be out.

389
source/ps/GameSetup/GameSetup.cpp
857

Fun fact the path depends on where you start the executable and if it doesn't find it it writes it in the public mod :D

source/ps/Util.cpp
286

Might be smart not to get this at every frame.

288–298

Nuke this for moar speed.

wraitii updated this revision to Diff 18140.Jun 8 2021, 5:52 PM

Rebased for A25

Vulcan added a comment.Jun 8 2021, 5:58 PM

Build failure - The Moirai have given mortals hearts that can endure.

Debug: 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     7>e:\jenkins\workspace\vs2015-differential\source\network\netclient.cpp(307): warning C4701: potentially uninitialized local variable 'port' used [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_bmp.cpp(127): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\external_libraries\libjpeg.h(32): fatal error C1083: Cannot open include file: 'jpeglib.h': No such file or directory (compiling source file ..\..\..\source\lib\tex\tex_jpg.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_dds.cpp(618): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_tga.cpp(147): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_png.cpp(307): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/5727/display/redirect

wraitii updated this revision to Diff 18141.Jun 8 2021, 6:01 PM

Add my rotation GamView method as well which was useful.

Vulcan added a comment.Jun 8 2021, 6:04 PM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-gcc7.txt
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: jpeglib.h: No such file or directory
 #include <jpeglib.h>
          ^~~~~~~~~~~
compilation terminated.
make[1]: *** [lowlevel.make:423: obj/lowlevel_Debug/tex_jpg.o] Error 1
make: *** [Makefile:143: lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/6350/display/redirect

Vulcan added a comment.Jun 8 2021, 6:05 PM

Build failure - The Moirai have given mortals hearts that can endure.

Debug: 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     7>e:\jenkins\workspace\vs2015-differential\source\network\netclient.cpp(307): warning C4701: potentially uninitialized local variable 'port' used [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_bmp.cpp(127): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_dds.cpp(618): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\external_libraries\libjpeg.h(32): fatal error C1083: Cannot open include file: 'jpeglib.h': No such file or directory (compiling source file ..\..\..\source\lib\tex\tex_jpg.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_png.cpp(307): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_tga.cpp(147): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/5728/display/redirect

Vulcan added a comment.Jun 8 2021, 6:11 PM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-gcc7.txt
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: jpeglib.h: No such file or directory
 #include <jpeglib.h>
          ^~~~~~~~~~~
compilation terminated.
make[1]: *** [lowlevel.make:423: obj/lowlevel_Debug/tex_jpg.o] Error 1
make: *** [Makefile:143: lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/6351/display/redirect

Vulcan added a comment.Jun 8 2021, 6:37 PM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libnetwork_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/liblobby_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgraphics_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libatlas_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgui_dbg.a(precompiled.o) has no symbols
../../../source/lib/tex/tex_bmp.cpp:127:72: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecBmp::encode(Tex* RESTRICT t, DynArray* RESTRICT da, int quality) const
                                                                       ^
1 warning generated.
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: 'jpeglib.h' file not found
#include <jpeglib.h>
         ^~~~~~~~~~~
1 error generated.
make[1]: *** [obj/lowlevel_Debug/tex_jpg.o] Error 1
make[1]: *** Waiting for unfinished jobs....
../../../source/lib/tex/tex_dds.cpp:618:88: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecDds::encode(Tex* RESTRICT UNUSED(t), DynArray* RESTRICT UNUSED(da), int quality) const
                                                                                       ^
1 warning generated.
make: *** [lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/4632/display/redirect

Vulcan added a comment.Jun 8 2021, 6:41 PM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libnetwork_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/liblobby_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgraphics_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libatlas_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgui_dbg.a(precompiled.o) has no symbols
../../../source/lib/tex/tex_bmp.cpp:127:72: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecBmp::encode(Tex* RESTRICT t, DynArray* RESTRICT da, int quality) const
                                                                       ^
1 warning generated.
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: 'jpeglib.h' file not found
#include <jpeglib.h>
         ^~~~~~~~~~~
1 error generated.
make[1]: *** [obj/lowlevel_Debug/tex_jpg.o] Error 1
make[1]: *** Waiting for unfinished jobs....
../../../source/lib/tex/tex_dds.cpp:618:88: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecDds::encode(Tex* RESTRICT UNUSED(t), DynArray* RESTRICT UNUSED(da), int quality) const
                                                                                       ^
1 warning generated.
make: *** [lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/4633/display/redirect

wraitii updated this revision to Diff 18262.Jun 14 2021, 12:21 PM

Minor fixes & add a preloaded JS file with some simple cinematics to trigger. These ought make it relatively easy to generate content.

Owners added a subscriber: Restricted Owners Package.Jun 14 2021, 12:22 PM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libnetwork_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/liblobby_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libsimulation2_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgraphics_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libatlas_dbg.a(precompiled.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libgui_dbg.a(precompiled.o) has no symbols
../../../source/lib/tex/tex_bmp.cpp:127:72: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecBmp::encode(Tex* RESTRICT t, DynArray* RESTRICT da, int quality) const
                                                                       ^
1 warning generated.
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: 'jpeglib.h' file not found
#include <jpeglib.h>
         ^~~~~~~~~~~
../../../source/lib/tex/tex_dds.cpp:618:88: warning: unused parameter 'quality' [-Wunused-parameter]
Status TexCodecDds::encode(Tex* RESTRICT UNUSED(t), DynArray* RESTRICT UNUSED(da), int quality) const
                                                                                       ^
1 error generated.
make[1]: *** [obj/lowlevel_Debug/tex_jpg.o] Error 1
make[1]: *** Waiting for unfinished jobs....
1 warning generated.
make: *** [lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/4706/display/redirect

Build failure - The Moirai have given mortals hearts that can endure.

Debug: 
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

     9>e:\jenkins\workspace\vs2015-differential\source\network\netclient.cpp(307): warning C4701: potentially uninitialized local variable 'port' used [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\network.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_bmp.cpp(127): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_dds.cpp(618): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\external_libraries\libjpeg.h(32): fatal error C1083: Cannot open include file: 'jpeglib.h': No such file or directory (compiling source file ..\..\..\source\lib\tex\tex_jpg.cpp) [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_png.cpp(307): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]
    17>e:\jenkins\workspace\vs2015-differential\source\lib\tex\tex_tga.cpp(147): warning C4100: 'quality': unreferenced formal parameter [E:\Jenkins\workspace\vs2015-differential\build\workspaces\vs2017\lowlevel.vcxproj]

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/5801/display/redirect

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-gcc7.txt
In file included from ../../../source/lib/tex/tex_jpg.cpp:31:
../../../source/lib/external_libraries/libjpeg.h:32:10: fatal error: jpeglib.h: No such file or directory
 #include <jpeglib.h>
          ^~~~~~~~~~~
compilation terminated.
make[1]: *** [lowlevel.make:423: obj/lowlevel_Debug/tex_jpg.o] Error 1
make: *** [Makefile:143: lowlevel] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/6424/display/redirect

Stan added a comment.EditedJun 16 2021, 2:06 PM

Camera.cpp needs a change (Patch by @vladislavbelov )

diff --git "a/source/graphics/Camera.cpp" "b/source/graphics/Camera.cpp"
index be7cbf10..8c0b9651 100644
--- "a/source/graphics/Camera.cpp"
+++ "b/source/graphics/Camera.cpp"
@@ -452,6 +452,7 @@ void CCamera::LookAlong(const CVector3D& camera, CVector3D orientation, CVector3
 	orientation.Normalize();
 	up.Normalize();
 	CVector3D s = orientation.Cross(up);
+	up = s.Cross(orientation);
 
 	m_Orientation._11 = -s.X;	m_Orientation._12 = up.X;	m_Orientation._13 = orientation.X;	m_Orientation._14 = camera.X;
 	m_Orientation._21 = -s.Y;	m_Orientation._22 = up.Y;	m_Orientation._23 = orientation.Y;	m_Orientation._24 = camera.Y;