Post Process Effects and Fog on VR Standalone

Hey guys!

I have a question about this video UE4 l Wavy Water Post Process Effect l 5-Minute Post Process Tutorial l Unreal Engine 4.26 - YouTube

How do I make this work in VR standalone?..

*I can replicate this perfectly, and it’s awesome… looks amazing… But i can’t seem to figure out how to make it work on VR standalone… when I build to the oculus quest 2… it simply doesn’t show

Also… Having the same problem with fog. How do I add working fog in VR?

Thanks!

1 Like

Hi Du Moura,

Post-processing on mobile requires ‘Project Settings → Mobile HDR’ to be enabled. Do you see any difference with Mobile HDR enabled? What is your FPS or Frametime before/after enabling this? (Mobile HDR can kill performance)

What sort of fog are you trying to use?

Cheers

1 Like

Hey!

Upon activating that setting, The oculus quest 2 goes mad :sweat_smile:
It really becomes unusable. I tried to create the volumetric and the atmospheric fog… and no luck on standalone, after some research I learned that that isn’t really possible.

Even tried doing it through materials, which actually looks pretty awesome and is super light to run on the pc, but still not able to run it on standalone quest 2.

The solution was to build the project and have it being cast to the oculus through cable, using the processing and graphics of the pc.

If you do have any other ideas, techniques or tips… they are always welcome!

Thanks for reaching out!

1 Like

For standalone Quest, you can fake post process effects in materials and apply that to everything on screen.
For fake fog, try the Pixel Depth expression.
For the wavy water effect, try the ScreenAlignedPixelToPixelUVs material function to overlay a distorted texture on the screen.

2 Likes

Is there a way to package the VR file to windows? I’m facing the same issue, but I want to play the VR game outside the unreal editor using airlink or even with a wire.
Thanks in advance.

1 Like

Hey @Umang-19!

I’ve been able to package for windows following this simple tutorial:


And you can also use your Project Launcher if you need to go more in dept with your package, here’s the unreal documentation:

This helped me, so I hope it can help you aswell.

Thank you for yout time!

Thanks! Though I’ve followed this tutorial and it works perfectly fine when I’m on a 3rd person file. Although, when I do this in the VR template file, it doesn’t work. I need to confirm if it is possible to have a VR file packaged on windows, to be used with a headset connect to the pc. Appreciate the help!

1 Like

Hey @Umang-19!
Ok, I might understand why you’re saying that!

So you’re creating a default VR Project and you can’t package for windows.
This is because your projects settings are most likely set up for VR projects, which default values have in consideration that it normally is to build for standalone.

You have two options to make it easier for you to set it up for windows.

Option 1:
I am sure that if you add the VR content to your First Person project you will be able to export to windows, since the project settings are for the first person project.

Like this:
image

and then you select VR and add to project:


Option 2:
You can simply create a blank Unreal engine project.

and then you select VR and add to project, like in the other option:

Don’t forget to set up your project settings for VR, in this case stuff like turning off Mobile HDR and some other settings that may be needed to run in VR without issues…

Using This setup, you can use raytracing and post processing and other features while in VR - you always need Air Link or Cable anyway.

I’ve been working on a similar setup and have very complex projects that look pretty awesome in PC/VR.

Hope this helps!

2 Likes

Thanks! You’ve been great help! Appreciate it!

It is still not working after importing VR setup in a First person file. The package starts to fail after I enable OpenXR plugin. Before that it packages, but is not playable as VR. Though it is playable in the editor.

