Download

NVIDIA GameWorks Integration

Then I’m afraid it’s out of my hands. It works on my end without issues on both mentioned Soul samples and GW samples so I can’t repro this. Are you sure you are now trying to build completely unmodified version of my repo? You later on said you had bunch of changes on top, your issues could be caused by them. And you use the current version on the github and not some earlier one?

Anyway since I can’t repro this, best you can do it to debug the cause yourself - which you should do regardless as I’m not officially giving any support for these, these are just made available for people who want to use them.

One way to get proper callstack for this:

  • Make a empty UE4.21 c++ project with no starter content using the custom engine (or if you made it with Epic Launcher, after project creation, go to project folder, right click the uproject and use “switch engine version” option to swap the project to target the custom engine build)
  • Add the content that breaks it for you using Epic Launcher, be it that Soul:Cave or Soul:City
  • Open the projects sln file with Visual Studio, make sure UE4 is the default project there (seen in bold on the hierarchy tab), if it’s not default, you can set it by right clicking the project and set it to default startup project there
  • Once solution open on VS and default set to UE4, just hit the green play button (or use menu to start the thing with debugger attached), this will launch the UE4 editor with VS debugger attached. Also make sure you’ve haven’t changed the default build conf on this project sln, it defaults to “Development Editor” which is the right choice usually.
  • If it crashes, it will throw you back into VS at the moment of crash and you can examine the callstack. The topmost item you see is probably the array.h one but that’s just generic UE4 class that is not likely the cause of your issue, trace down the callstack and try to see what part of the code actually tries to use the array incorrectly.

@CRYOMEN Oh, just to verify, you are building the engine using the official UE4 build instructions and are using “Development Editor” as the build configuration? If you do full debug build for the whole engine, it will not likely work as I’ve not tested recent gameworks on this configuration + I think some user reported FleX etc had some issues on it (but that must have been on 4.20 as there’s no 4.21 FleX). I should probably try and fix that myself, it’s sourced from nvidias code as they most likely didn’t test that case either. In general even testing engine side debug builds thoroughly would be a pain as editor it’s really slow to run on my computer.

Edit: Tested Soul:City also with Debug build, works fine.

Just to note here, when I update or launch new branch for GameWorks these are the things I test it with:

  • I usually start with clean branch with no previously compiled binaries existing there (beyond what gets loaded by dependencies). I usually just do this brute force by wiping everything from the root folder but .git and then do hard git reset for the branch, this ensures there’s never anything else on the folder than what new users would have when they try to build this at the first time.
  • I verify that there are no additional warnings when the GenerateProjectFiles runs (some may sometimes slip through but I try to minimize them before pushing to github).
  • Then I run Setup and GenerateProjectFiles just like UE4 readme tells one to do
  • I open the generated solution using the recommended Visual Studio version by Epic, this means the default VS that the solution is prepared for by GenerateProjectFiles script.
  • I wait for intellisense/VA to process it, usually need to swap UE4 as default startup project here as I usually want to launch the editor immediately after successful build to get the shaders compiled.
  • I start building it using “Development Editor” build conf and by hitting that play button (which will launch the editor after successful build with debugger attached).
  • Once editor is fine, I open sample projects from the GameWorks tech I’ve just merged, verify it works in the editor and usually on both Shipping and Development Windows 64-bit builds. If I’m verifying an engine update instead of new GameWorks tech, I often verify that it didn’t break anything by opening random GW projects and building them, just to see there are no new issues on them.

What I don’t do:

  • I don’t test 32-bit game builds are they’ve randomly failed for me even on stock UE4 + they are not really that widely used anymore.
  • I don’t test debug editor or any other than Development Editor builds for the actual editor code (but those game packaging tests do additionally test development and shipping build confs for the actual engine code).

The things I don’t test are mainly due to time constraints, and I already do quite extensive testing on the GW feats not breaking others. For example there was a crash in some older merge I fixed that only happened with combining these techs, there Nvidia Flow and VXGI just crashed the editor when feats were used on the same scene. This and some other similar fixes are still on my latest GW merges.

Thank you 0lento. And no problem. I will do debugging in a week, and then will see what is broken

hi guys ,please help me in getting the horizon white color change,it does not change with daytime,like in the evening the sun warm color does not show on the water plane and even in night i have the white horizon .Can anyone know how to do the change PLease

I can’t remember how waveworks was setup for colors but the white border on your screenshot looks more like ue4’s own fog. If it’s in the scene, try adjusting the color from it.

any body update hairworks in 4.23???

no its no fog I checked and tried, its the water plane ocean material i guess, as the atmosphere fog doing noting. i made a instance and tweaked it and its gone now. thanks see my ship btw in waveworks 4.17 .
https://www.youtube.com/watch?v=PUMK1UF-fY4

Hi,…

i try to compile the 4.21 GameWorks branch from 0lento.
Unfortunately, I gott the following error:

