Background
So, I've got an anchor that I add to my Session after performing a raycast from a user's tap.
This anchor is named "PictureAnchor".
This anchor is not getting saved in my scene's world map, and I'm not sure why.
Information Gathering
I keep an eye on my session by outputting some information in
func session(_ session: ARSession, didUpdate frame: ARFrame)
As the ARFrame's are processed I look at the scene's anchors via sceneView.scene.anchors.filter({$0.name == "PictureAnchor"
and I see that my anchor is present in the sceneAnchors.
However, when I do
frame.anchors.filter
to check the anchors of the ARFrame itself, my PictureAnchor is never present.
Furthermore, if I "save" the worldMap, an Anchor named PictureAnchor is not present.
Note: I could be totally wrong on how to read the data inside a saved world map, but I'm taking the anchors array at face value.
Other Information
I've noticed that the AR Persistence sample project actually checks for the anchor to be present in the ARFrame's anchors before permitting a save, but this condition is never happening for me.
I also noticed that my scene can have over 100 anchors, and the frame can have over 40, but only around 8 or 16 anchors are saved to the world map.
Main Question Restated
So, my main question is, why is my user-added "PictureAnchor" not present in the ARWorldMap, when I save my scene's map?
I see that it's present in the scene's anchors, but not present in the ARFrame's anchors.
A model entity is visible in the scene after being attached to this anchor as well.