Heres the output log:
LogTurnkeySupport: Running Turnkey device detection: ’ -ScriptsForProject=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” Turnkey -utf8output -WaitForUATMutex -command=VerifySdk -ReportFilename=“E:/Unreal Engine/Gaurav Gupta/tst/Intermediate/TurnkeyReport_2.log” -log=“E:/Unreal Engine/Gaurav Gupta/tst/Intermediate/TurnkeyLog_2.log” -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” -Device=Android_ASTC@1WMHHA63NB2096+Android_Multi@1WMHHA63NB2096’
LogMonitoredProcess: Running Serialized UAT: [ cmd.exe /c ““E:/Unreal Engine/UE_5.1/Engine/Build/BatchFiles/RunUAT.bat” -ScriptsForProject=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” Turnkey -utf8output -WaitForUATMutex -command=VerifySdk -ReportFilename=“E:/Unreal Engine/Gaurav Gupta/tst/Intermediate/TurnkeyReport_2.log” -log=“E:/Unreal Engine/Gaurav Gupta/tst/Intermediate/TurnkeyLog_2.log” -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” -Device=Android_ASTC@1WMHHA63NB2096+Android_Multi@1WMHHA63NB2096” -nocompile -nocompileuat ]
LogTurnkeySupport: Completed device detection: Code = 0
LogUObjectHash: Compacting FUObjectHashTables data took 0.28ms
LogTurnkeySupport: Project requires temp target (OpenXR plugin is enabled)
LogLauncherProfile: Unable to use promoted target - …/…/…/…/Gaurav Gupta/tst/Binaries/Win64/UnrealGame.target does not exist.
LogMonitoredProcess: Running Serialized UAT: [ cmd.exe /c ““E:/Unreal Engine/UE_5.1/Engine/Build/BatchFiles/RunUAT.bat” -ScriptsForProject=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” Turnkey -command=VerifySdk -platform=Win64 -UpdateIfNeeded -EditorIO -EditorIOPort=55141 -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” BuildCookRun -nop4 -utf8output -nocompileeditor -skipbuildeditor -cook -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” -unrealexe=“E:\Unreal Engine\UE_5.1\Engine\Binaries\Win64\UnrealEditor-Cmd.exe” -platform=Win64 -installed -stage -archive -package
-build -pak -iostore -compressed -prereqs -archivedirectory=“D:/Packages/Fashion_Exhibition/42/New folder”” -nocompile -nocompileuat ]
UATHelper: Packaging (Windows): Running AutomationTool…
UATHelper: Packaging (Windows): Using bundled DotNet SDK version: 6.0.302
UATHelper: Packaging (Windows): Starting AutomationTool…
UATHelper: Packaging (Windows): Parsing command line: -ScriptsForProject=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” Turnkey -command=VerifySdk -platform=Win64 -UpdateIfNeeded -EditorIO -EditorIOPort=55141 -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” BuildCookRun -nop4 -utf8output -nocompileeditor -skipbuildeditor -cook -project=“E:/Unreal Engine/Gaurav Gupta/tst/tst.uproject” -unrealexe=“E:\Unreal Engine\UE_5.1\Engine\Binaries\Win64\UnrealEditor-Cmd.exe” -platform=Win64 -installed -stage -archive -package -build -pak -iostore -compressed -prereqs -archivedirectory=“D:/Packag
es/Fashion_Exhibition/42/New folder” -nocompile -nocompileuat
UATHelper: Packaging (Windows): Initializing script modules…
UATHelper: Packaging (Windows): Total script module initialization time: 0.10 s.
UATHelper: Packaging (Windows): Executing commands…
UATHelper: Packaging (Windows): Installed Sdk validity:
UATHelper: Packaging (Windows): Win64: (Status=Valid, MinAllowed_Sdk=10.0.00000.0, MaxAllowed_Sdk=10.9.99999.0, Current_Sdk=10.0.22621.0, Allowed_AutoSdk=10.0.18362.0, Current_AutoSdk=, Flags=“InstalledSdk_ValidVersionExists”)
UATHelper: Packaging (Windows): Scanning for envvar changes…
UATHelper: Packaging (Windows): … done!
UATHelper: Packaging (Windows): Cleaning Temp Paths…
UATHelper: Packaging (Windows): BUILD SUCCESSFUL
UATHelper: Packaging (Windows): Setting up ProjectParams for E:\Unreal Engine\Gaurav Gupta\tst\tst.uproject
UATHelper: Packaging (Windows): tst.uproject requires a temporary target.cs to be generated (OpenXR plugin is enabled)
UATHelper: Packaging (Windows): ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (Windows): Running: E:\Unreal Engine\UE_5.1\Engine\Binaries\ThirdParty\DotNet\6.0.302\windows\dotnet.exe “E:\Unreal Engine\UE_5.1\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll” tst Win64 Development -Project=“E:\Unreal Engine\Gaurav Gupta\tst\tst.uproject” “E:\Unreal Engine\Gaurav Gupta\tst\tst.uproject” -NoUBTMakefiles -remoteini=“E:\Unreal Engine\Gaurav Gupta\tst” -skipdeploy -Manifest=“E:\Unreal Engine\Gaurav Gupta\tst\Intermediate\Build\Manifest.xml” -NoHotReload -log=“C:\Users\purpl\AppData\Roaming\Unreal Engine\AutomationTool\Logs\E+Unreal+Engine+UE_5.
1\UBT-tst-Win64-Development.txt”
UATHelper: Packaging (Windows): Log file: C:\Users\purpl\AppData\Roaming\Unreal Engine\AutomationTool\Logs\E+Unreal+Engine+UE_5.1\UBT-tst-Win64-Development.txt
UATHelper: Packaging (Windows): Visual Studio 2022 is installed, but is missing the C++ toolchain. Please verify that the “MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest)” component is selected in the Visual Studio 2022 installation options.
UATHelper: Packaging (Windows): Visual Studio 2019 x64 must be installed in order to build this target.
UATHelper: Packaging (Windows): Took 0.40965969999999996s to run dotnet.exe, ExitCode=6
UATHelper: Packaging (Windows): UnrealBuildTool failed. See log for more details. (C:\Users\purpl\AppData\Roaming\Unreal Engine\AutomationTool\Logs\E+Unreal+Engine+UE_5.1\UBT-tst-Win64-Development.txt)
UATHelper: Packaging (Windows): AutomationTool executed for 0h 0m 1s
UATHelper: Packaging (Windows): AutomationTool exiting with ExitCode=6 (6)
UATHelper: Packaging (Windows): BUILD FAILED
PackagingResults: Error: Unknown Error
LogAudioMixer: Warning: Decoder Error, stopping source [CompileFailed]

