Camera Problems On Quest2

I gave 2 separate problems with a scene that I am running on the desktop for development, and also on Quest2 in WebXR. I should mention that the scene has another camera which displays as a render target, similar to this.


On the desktop, I want an arcrotate camera, so I can look around, get stuff placed, etc. The directions of drag seem to be backwards. At first, I thought it was due to which camera got added first, but now I am getting it even with the “texture camera” disabled.

To be clear, when I drag the mouse down, the bottom of the screen displays stuff that is lower than just before. When I rotate the scroll wheel, pulling my finger towards my hand, it zooms in towards the target

In all my other scenes, the behavior is the opposite. Why can it not always be the same?


In Quest, when the camera supplying the render target is in use, other meshes in the scene, seem to be drawn more than once, looking like an echo of about 4 when you turn your head.


I could not pull off a pg that shows any of this in my only attempt thus far. I have just suffered through it, & turned off the “texture camera”. Any clues just based on this?

Pinging @RaananW

Hi @JCPalmer, i have a few questions :slight_smile:

It seems like those are two different issues - one is with the ArcRotate camera - which seems to be flipped. Would you be able to reproduce that in the playground?

The other is with the WebXR camera. I assume you are using 4.2. Is the “echo” a re-draw echo withour clearing the scene? like the wonderful "failed window"effect of windows 95? or do you see the same mesh a few times and then it disappears?
BTW - WebXR does not support an extra camera. There will soon be an implementation of the WebXR overlays API, which you could then use to add overlays on top of the XR framebuffer, but babylon will probably go a little crazy (as it seems) if you add another active camera to a webxr scene.

When I first brought the scene up in XR, I realized that I made the overall scene / building 180 degrees opposite of the way I wanted to you face. It was less than hour to change, and I wanted to start off with WebXRDefaultExperience, so I just changed the Blend file re-exported, & switched some signs in code.

Unfortunately, the initial position of the arc rotate camera was now in a bad place, under the floor. I switched a sign of a number in the constructor. I changed the radius arg by mistake. Un-did that, now the controls go the right way.


For other problem, I get multiples of SOME meshes, the ceiling and meshes made to look like lights. There are multiples at the same time when you move your head.

1 Like

Will you be able to share the scene or a screencast/screenshots from it?

Must confess that I do not know how to screencast yet. I am not even sure could catch it in the act, besides. Here are some desktop shots, which can give you some idea. Ignore the audience meshes. They are only for promo / music videos. The non-stage area is also too bright currently for dev, andwill be darker.

That said, first shot shows the stage lights & ceiling. In the headset, those rows of overhead stage lights & divisions in the ceiling have sort of an echo trail as you move your head. The faster you move your head, the more echos. Trying to keep real still, you just see extra blurriness. Everything on stage, the walls behind the stage are rock solid.

From different angle, you can see in dev that I have a drag-gable mesh representing the camera with a rotation gizmo. This is used to create “poses”, live right on the desktop, for a Camera subclass in my animation system, which has a little dictionary of preset positions / rotations. The little buttons at the bottom control it in desktop / dev. The “Snap” button will write something like this to the console, which I then put in a BigScreen class at the application level.

this.presets['kb_headshot'] = new QI.PosAndRot(new BABYLON.Vector3(-1.7760, 1.4126, 2.5693), new BABYLON.Vector3(0.0000, -0.5443, 0.0000)  );

The reason I brought this up is I have a very layered final application, which I am not going to publish. I might try to get simple pg, which has the problem.

Ok, I made a stripped down PG, which does not misbehave in the same way, but definitely is messed up.

https://www.babylonjs-playground.com/#ZCUDEC#3

The render camera is not really pointing at anything, so you just get the clear color on the big screen. This what it looks like in Blender:

Would the expected behavior be anything other than we see? The render camera is pointing at an empty space, so it only shows the clear color. Rotate it - https://www.babylonjs-playground.com/#ZCUDEC#4 , and you see what it sees

I’ll get back to you. No-charge right now. The reason the render camera & initial camera which turns into an XR-Camera do not show anything is I used an older Blend file before I rotated the building. Let me correct.

Still, didn’t you see when you rotate your head to see the screen, then back the opposite way, that things go crazy? Also, if you move the controllers around, they start artifacting too?

Also, I did manage to make a video yesterday, that I uploaded.

Yeah! trippy :slight_smile:

Seems like something is not cleared correctly when using a render target. I’ll try to debug this and see what I come up with.

Thanks! Funny thing is imagine how hard it would be to do that on purpose, since it does seem like it would have some use in a game where you got shot by some hallucinogenic dart.

While waiting to charge, and working on a Blend for a PG for my next concern, PBR smoothness on Quest. Will post as a separate topic.