I have been reading through a lot of forum posts here. I have tried to apply these solutions and additional settings provided by Vuforia, e.g. extended/persistent tracking. I still have two major issues with the SDK that limits its usability significantly.
I am developing for the iOS and Android platforms in native code, not with Unity.
I hope to gather a collection of suggestions that I can try out to improve the experience. At this point I am really hoping for anything.
1. Being close to a marker and tracking causes model to jump/shake occasionally
It seems like the marker provided by the demo, e.g. stones is somewhat more stable than self created markers that have a rating of 5 stars. The model I am using is scaled up quite a bit beyond the size of the marker and at this point you can really notice that the model occasionally rotates over an axis for a few frames and then jumps back into position.
My solution so far was calculating an average of the last four pose matrices. That somewhat helps to avoid big jumps but also causes delays in actual position updates of the model when moving the camera.
Are there any other strategies that people have applied to get this more under control or something like a low pass filter? Also, what about the environment, what works best in regards to lighting, colours of the marker etc.
2. Extended tracking, moving camera around model moves model towards the camera
As soon as the camera is too far away to pick up the marker the extended tracking takes over, if enabled. The issues described under #1 doesn’t seem to happen here. I notice another issue here though. If I walk around the model, it seems to move always towards me a little bit. Let say you have a cube in a parking lot that fits perfectly between the lines. If I step far away and then walk around to see the cube from the side, the cube will move towards me over the line of the parking spot.
I understand extended tracking is creating some sort of map from the environment and tries to place the model based on this map. Is it expected that this is just not 100% accurate, or is there something I can do, like a dynamic offset etc, to account for this?
Again, any other leads, suggestion or links to other posts would be highly appreciated.