[FONT=courier new]Fehler MSB3075 Der Befehl “…\Build\BatchFiles\Build.bat UE4Editor Win64 Development -WaitMutex -FromMsBuild” wurde mit dem Code 5 beendet. Stellen Sie sicher, dass Sie zur Ausführung dieses Befehls berechtigt sind. UE4 S:\Visual Studio 2017\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets 44
Fehler C2109 Index erfordert ein Array oder einen Zeigertyp UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 598
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::mInteriorIndex” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 666
Fehler C3867 “Nv::Blast::FbxFileWriter::mInteriorIndex”: Keine Standardsyntax; “&” zum Erstellen eines Verweises auf das Member verwenden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 666
Fehler C2568 “:”: Auflösung der Funktionsüberladung nicht möglich UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 666
Fehler C2352 “Nv::Blast::FbxFileWriter::generateSmoothingGroups”: Unzulässiger Aufruf einer nicht statischen Memberfunktion UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 688
Fehler C2352 “Nv::Blast::FbxFileWriter::removeDuplicateControlPoints”: Unzulässiger Aufruf einer nicht statischen Memberfunktion UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 692
Fehler C2660 “Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned”: Funktion akzeptiert keine 5 Argumente UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 696
Fehler C4800 Implizite Konvertierung von “const wchar_t *” in einen booleschen Wert. Datenverlust möglich. UE4 S:\GitHub\0lento\Engine\Source\Editor\BehaviorTreeEditor\Private\DetailCustomizations\BlackboardSelectorDetails.cpp 173
Fehler C4800 Implizite Konvertierung von “const OtherType” in einen booleschen Wert. Datenverlust möglich. UE4 S:\GitHub\0lento\Engine\Source\Runtime\Core\Public\Misc\Attribute.h 43
Fehler C4800 Implizite Konvertierung von “const wchar_t *” in einen booleschen Wert. Datenverlust möglich. UE4 S:\GitHub\0lento\Engine\Source\Editor\MovieSceneTools\Private\FCPXML\FCPXMLExport.cpp 1058
Fehler C4800 Implizite Konvertierung von “const wchar_t *” in einen booleschen Wert. Datenverlust möglich. UE4 S:\GitHub\0lento\Engine\Source\Editor\MovieSceneTools\Private\FCPXML\FCPXMLExport.cpp 1070
Fehler UBT ERROR: Failed to produce item: S:\GitHub\0lento\Engine\Intermediate\Build\Win64\UE4Editor\Development\MovieSceneTools\UE4Editor-MovieSceneTools.lib UE4 S:\GitHub\0lento\Engine\Intermediate\ProjectFiles\UnrealBuildTool 1
Fehler C2039 “string”: Ist kein Element von “std” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 126
Fehler C4430 Fehlender Typspezifizierer - int wird angenommen. Hinweis: “default-int” wird von C++ nicht unterstützt. UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 126
Fehler C2143 Syntaxfehler: Es fehlt “,” vor “&” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 126
Fehler C2039 “string”: Ist kein Element von “std” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 129
Fehler C4430 Fehlender Typspezifizierer - int wird angenommen. Hinweis: “default-int” wird von C++ nicht unterstützt. UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 129
Fehler C2143 Syntaxfehler: Es fehlt “,” vor “&” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 129
Fehler C2535 “void Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned(const int)”: Memberfunktion bereits definiert oder deklariert UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.h 130
Fehler C2660 “Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned”: Funktion akzeptiert keine 5 Argumente UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 268
Fehler C2660 “Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned”: Funktion akzeptiert keine 5 Argumente UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 304
Fehler C2511 “void Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned(const std::string &,uint32_t,fbxsdk::FbxNode *,const std::vector<fbxsdk::FbxSurfaceMaterial *,std::allocator<_Ty>> &,const Nv::Blast::ExporterMeshData &)”: Überladene Memberfunktion nicht in “Nv::Blast::FbxFileWriter” gefunden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 471
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::mScene” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 480
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::chunkNodes” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 485
Fehler C3867 “Nv::Blast::FbxFileWriter::chunkNodes”: Keine Standardsyntax; “&” zum Erstellen eines Verweises auf das Member verwenden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 485
Fehler C2109 Index erfordert ein Array oder einen Zeigertyp UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 485
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::worldChunkPivots” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 494
Fehler C3867 “Nv::Blast::FbxFileWriter::worldChunkPivots”: Keine Standardsyntax; “&” zum Erstellen eines Verweises auf das Member verwenden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 494
Fehler C2109 Index erfordert ein Array oder einen Zeigertyp UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 494
Fehler C2352 “Nv::Blast::FbxFileWriter::generateSmoothingGroups”: Unzulässiger Aufruf einer nicht statischen Memberfunktion UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 561
Fehler C2352 “Nv::Blast::FbxFileWriter::removeDuplicateControlPoints”: Unzulässiger Aufruf einer nicht statischen Memberfunktion UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 564
Fehler C2660 “Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned”: Funktion akzeptiert keine 5 Argumente UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 568
Fehler C2511 “void Nv::Blast::FbxFileWriter::createChunkRecursiveNonSkinned(const std::string &,uint32_t,fbxsdk::FbxNode *,const std::vector<fbxsdk::FbxSurfaceMaterial *,std::allocator<_Ty>> &,const Nv::Blast::AuthoringResult &)”: Überladene Memberfunktion nicht in “Nv::Blast::FbxFileWriter” gefunden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 574
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::mScene” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 583
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::chunkNodes” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 588
Fehler C3867 “Nv::Blast::FbxFileWriter::chunkNodes”: Keine Standardsyntax; “&” zum Erstellen eines Verweises auf das Member verwenden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 588
Fehler C2109 Index erfordert ein Array oder einen Zeigertyp UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 588
Fehler C2597 Ungültiger Verweis auf nicht-statischen Member “Nv::Blast::FbxFileWriter::worldChunkPivots” UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 598
Fehler C3867 “Nv::Blast::FbxFileWriter::worldChunkPivots”: Keine Standardsyntax; “&” zum Erstellen eines Verweises auf das Member verwenden UE4 S:\GitHub\0lento\Engine\Plugins\GameWorks\Blast\Source\BlastMeshEditor\Private\BlastMeshExporterFbxWriter.cpp 598

