touch input error - finger position offset

At various random times the remote will not track fingers correctly and will offset the input by as much as an inch. This happens when running by app in Unity and after building it to my iPad (and previously to my iPhone).

I've been having this trouble since I started programing with Unity over a year and a half ago and I keep thinking it must be something I'm doing wrong (though I suppose it's possible that it's a bug). I'm running the latest release version of Unity, SDK, and Snow Leopard.

Usually I can fix it by quitting Unity and restarting. However, it happens often enough that I may have to quite Unity every time I run my app. It usually follows a code update, but I haven't noticed a pattern as to what JavaScript is affecting it.

I could live with this, annoying as it is, but now I can't get my builds to work, even when the app works with the remote. I've spent the last 2 hours continually quitting Unity, opening it, building my app, installing it, finding out it is still not registering my finger touch under by finger, but about and inch away, and starting the process over.

Well, as far as I can tell I solved this. Because my camera was continually changing position it was freaking out the raycast. I was getting too many readings. I resolved it by moving the Physics.Raycast part of the script to the script that was moving the camera. So every time the camera moved it would recast the ray.

Ok, looks like I sorted this one out. I was using my main camera to register taps on objects. That camera is on a joint so it swings around above the board to match the tilt of the iPad. The camera position was offsetting the raycast. Once I had a static camera to use for my GUI buttons, I set the raycast to use that camera and it's been trouble-free ever since. Hope this helps someone else.