Closed ujell closed 11 months ago
Hi @ujell , Sorry for the late reply. Thank you for the detailed repro steps. We haven't finished investigating yet, but we will definitely get back to you next week. Cheers, Christopher
Hi @ujell, we can reproduce the issue and it looks like a bug on our side. We logged an internal bug ticket with the team and we'll let you know once a fix is available.
Hi @ujell, we deployed a fix for this issue in the meantime. While we generally recommend using the latest client version, it also should work with the one you're already using. Let us know if you still run into problems!
Seems like working like a charm now, thank you!
I am having a weird issue on Unity version while working with a dynamic hiearchy. I first thought it was maybe related with sceneGraphMode parameter while converting the models, but this is reproducable in Showcase app with the default engine model, so I am thinking it might be an ARR bug.
Explanation: if you move a child Remote Entity Sync Object out of the object hierarchy, move it back to the original parent, and then move an ancestor (except parent) out of the hieararchy, children are not rendered at the original position anymore, despite everything having the same transform values as before. Yes, it is clearly an edge case, however this is actually regularly happening in our app.
How to reproduce:
In Showcase app, add the default engine model to the scene
Find the engine on the inspector and show children of the RootNode
You can select any part that you can clearly visually identify, I will use "EngineBlock_Unwrapped_MATRIX_Translation" for this example
Extend children at least twice
Enable "Sync Every Frame" parameter on a child (i.e. EngineBlock_Unwrapped)
Reparent EngineBlock_Unwrapped to any other object in the scene, e.g. MixedRealityPlayspace
Move EngineBlock_Unwrapped back to original parent (EngineBlock_Unwrapped_MATRIX_GeometricTranslation). You can disable "Sync Every Frame" or keep it, it does not change the result
Now repeat this for one of the ancestors besides the direct parent, for instance enable "Sync Every Frame" on "EngineBlock_Unwrapped_MATRIX_Translation"
Then reparent it to something outside of the hierarchy e.g. MixedRealityPlayspace. Now it should be displayed at somewhere else
If you move it back to the original parent, it is still at the wrong location
In our models, parents usually have multiple children and seems like all children are affected from this, it behaves like we have moved the parent transform. This issue is not happening if you move the parent directly to somewhere else, or if you move the direct parent instead of the other ancestors. Transform values seems not the be reason, they are the same in all cases as far as I can see. Also this seems to be still happenning if you manually sync after every move instead of using "Sync Every Frame".
Tested in both in Showcase app as its current state in the repository, as well as with Unity 2021.3.27f1 and ARR 1.2.8 release.
This is a weird case, so I hope it the explanation is clear enough. Any ideas what this might be? Maybe I am missing a limitation or some documentation? Thanks in advance!