Weird vr scene with mapbox

Hi, I’m experiencing issue with weird render result in immersive-vr session. Hope someone can help me with it, thanks in advance.

What I’m trying to do: I’m trying to create a mixed scene with mapbox-gl and three, and toggle to vr view with pure threejs scene on button click. I’m using custom button instead of default vrButton, doing same thing(handle session start/end, render.setSession) as in three.js/VRButton.js at 191a1ef699a5d53de2cd645c667e7fee184a18fd · mrdoob/three.js · GitHub

Expected result:
The mapbox + three scene works as expected:

A pure threejs test scene sharing same logic except renderer works fine:
pure threejs test scene in vr mode

I’m expecting same rendering result as in this vr mode.

Actual result:

As can be scene, entering vr mode from mapbox + three scene results in vr view with weird perspective, some models disappear, something should be behind get displayed in front. I wonder what’s the cause for the weird rendering result.

I’m sorry it takes time to get the code simplified into a reproduction repo.

Thanks for the help.