Code Monkey home page Code Monkey logo

Comments (8)

azrogers avatar azrogers commented on June 2, 2024 1

I've tracked the issue down to the KHR_texture_transform changes in Cesium for Unreal 2.4.0. Particularly the way normal textures are transformed. I still haven't figured out why this breaks on Quest specifically, but I can at least offer a workaround for the time being - under CesiumForUnreal/Content/Materials/Layers open ML_CesiumGltf.asset. Scroll over to the section where the normal texture coordinates are transformed:
image
And change the graph to ignore the transformation node:
image
This, of course, disables KHR_texture_transform support for normal maps, so it's not a permanent solution, but it should help you get unblocked while we continue to investigate.

from cesium-unreal.

AmrAbuElyazid avatar AmrAbuElyazid commented on June 2, 2024 1

@azrogers That fixed it! Thanks a lot for your support!

from cesium-unreal.

j9liu avatar j9liu commented on June 2, 2024

Hi @AmrAbuElyazid, thank you for opening this issue.

You mentioned "rebuilding the project from scratch multiple times to isolate potential settings causing this issue". Can you describe what you've tried in more detail? It can help us narrow down the issue when we try to troubleshoot this.

from cesium-unreal.

AmrAbuElyazid avatar AmrAbuElyazid commented on June 2, 2024

Hi @j9liu

Thanks for getting back to me.

I've isolated the issue to Cesium's terrain by creating empty projects with Unreal's VR and blank templates, building and deploying with and without Cesium to Meta Quest 3. The issue appears once Cesium is included in the project.

Here's what I've experimented with so far:

  • Lighting settings (dynamic/static)
  • Tried Lumen as global lighting with dynamic lights
  • VR-specific rendering settings (anti-aliasing, Temporal AA and MSAA)
  • Cesium optimization settings (LOD, occlusion culling, etc)
  • Forward shading and differed shading
  • Instanced Stereo in Rendering (On and Off)
  • Following recommendations to disable dither fade (see #1104).
  • Experimenting with Cesium SunSky with the mobile setting enabled, and comparing it against Unreal's default SkySphere.

Despite these efforts, the terrain tiles continue to render black only on the Meta Quest 3, while the project works as expected on PC. I hope these details help in narrowing down the potential cause of this issue.

Looking forward to any suggestions or insights you might have.

Thank you.

from cesium-unreal.

azrogers avatar azrogers commented on June 2, 2024

Just to update you on where things are at @AmrAbuElyazid - while we don't yet have a Quest 3 around the office to test with, I was able to replicate your issue using the provided project on the Quest 2. I'm digging into it now, and I'll keep this issue updated with my findings!

from cesium-unreal.

AmrAbuElyazid avatar AmrAbuElyazid commented on June 2, 2024

@azrogers Thanks a lot, looking forward to hearing your inputs!

from cesium-unreal.

AmrAbuElyazid avatar AmrAbuElyazid commented on June 2, 2024

@azrogers Thanks a lot for prompt response!
I've tried your suggestion but it seems to be the same on my meta quest 3.
I've tried it in both the sample project I linked and in my main project that I am working on, but to no avail, the terrain is still black.

com oculus shellenv-20240414-183909

from cesium-unreal.

azrogers avatar azrogers commented on June 2, 2024

As it turns out, this seems to have been the same issue that #1225 was addressing for iOS devices - that is, for some reason, 1x1 textures on mobile just get sampled incorrectly. I've merged #1225 which just upscales our default textures to 4x4 instead of 1x1, which fixes the issue on my end. Please give the latest version of main a try and let me know if it works for you too! @AmrAbuElyazid

from cesium-unreal.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.