The context is:
ARSessionDelegate
func session(_ session: ARSession, didAdd anchors: [ARAnchor]) {}
Upon Image Detection, place an overlay of a RC Entity at the ImageAnchor location.
Using IOS 14, I have been reliably using:
mySceneAnchorEntity = AnchorEntity(anchor: imageAnchor)
to render additive RC scene content. Additive model entities render correctly in the field of view.
When I upgraded to IOS 15 using the same code that had been working for many (~12) months on all versions of IOS 14, my code failed to render any RC scene content. I get a ghosting of all of the render content in the proper location, but visible only for a moment, then it disappears.
So, I finally found the root cause of the issue. It appears that IOS 15 only renders correctly in my application using:
mySceneAnchorEntity = AnchorEntity(world: imageAnchor.transform).
This led to many frustrating days of debugging to find the root cause. As a side note, IOS 14 renders RC scene entities correctly using both variants of AnchorEntity:
mySceneAnchorEntity = AnchorEntity(anchor: imageAnchor)
and
mySceneAnchorEntity = AnchorEntity(world: imageAnchor.transform)
So, this leads me to believe there is an issue with the behavior of IOS 15 with the following version of AnchorEntity:
mySceneAnchorEntity = AnchorEntity(anchor: imageAnchor)
Post
Replies
Boosts
Views
Activity
I have several reality composer models in my project. when I open more than one of them at a time, xcode loves to **** up (crash).
Workflow: open xcode, open RC project1 , open RC projet2. share objects across scenes. Close RC project2, open RC project3, share and repeat. This causes xcode to beach ball and crash. Poor quality AR support/testing/quality.
To reproduce the issue:
After importing a RC .project scene, associate a scene entity (theEnntity) to an anchor entity. Enable theEntity (isEnabled = true). theEntity renders in the scene correctly. Execute a scene reality composer behavior Notification to disable theEntity (Hide > Affected Object > theEntity). theEntity no longer renders in the scene, which is correct behavior. Then the bug occurs where you are now unable to Enable theEntity (isEnabled = true). theEntity no longer renders correctly in the scene.
xcode project contains:
7 RC .rcprojects, size range: 11.5MB-16MB/.rcproject
Crash:
Beach ball spin after toggling between .rcprojects in xcode where I Open RC for each project.
I am inferring that there is a memory deallocate bug in xcode where after a .rcproject is opened in a tab, I open RC, work on a scene. Close the scene, then pick another .rcproject to work on. After about 3-4 iterations, xcode becomes non-resonsive, beach ball happens, then xcode crashes or I have to force kill it.
Start xcode 13.4, choose a .rcproject file in the current project. Go to window where RC scene is rendered, choose Open in Reality Composer and xcode crash occurs. Restart xcode and crash cycle happens immediately due to current window being a RC scene. Repeat this bad behavior till you quickly choose another (non-RC) file Tab upon open of xcode and before xcode is in a steady run state.
Just upgraded my ipadOS app to iOS15 and the AR part of the app is now completely broken. Literally no AR functionality works. Other than that, an awesome upgrade;)
I verified I'm not crazy by installing the same app to iPad8 running iOS14.8 and my AR functionality works fine.
broken environment: xcode13, ios15 (prod release), iPadPro
working environment: xcode13, ios14.8, iPad8
I think this is worth a zoom meeting to demo my findings with the apple dev team.
When I clone a rather complex scene in realitykit, then immediately try to reference that clone's entity content, I get a nil return. There is no completion: form of clone, to my awareness. How can one safely assure a scene is fully cloned before use? I load this scene using load..Async from RealityComposer. This completes successfully before I do a clone operation.
How do you watch for animationevents in Swift? I have a move animation which has a duration (timingFunction) of 3 seconds and need to be alerted when the move operation on an Entity is complete.
I need to be altered for: AnimationEvents.PlaybackCompleted.
How do you set up this event alert watcher in it's own thread or closure in Swift5.0?
In RC, I designate an Object as hidden at Scene start.
In my application, I anchor the Object as a new Child (anEntity) to an AnchorEntity active in the arview.
anchorEntity.addChild(anEntity)
When I execute the following line:
anEntity.isEnabled = true, the object does not become visible. anEntity.isActive value true.
What am I missing? or is this a RC/RealityKit bug?
Reality Composer seems stuck at version 1.5, when can we expect the next major update? An update I need is an Object Navigation tree for all scene objects to quickly choose group or individual objects for change. this is typical on 3D modeling tools and is strangely missing from RC.