I am trying to display an object that is located in front of the camera. I noticed that the farther the object is away from the origin (the AR Camera), the more jittery the object becomes.
I was able to reproduce this in the Unity sample for the wood chips with gold teapot. Move the teapot in the z direction a pretty good amount. You will notice that the teapot is slight jitter and is very noticeable. Notice the scale of the Image Target (and hence the teapot is huge, like 32 meters if 1 meter = 1 unit).
I also noticed that the objects are "more" jittery when the scale is changed to a more realistic dimension. In this case change the dimensions of the Image target keeping the same aspect ratio -> (X,Y,Z) = (1.428572, 1.214286, 1). Now move just the teapot to Z = 15 and a little off center with Y=4. Notice how the object (the teapot) is *super* jittery.
Changing the scale of the objects to something big really screws up the physics.
How do I fix this ... it's kind of a show stopper for me.
Thanks...
You can observe the effects of the offset error, in relation to the camera's perspective, but developing a model like this one.
This is simply an arrangement of individual cylinders, aligned as rods, running perpendicular and parallel to the target face. The panels are transparent cubes with a grid texture. By aligning the rods and grids, you can observe, the magnitude of error for various offset distances and angles, for a given perspective.
What you'll notice is that lateral offset is more stable than vertical offset and that this instability tends to increase as you approach a perpendicular perspective. Vertically offset models above the origin will actually bend away from the camera center as you approach a perpendicular alignment.
Some other observations are that the error propagation appears to be linear and uniform for all points at a given distance (i.e. the error is of the same magnitude in the same direction and grows linearly). And the models actually are jittering, they're not simply oscillating between two points. The magnitude of each jump appears to be consistent, for a given distance, but the direction of the error appears to be random. I haven't analyzed these values to determine if they truly are random.
So pruning these values may be a more effective approach than trying to correct them.