ParticleEmitterComponent Position Offset Issue After iOS 26.1 Update – Seeking Solutions & Workarounds

Problem Summary

After upgrading to iOS 26.1 and 26.2, I'm experiencing a particle positioning bug in RealityKit where ParticleEmitterComponent particles render at an incorrect offset relative to their parent entity. This behavior does not occur on iOS 18.6.2 or earlier versions, suggesting a regression introduced in the newer OS builds.

Environment Details

Operating System: iOS 26.1 & iOS 26.2

Framework: RealityKit

Xcode Version: 16.2 (16C5032a)

Expected vs. Actual Behavior

Expected: Particles should render at the position of the entity to which the ParticleEmitterComponent is attached, matching the behavior on iOS 18.6.2 and earlier.

Actual: Particles appear away from their parent entity, creating a visual misalignment that breaks the intended AR experience.

Steps to Reproduce

Create or open an AR application with RealityKit that uses particle components

Attach a ParticleEmitterComponent to an entity via a custom system

Run the application on iOS 26.1 or iOS 26.2

Observe that particles render at an offset position away from the entity

Minimal Code Example

Here's the setup from my test case:

Custom Component & System:


struct SparkleComponent4: Component {}

class SparkleSystem4: System {
    static let query = EntityQuery(where: .has(SparkleComponent4.self))
    
    required init(scene: Scene) {}
    
    func update(context: SceneUpdateContext) {
        for entity in context.scene.performQuery(Self.query) {
            // Only add once
            if entity.components.has(ParticleEmitterComponent.self) { continue }
            
            var newEmitter = ParticleEmitterComponent()
            newEmitter.mainEmitter.color = .constant(.single(.red))
            entity.components.set(newEmitter)
        }
    }
}

AR Setup:

let material = SimpleMaterial(color: .gray, roughness: 0.15, isMetallic: true)
let model = Entity()

model.components.set(ModelComponent(mesh: boxMesh, materials: [material]))
model.components.set(SparkleComponent4())
model.position = [0, 0.05, 0]
model.name = "MyCube"

let anchor = AnchorEntity(.plane(.horizontal, classification: .any, minimumBounds: [0.2, 0.2]))
anchor.addChild(model)
arView.scene.addAnchor(anchor)

Questions for the Community

  • Has anyone else encountered this particle positioning issue after updating to iOS 26.1/26.2?

  • Are there known workarounds or configuration changes to ParticleEmitterComponent that restore correct positioning?

  • Is this a confirmed bug, or could there be a change in coordinate system handling or transform inheritance that I'm missing?

Additional Information

  • I've already submitted this issue via Feedback Assistant(FB21346746)
ParticleEmitterComponent Position Offset Issue After iOS 26.1 Update – Seeking Solutions & Workarounds
 
 
Q