NVIDIA GameWorks Integration

So is/will be available as a plugin for UE4? I don’t feel like compiling the engine itself again (my last few endeavors weren’t that satisfying). To me it looks nothing more than a updated SDK. Only thing that amazes me is the new water/liquids simulation.

So in short. Can we get our hands on without compiling everything our selves again?

To what are you referring, exactly? FleX? Or all GW modules? Features like VXGI cannot be made as plugins at the present time, because the changes required to the rendering pipeline are not supported by the plugin system.

To add to what stated, Flex and WaveWorks could potentially become plugins at some stage, although not sure if the liquid/fluid rendering could be placed into a plugin effectively since it ties in with particle rendering. VXGI will probably never become a plugin due to the tie in’s to the rendering pipeline and post processing pipeline. But I don’t expect anyone to start working on a plugin version of any of the modules until they are more mature. So for now your best bet is to download the NVIDIA branch and get compiling.

But then again, if the only thing that actually interests you is the fluid/liquid simulation, you might as well wait, since you can simulate fluid currently, it does not render as fluid.

I was talking about Flex (nvidia stuff) and it’s water simulation. I guess at some point it will be added to the engine as default and replace the current system that is in place?

Thanks for the quick answer. Ill have to wait a few months then as I don’t want to get into the whole compiling from source myself again.

@:
Thanks for the addition.

I doubt FleX will replace the current system, they are rather different systems with different goals. We’ll consider a plugin version, but I believe that the plugin approach places significant restrictions on a like FleX, so any plugin version of FleX would probably have a reduced features set compared to what can be achieved with a source level integration.

Thanks,

Update: I checked new WaveWorks dlls into the WaveWorks branch, they are patched so that the WW test level now works properly in a branch where WW and FleX are merged. I haven’t tried a level where FleX and WW are active at the same time, I only tried the separate FleX and WW test levels independently.

Is possible something like metaballs for Flex physics ?

Thanks for all the great work. I’m really looking forward to turf , a quick question: How practical is turf for large (really expansive) outdoor scenes? Normal grass planes are awful performance-wise, wondering how turf fares…

VXGI crashes instantly for me on the official link. First it can’t load the Oculus plug-in, so I remove it and then I get .



MachineId:FDD282FF42A4F0F2BCE5069F29B49A35
UserName:

Unknown exception - code 00000001 (first/second  not available)

Assertion failed: ModuleManager.IsModuleLoaded(ModuleName) [File:E:\UnrealEngine-VXGI\Engine\Source\Runtime\Core\Public\Modules\ModuleManager.h] [Line: 237] 
Tried to get module interface for unloaded module: 'D3D11RHI'

KERNELBASE + 37901 bytes
UE4Editor_Core!FOutputDeviceWindowsError::Serialize() + 285 bytes [e:\unrealengine-vxgi\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]
UE4Editor_Core!FOutputDevice::Logf__VA() + 248 bytes [e:\unrealengine-vxgi\engine\source\runtime\core\private\misc\outputdevice.cpp:144]
UE4Editor_Core!FDebug::AssertFailed() + 1042 bytes [e:\unrealengine-vxgi\engine\source\runtime\core\private\misc\outputdevice.cpp:224]
UE4Editor_RHI!FModuleManager::GetModuleChecked<IDynamicRHIModule>() + 138 bytes [e:\unrealengine-vxgi\engine\source\runtime\core\public\modules\modulemanager.h:237]
UE4Editor_RHI!FModuleManager::LoadModuleChecked<IDynamicRHIModule>() + 158 bytes [e:\unrealengine-vxgi\engine\source\runtime\core\public\modules\modulemanager.h:282]
UE4Editor_RHI!PlatformCreateDynamicRHI() + 604 bytes [e:\unrealengine-vxgi\engine\source\runtime\rhi\private\windows\windowsdynamicrhi.cpp:38]
UE4Editor_RHI!RHIInit() + 84 bytes [e:\unrealengine-vxgi\engine\source\runtime\rhi\private\dynamicrhi.cpp:51]
UE4Editor!FEngineLoop::PreInit() + 7984 bytes [e:\unrealengine-vxgi\engine\source\runtime\launch\private\launchengineloop.cpp:1175]
UE4Editor!GuardedMain() + 236 bytes [e:\unrealengine-vxgi\engine\source\runtime\launch\private\launch.cpp:110]
UE4Editor!GuardedMainWrapper() + 26 bytes [e:\unrealengine-vxgi\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() + 249 bytes [e:\unrealengine-vxgi\engine\source\runtime\launch\private\windows\launchwindows.cpp:202]
UE4Editor!__tmainCRTStartup() + 329 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]


