Hello,
I have my Gaussian Splat as a .splat file in my Unity Scene with the WebXR component and the necessary component in it. When I scan the QR code on my iPhone and try to preview my Splat in AR, it does not shows.
Hi Samsmeep Singh,
Let’s troubleshoot your “Gaussian Splat AR on iPhones” issue step by step:
Plan (Pseudocode):
- Confirm Needle Engine, Unity, and WebXR versions used.
- Check the GameObject/component setup:
a. Gaussian Splat file imported, .splat component on object
b. WebXR or ARSession component present
c. GaussianSplatRenderer component enabled - Verify if AR works with default objects (e.g., a cube).
- Ensure .splat support on iPhone/Safari/WebXR.
- Check network requests for .splat file in browser developer tools.
- Verify there are no errors in the browser console.
- Reference samples and documentation:
Next Steps:
- What iOS version, browser, Unity, and Needle Engine version are you using?
- Does AR work for primitive objects (without Gaussian Splat) in the same scene on iPhone?
- Did you see any errors in the browser console on your iPhone or desktop for the AR session?
- Is your .splat file accessible (not blocked by CORS or 404)?
The .splat renderer might not be fully supported on iOS Safari due to WebGL or shader feature limitations. Please clarify the above questions so I can give targeted advice or a workaround.
Tip: When reporting issues, always include:
- Engine/editor versions
- Browser and device info
- Clear description/steps to reproduce
- Screenshots or error messages if available
Would you share the Unity/Needle version info or logs via “Copy Project Info Into Clipboard”?
1 replies left - Get a PRO license for more AI replies.
thread_8QdMiqSrZvMDBtWko6u1BXk8
Reply to this post directly if you need further help (bottom right button)
I am using Unity 6.1 with Needle Engine 4.4.3. I am running it on my iPhone 13 with safari.
Apple does not allow WebXR usage on iOS at this point.
Needle converts scenes to USDZ for use in QuickLook, which is Apple’s system for displaying AR content without an app on iOS/iPadOS/visionOS. QuickLook has limited interactivity support (our Everywhere Actions work there though) and no support for scripting/custom code.
All this to say: yes, indeed, Gaussian Splats require custom rendering code and custom scripting that Apple has not made available in QuickLook on iOS. Our USDZExporter has callbacks to adjust parts of your scene right before export – there’s often a need to switch e.g. from a custom shader to a regular PBR material, or, as in your case, to switch from gaussian splatting to a mesh-based fallback for iOS AR.
I believe we explain this very clearly in our docs – if you have run into a place where these limitations of QuickLook are not well explained, please let us know.