Maybe someone has a tip to solve the problem.

Thank you guys :smiley:

So my guess is, the “NVidia only” hardware constraint killed this project?? Or is that an issue?

It’s a shame Flex hasn’t been ported to 4.22 etc. **0lento, amazing work and thank you! **

It would be fantastic if this was supported by Epic directly though. It sounds like there’s no chance of that???

    == John ==

i am in need to download the ue 4.19 waveworks which i am not able to from github,very slow download and fails all time,no resume . any one can upload it on a torrent or google drive ,will be thank full , Or any other solution

There’s only few techs that are truly Nvidia-only on current GameWorks. Waveworks integration we get requires cuda and VXGI practically requires Nvidia Maxwell+ gpu. But Blast, Flex, Flow and Volumetric Lighting should run on AMD as well (as current Flex and Flow versions run on DX Compute), I’m not 100% sure about TXAA 3 or HBAO+ but I’d expect them to run on AMD GPU’s as well, don’t quote me on that tho.

Anyway, it seems like RTX in particular is reason why Nvidia hasn’t been updating these techs anymore, this has to be especially true for VXGI. Also UE4 using Blast for Chaos physics probably makes it difficult to justify a separate branch for Blast version that works with PhysX etc.

Sharing UE4 source code or binaries via torrent or google drive to random people is against UE4 EULA. You can only reliably confirm other user is UE4 licensee by sharing the source code via UnrealEngine github fork or share modified editor via Epic Launcher (but there’s no such “modding” editor for GameWorks atm there so github is your only option).

If github’s direct download fails, you can try cloning the repo with some git tool.

I ported FleX to 4.22 based on 0lento’s 4.20 integration, without fluid rendering (too much conflicts): https://github.com/xoyojank/UnrealEngine/tree/4.22-FleX

We appreciate your efforts guys. I would love to see if I can get rest of the Flex fixes working, but I’m no rendering engineer so I’m not sure how involved it would be

This is compile the 4.21- GameWorks+WaveWorks by 0lento - amazing work and thank you!
Hello 0lento.
Are you planning on compiling this for 4.22? It is very important for us. The most necessary - HairWorks+WaveWorks.
We will be very grateful for the answer and your work!

Right now it’s looking like I’ll skip 4.22 for multiple reasons, I may try again on 4.23 but really hoping Nvidia would update these techs themselves for at least 4.22 as there are quite big rendering changes in the engine that makes manual upgrading for these less trivial.

Also since UE4 has grown bigger, my compilation times on any recent engine versions are horrible, it takes few hours to get new build up and running on my computer which also makes upgrading and fixing these techs super slow (we are talking many days just waiting for computer to build things). I’m planning to upgrade my rig to a new 16 core Ryzen once it’s available (so in few months) and could then take a look again these for 4.23 but since the needed changes are quite big, I can’t give any promises at this point.

If Nvidia however comes with updated branches themselves, I’ll happily merge them even with my current computer.

Thank you very much for the answer! Good luck with your computer. We will wait.

Thanks again for your work!

Hello, all links are dead?
https://github.com/0lento/UnrealEngine
[https://github.com/xoyojank/UnrealEngine/tree/4.22-FleX

Thank you.](https://github.com/xoyojank/UnrealEngine/tree/4.22-FleX)

Anyone know if VXGI died when DXR came out? I still use VXGI over DXR for several reasons. The latest version Nvidia released was for 4.21 so hoping for updates to newer engine versions.

Thanks for response!