I’m encountering a 1-meter size limit on the visual presentation of objects presented in an immersive environment in vision os, both in the simulator and in the device
For example, if I load a USDZ object that’s 1.0x0.5x0.05 meters, all of the 1.0x0.5 meter side is visible.
If I scale it by a factor of 2.0, only a 1.0x1.0 viewport onto the object is shown, even though the object size reads out as scaled when queried by usdz.visualBounds(relativeTo: nil).extents
and if the USDZ is animated the animation, the animation reflects the motion of the entire object
I haven’t been able to determine why this is the case, nor any way to adjust/mitigate it.
Is this a wired constraint of the system or is there a workaround.
Target environment is visionos 1.2
Hi @stonebits
Take a look at the documentation for specifying the size of a volume window here. You should be able to add a .defaultSize
modifier when you declare your window, for example if you wanted a 2x2x2 meter sized volume window:
.defaultSize(width: 2, height: 2, depth: 2, in: .meters)
When you are scaling your entity by a factor of 2.0, you are probably modifying only the transform of the loaded entity, not the dimensions of the window it is presented in.
Let me know if this resolves your issue!