Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
Anonymous's avatar
Anonymous
5 years ago

Shader Model 5 vs. ES 3.1

Developing in Unreal for the Quest.

What Shader Model is recommended?
  • I am assuming ES 3.1?

I was just wondering, when switching from Shader Model 5 to ES 3.1 my preview in Unreal is changing.

I am confused. When I do the shading, lighting and look dev, I am usually using by default Unreals Shader Model 5.
When switching to ES 3.1 - everything looks under-exposed and also like I would have different Gamma Values.

Please see the screenshots below.

Questions:
  • How do you approach that?
  • How do you do your look development and lighting?

I also noticed, that the values of lights are different.
That's why I am getting different results.

  • Also the Shadows are gone. Looks like ES3.1 does not produce any shadows?

Ideally I would like to stay in Shader Model 5.
  • But how the heck do you approach that - meaning, seeing on the Quest what I am seeing inside of Unreal when using Shader Model 5?

Thank you so much for any little info,
appreciate it!






2 Replies

  • Not an expert but I believe Shader Model 5 is not supported on Opengl much less Opengl ES, its Direct3D thing. Quest uses OpenGL ES 3.1 or Vulkan at most. So you cant "enable" shader model 5 on the Quest. While you are working on your project, stick to Android AEP ES3.1 or Vulkan preview to see how your level will look and make adjustments. Certain features like HDR rendering and other post-processing features shouldn't be used should be avoided. 
    If you still have questions I would suggest reading UE 4 mobile rendering docs.
  • Anonymous's avatar
    Anonymous
    Thank you. Okay, that makes sense. So no Shader Model 5 for the Quest. Hmmm... I wonder how you create Shaders then in Unreal - I mean, yes.. you create the Shaders the same way like you usually do. But the output, the look is 100% different.

    And that's very concerning - unless there would be a way to make an OpenGL ES 3.1 or Vulkan Shader ... look the same as a Shader Model 5. Hmmm.....

    • So what do you think would be a good way to get the look development solved?
    When creating projects in Unreal, by default the majority develops for PC. And therefore Shader Model 5 is the way to go. 

    • Creating an additional second set of Shaders just for the Quest?
    • Is this the way to go?
    Just seems a massive additional workload.

    Curious about any other opinions and thoughts about this topic.

    Thank you so much!