Awh man… means downloading it all again. Gah

1)Just a wild guess but it doesn’t look like works particularly well with animated light sources and/or geometry right?
I’m trying to render a scene with some Speedtrees flickerfree but failing miserably :frowning:

2)Also spotting quite a lot of little corners and tight-fit geometry where there’s flickering when doing an animation (only camera moves).
I’ve tried various approaches but once a piece of geometry flickers, I find the only solution to get rid of it is to move the geometry slightly further apart.
No whilst testing but for production I reckon it’s a huge no. Any pointers as to what to do and what to avoid?

That’s exactly my point. Once you have flickering geometry, you can tweak all you want, it won’t help. The only fix is to move your geometry.
Surely you’ll agree that can’t be the intention :wink:

Isn’t just z-fighting? i.e. you have two objects in the same place?

Now get crash with version 4.7.3 / 's version. Followed all the instructions…

Changed the line in the config file too. No change.



MachineId:FDD282FF42A4F0F2BCE5069F29B49A35

Unknown exception - code 00000001 (first/second  not available)

Fatal error: [File:E:\GitHub\VXGI\UnrealEngine\Engine\Source\Runtime\Engine\Private\ShaderCompiler\ShaderCompiler.cpp] [Line: 86] 
Invalid ShaderCompileWorkerOutputVersion. Rebuild Programs -> ShaderCompileWorker to fix .

KERNELBASE + 37901 bytes
UE4Editor_Core!FOutputDeviceWindowsError::Serialize() + 292 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]
UE4Editor_Core!FMsg::Logf__VA() + 463 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\core\private\misc\outputdevice.cpp:526]
UE4Editor_Engine!DoReadTaskResults() + 160 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\engine\private\shadercompiler\shadercompiler.cpp:94]
UE4Editor_Engine!FShaderCompileThreadRunnable::ReadAvailableResults() + 580 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\engine\private\shadercompiler\shadercompiler.cpp:903]
UE4Editor_Engine!FShaderCompileThreadRunnable::CompilingLoop() + 390 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\engine\private\shadercompiler\shadercompiler.cpp:1029]
UE4Editor_Engine!FShaderCompileThreadRunnable::Run() + 128 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\engine\private\shadercompiler\shadercompiler.cpp:514]
UE4Editor_Core!FRunnableThreadWin::Run() + 102 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:73]
UE4Editor_Core!FRunnableThreadWin::GuardedRun() + 93 bytes [e:\github\vxgi\unrealengine\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:26]
 + 88557 bytes
ntdll + 181569 bytes


Nothing would make me happier. But no, it’s not. I know how to use the grid, snapping and clean geometry. Sure, I stick some static meshes into others but nowhere near the point of any z-fighting being in danger of occurring. Trust me, it’s not related to geometry, it’s related to VXGI. So I reckon you guys are all happily rendering out your movies with some animated curtains, speedtrees etc. completely flickerfree? Even on my best results I can still see the odd poly-lighting jump happening…I’m not animating a colored box with 3 spheres in it btw. but the scene is nowhere near as complex as that little cafe/table arrangement NVIDIA featured.

are you using the latest version of vxgi? I used to have whenever I moved the camera, but they removed the view-dependency of the voxelization in the latest build and now i haven’t noticed .

Hey dvd.kh, thanks for posting your experiences!

Can you share what FPS you get on your configuration?
Eevermotion scenes/models are known to have lots of garbage and usually need a lot of optimitization. Did you have to do that a lot as well?

Thanks DVD.KH - finally got it working. Performance isn’t great, around 40 FPS when close to the balls in the sample scene on a reference GTX 980. Interesting how the FPS scales with distance.

Does the voxelization not factor shadowing into account at all? The default sample doesn’t seem to have any shadowing at all, the GI just goes straight through the walls. Limitation of Screen-Space technique?

Interesting, considering I am on a 970, and the same scene stays above 60fps at all times

Something sounds wrong there. Are you running the latest driver? By ‘sample scene’, do you mean the Cornell Box? It sounds like you are seeing anomalous behavior, I don’t know why that would happen. Could you capture a movie with stats visible? Did you say you are running the version from 's repo? Have you also tried the 4.6 version from the NvPhysX repo? I’m wondering if something is amiss with the 4.7.3 changes. We should have a fresh update from the VXGI team later week, I know they had some concerns about the changes they had seen in 4.7.3.

Thanks,