Post

Replies

Boosts

Views

Activity

Reply to RealityKit Instanced Rendering on visionOS
Finally in Vision26 there is this new API: https://developer.apple.com/documentation/realitykit/meshinstancescomponent referenced in 2025 realitykit WWDC: https://developer.apple.com/videos/play/wwdc2025/287/ I've been trying it and it kind of works, it reduces draw calls and memory usage but it consumes more CPU for some reason. I've been comparing placing an array of thousands of entities in three ways: All entities are independent. All entities are one single mesh pointing to the same texture. Entities are instanced using MeshInstanceComponent. 1: Independent entities performance is terrible. Not going to elaborate. 2: Single mesh is good. Downsides: There are a lot of polygons, maybe the array should be chunked so frustrum culling works. Occupies some memory. Large usdz file size 3: Instancing has a great performance, maybe even better than having just a single mesh + it barely uses any memory. Downsides are: Increase in CPU usage. Single mesh was 0% but with instancing it was around 20% Couldn't make a usdz that had instancing in it... only able to reproduce it programatically. While profiling it says 1 draw call for N entities but in the "total draw calls" it is around N*2 draw calls. One single mesh would only have 1 total draw call. I don't know where this comes from.
Topic: Graphics & Games SubTopic: RealityKit Tags:
Oct ’25