0 votes
by (150 points)
recategorized by

Hi, developing an app for the Pico G2 4K headset using the Unity XR Platform v1.2.5 SDK and I've noticed that the android logcat console is flooded with this error:

OPENGL NATIVE PLUG-IN ERROR: GL_INVALID_ENUM: enum argument out of range
OPENGL NATIVE PLUG-IN ERROR: GL_INVALID_ENUM: enum argument out of range
OPENGL NATIVE PLUG-IN ERROR: GL_INVALID_ENUM: enum argument out of range

Is there a way to fix this? I'm using Unity version 2021.2.0f1 and OpenGLES3 as graphics API and I believe I've followed every step in the official SDK's documentation, including enabling URP with low quality settings.

My scene consists a XR Rig and a Canvas, it doesn't even have a skybox. Should I be concerned and is there a workaround for this? Thank you

1 Answer

0 votes
by (44.1k points)
selected by
 
Best answer

Dear developer,

Q1: Sorry for the inconvenience. This is a known issue, we had reported it to Unity but haven't got a solution yet. According to the feedback from other developers, the spam logs have no side-effect on application performance, so you can move forward at the moment.

Q2: Could you please tell us more details about it? Do you mean to add a skybox? My scene consists of several necessities as follows.

enter image description here

by (150 points)

Thank you for the quick answer.

As long as it doesn't affect performance, I guess it's only an inconvenience then, since it will be harder to find errors in my code at runtime.

My scene looks similar to yours, here's an image:

enter image description here

I've disabled the lights and global volume generated by the Unity 3D URP project for now. I must point out that I will be working strictly with the G2 4K, so I also removed the right hand, since the G2 4K only uses one controller and I was seeing the other controller's ray in the center of the screen.

I've had issues with the visibility of the controller's model as well, according to documentation you must drag the LeftControllerModel prefab to the XR Controller as shown in the image below:

enter image description here

But this does not display any controller once I run the app in my G2 4K. What I did instead is add the G2 model as child in my scene.

enter image description here

As for the skybox, I've been following Oculus's OVR Lint performance recommendations and according to them, Unity's skybox is poorly optimized so I've been using an inverted sphere mesh as skybox instead.

As a final note, I've had the following issues when I changed from the deprecated SDK to this one:

  • I miss that you could rotate the Head transform while pressing the ALT key in the editor, but I already made a script to simulate that.

  • I can't manage to perform clicks in the Editor, did the key binding change / how is it done now?

Thank you in advance

by (44.1k points)

A. For the controller's ray and model issue, could you please send a simplified project that can reproduce the problem to our email address?

pico_devsupport@bytedance.com

You can use the title of this post as the subject of your email. We will check it.

B. For the skybox issue, it is okay for you to keep using an inverted sphere mesh as your skybox.

C. For the ALT key issue, we are sorry to tell you that this operation only exists in PicoVR Unity SDK(Deprecated). It has been removed in Unity XR Platform SDK and Unity XR SDK.

D. For the key value issue, you can refer to the following websites:

https://docs.unity3d.com/Manual/xr_input.html

https://sdk.picovr.com/docs/XRPlatformSDK/Unity/en/chapter_five.html#introduction-to-pico-g2-4k-input

by (44.1k points)

We recommend that you use the LTS version of Unity, as newer versions may be more unstable. After receiving your project, we disabled RightHand Controller using Unity 2020.3.20 and reinstalled the application on the G2 4K. Then the model of the controller was visible and there was only a single ray from the controller. Hope this information helps you.

enter image description here

by (150 points)

The controller model issue actually seems related to having URP in the project. I made tests with 2020.3 and 2021.2 and in both instances the controller was not visible if URP was enabled. This can be fixed by changing the shader of the material of the controller to a compatible one, but it's hard to obtain the same visual result. It would be nice if you could provide URP materials for the controllers in subsequent releases of the SDK, as most asset store packages do nowadays.

by (44.1k points)

Thanks for your valuable feedback.

...