CesiumGS / CesiumGS/cesium-unity
OpenGLES3 Error when rendering Cesium Tiles on Quest Devic
- Dominant language
- C#
- Stars
- 535
- Forks
- 132
- Avg merge
- 6h 45m
- Merged PRs (30d)
- 1
Description
Reported from the community [here](https://community.cesium.com/t/opengles3-error-when-rendering-cesium-tiles-on-quest-device/30212),
We started getting this error when we switched to OpenGLES3 from Vulcan. Google seems to point to single pass/double pass issues with the shader.
```AndroidPlayer "Oculus_Quest Pro@ADB:230YC01DB200SQ:0" Assertion failed: OPENGL NATIVE PLUG-IN ERROR: GL_INVALID_OPERATION: Operation illegal in current state```
You can easily reproduce this in the sample cesium projects if you run them on Quest. The errors only appear when a cesium tile is rendering on Android.
We believe the shader is Cesium_RoundPolygonMask
If we put that in the scene on something unrelated to cesium tiles it doesn’t throw the error. So we assume its a specific pass being used within that shader.
Contributor guide
Research direction
Reproduce the error in the sample Cesium projects on an Oculus Quest using Android and OpenGLES3, with a Cesium tile rendering. Then inspect the Cesium_RoundPolygonMask shader and the pass used for Cesium tiles; done means no GL_INVALID_OPERATION occurs during tile rendering.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, unity
- Domain
- computer-graphics, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100