07-27-2022 03:04 PM
From Beginning of projects, the run on oculus quest tool bar button worked fine; I can enjoy developing my game.
determining packaging projects, I only can see the three dots on the black screen.
My project settings is following as:
Target hardware : Mobile/Tablet, Scaleable 2d or 3d
Packaging
use pack: tick
material shader code share: tick
Shared material native library: tick
prerequsite installer include : tick
Engine Rendering
Mobile shre vertext fog inactivate : tick
CSM cascade number : 2
Mobile MSAA : No MSAA
Movable Light CSM Shader Currling Support: tick
Textuture streaming : tick
Reflection Capture Resolution: 64
smooth suruface mixxing light map reduce: tick
Forward Shaing: tick
Mesh distance filed create: tick
8bit mesh distance field: tick
Mesh distance filed compress: tick
DBufffer Decal: tick
VR
Instance Stereo: Tick
Mobile HDR : Tick
Platform
Android
SDK version: 21-29
arm 7, arm64: tick
OpenGL ES.3.1 : tick
occulus Mobile Device Package: Oculus Quest 2
Solved! Go to Solution.
07-28-2022 06:49 AM - edited 07-28-2022 06:49 AM
Three blinking dots could be many things. Are you using OpenXR or the Oculus plugin? Which Unreal version? From launcher or build from Github?
Most easy would be to just copy (and edit) the settings of a VR project that actually launches on the Quest.
Alos maybe look here; there was a thread on performance (& settings) on the Unreal forum a while back
07-29-2022 10:27 PM
Now, I can run the project from oculus..
I followed as you instrcuted:
The first thing you want to do is dig into Project Settings and (i just click ‘All Settings’ and use the search bar) find ‘Forward Renderer’. You want to enable Forward Shading and Vertex Fogging for Opaque, but the big one you should enable is Forward Shading. This changes the engine’s renderer to a ‘forward’ rendering method instead of a ‘deferred’ rendering method where (and this is a massively simplified explanation) it renders fewer buffers faster and pushes the frame once it’s done, rather than waiting for all the render buffers to be calculated before assembling the frame and pushing it to the displays. You won’t be able to access a few buffers like Scene Depth, but you’ll see somewhere around a 20% performance increase.
Next, hit up Engine>Rendering>Mobile and enable Disable Vertex Fogging (tick the box, this is phrased oddly), set the max number of CSM Cascades to 2 or 1, set Mobile MSAA to 4x or lower (use your best judgement in testing) and enable Use Legacy Shading Model. None of this will kneecap your visual quality, but will improve performance at least a bit, and will be handy if you deploy to Quest/2 as a standalone package.
Enable Occlusion Culling and Round Robin Occlusion Culling. Occlusion culling will stop oobjects and meshes from being rendered if theyre not visible to the player, and Round Robin Occlusion Culling means that in VR, this occlusion testing is done in one eye at a time, which lowers a bit more overhead.
In Engine>Rendering>Default Settings, disable Bloom, Ambient Occlusion, Motion Blur and Lens Flares. Each of these is an additional render pass, and expensive, so disable for more performance boosts. Ill get to materials in a bit, but ill note here that you can create materials in such a way that objects will generate AO as baked, static lighting which is a handy alternative to real-time AO. While we’re here, set Anti-Aliasing Method to MSAA; its the best tradeoff between performance and visual fidelity.
In Engine>Rendering>VR, disable Mobile HDR and enable Instanced Stereo. This is also where RR Occlusion Queries is, for reference. I haven’t tested performance with Mobile Multi-View enabled, but this may reduce some overhead in standalone Quest/2 projects. It’s the instanced stereo option that’s critical to enable, as this will instance draw calls per-eye, which should give you a performance boost of around 30-45%.
07-28-2022 01:42 AM
Add a check to 'start in VR' for starters
07-28-2022 04:50 AM
I forgot to mention that I ticked the VR start already.
07-28-2022 06:49 AM - edited 07-28-2022 06:49 AM
Three blinking dots could be many things. Are you using OpenXR or the Oculus plugin? Which Unreal version? From launcher or build from Github?
Most easy would be to just copy (and edit) the settings of a VR project that actually launches on the Quest.
Alos maybe look here; there was a thread on performance (& settings) on the Unreal forum a while back
07-29-2022 10:27 PM
Now, I can run the project from oculus..
I followed as you instrcuted:
The first thing you want to do is dig into Project Settings and (i just click ‘All Settings’ and use the search bar) find ‘Forward Renderer’. You want to enable Forward Shading and Vertex Fogging for Opaque, but the big one you should enable is Forward Shading. This changes the engine’s renderer to a ‘forward’ rendering method instead of a ‘deferred’ rendering method where (and this is a massively simplified explanation) it renders fewer buffers faster and pushes the frame once it’s done, rather than waiting for all the render buffers to be calculated before assembling the frame and pushing it to the displays. You won’t be able to access a few buffers like Scene Depth, but you’ll see somewhere around a 20% performance increase.
Next, hit up Engine>Rendering>Mobile and enable Disable Vertex Fogging (tick the box, this is phrased oddly), set the max number of CSM Cascades to 2 or 1, set Mobile MSAA to 4x or lower (use your best judgement in testing) and enable Use Legacy Shading Model. None of this will kneecap your visual quality, but will improve performance at least a bit, and will be handy if you deploy to Quest/2 as a standalone package.
Enable Occlusion Culling and Round Robin Occlusion Culling. Occlusion culling will stop oobjects and meshes from being rendered if theyre not visible to the player, and Round Robin Occlusion Culling means that in VR, this occlusion testing is done in one eye at a time, which lowers a bit more overhead.
In Engine>Rendering>Default Settings, disable Bloom, Ambient Occlusion, Motion Blur and Lens Flares. Each of these is an additional render pass, and expensive, so disable for more performance boosts. Ill get to materials in a bit, but ill note here that you can create materials in such a way that objects will generate AO as baked, static lighting which is a handy alternative to real-time AO. While we’re here, set Anti-Aliasing Method to MSAA; its the best tradeoff between performance and visual fidelity.
In Engine>Rendering>VR, disable Mobile HDR and enable Instanced Stereo. This is also where RR Occlusion Queries is, for reference. I haven’t tested performance with Mobile Multi-View enabled, but this may reduce some overhead in standalone Quest/2 projects. It’s the instanced stereo option that’s critical to enable, as this will instance draw calls per-eye, which should give you a performance boost of around 30-45%.