Also once I have the package done, would I have to turn the game on just on the desktop? Or do I have to turn it on, on the headset as well. I have successfully packaged a file, but I can’t get it to work on the headset, even after it is connected to the pc. So I’m not sure if the package was done right.

Hey!
Upon reviewing your log, I believe this might be the issue (?)… Try updating your visual studio and installing what he asks below… maybe that’s what’s missing.


If you’re trying to run PC/VR, you only need to connect the headset to your PC through Cable or Air Link and run the package .exe on your PC, it will automatically detect your headset - so no need to do anything else on the headset itself…

You only need to worry about the app on the VR Headset, if you’re trying to run on the headset alone - as standalone, without having air link or cable. This way you have to package for the headset and not for windows - only like that you can/should run apps directly on the headset alone.


I’d suggest you to create an idependent question on the forum, so that you can get help and opinions from other experienced devs too, this way if I’m something, someone will for sure be able to complete and help aswell.

To do so click in:
image

Then: New topic and question.
image

Fill out your tilte and category and this will be visible for more people.

Thanks and tell me how you did!

1 Like

I was able to resolve the issue and now it is working perfectly fine! Thanks a lot for you help!

1 Like

Sorry I don’t get it. Do you suggest not using post-processing in the VRSpectator BluePrint ? How do you apply to everything on screen ? I’m trying to add a blur effect on all the view but I don’t understand if the tutorial showed above can help in VR case…

1 Like