Occasionally, when the rabbit gets near the space origin, it
discontinuously teleports to the edge of the space. (Absolute coordinates? Einstein would be shocked...snicker.) I know Croquet uses homogeneous coordinates, which thus provides automatic scaling of calculations so they don’t get out of range, but this looks like a range problem to me…but that doesn’t completely explain why it seems to behave better when you inspect the transforms as they change. That suggests that timing is involved as well. I saw similar behavior when, in another life time, I designed and built integrated optic device and SAW device CAD systems for Siemens. |
I doubt that the distance near the space origin is this issue. More
likely, is that there is some strange interaction with a nearby portal. I have fixed the worst of these, though it would not surprise me if there are still a few loose ends. Try closing any portals and see if this might help - then let me know! Sorry for the problems people are having, but this release is far better than the Jasmine release was when it first went out the door, and I expect it will improve much faster as well. Regards, David [hidden email] wrote: > Occasionally, when the rabbit gets near the space origin, it > discontinuously teleports to the edge of the space. (Absolute > coordinates? Einstein would be shocked...snicker.) > > I know Croquet uses homogeneous coordinates, which thus provides > automatic scaling of calculations so they don’t get out of range, but > this looks like a range problem to me…but that doesn’t completely > explain why it seems to behave better when you inspect the transforms > as they change. That suggests that timing is involved as well. > > I saw similar behavior when, in another life time, I designed and > built integrated optic device and SAW device CAD systems for Siemens. > > |
In reply to this post by john_sellers@sellers.com
David A. Smith wrote:
> I doubt that the distance near the space origin is this issue. [SNIP] Actually it does have something to do with the origin. I was trying out openGL rendering experiments in the space, so I created a simple object directly rendered with a display list rendered with no transform. I used this to mark the origin: ogl glBegin(GLPoints). 0 to: 99 do: [ :i | dx := r * (c * i) sin. dy := r * (c * i) cos. ogl glVertex2f(dx, dy) ]. ogl glEnd(). (With glVertex2f, the default z value is zero.) In almost every case the skip happened, it happened as I approached the origin within close range. As I approach the origin within a few feet, the skip is repeatable about 90% of the time for a few minutes, then later it is repeatable at some other lower probability for multiple trails lasting a few minutes. Other times for a few minutes it won't happen at all, even when I try to get it to repeat. It almost never happens if I drill down to the replica avatar's dynamic 4x4 transforms and watch one of them in an inspector and try to get the skip to repeat. This is on a window XP media Center machine with an AMD 64x processor. The Windows XP version is NOT the Windowx XP 64x version. I'll fool with it some more if I get a chance (fat chance! sigh...). |
In reply to this post by john_sellers@sellers.com
Maybe it's when you're pointed at the origin?
Just a thought. John |
In reply to this post by john_sellers@sellers.com
[hidden email] wrote:
Actually it does have something to do with the origin.followup: It isn't surprising that something might happen near the origin. I haven't looked to see how your transforms are put together, but its common for systems to use inverse transforms to simplify clipping and other things. If there is any filtering in the transform stack, near the origin is one place that there is danger of going out of range. These things are tricky. I once evaluated 10 commercial CAD systems built for 1 micro technology, which at the time was the industry standard. All 10 of them fell over and could not even display our graphics without major flaws. You would think that high precision arithmetic systems would have no problem with scaling by only a factor of 10. But guess what? Since nobody was doing 0.1 micro work at the time, nobody ran regression against 0.1 specs. Where nobody looks, Entropy will certainly (oops)...I mean "probably" (snicker), do its deed. |
In reply to this post by john_sellers@sellers.com
David Faught wrote:
That is exactly right. This exactly explains my own experience. The several comments that I made about the cause probably being related to the transforms and the space origin are certainly not correct. In that regard, I obvious managed to stick both me feet in my mouth. The behavior I observed about the origin is certainly my behavior, not the system's.Is this the skip you're talking about? According to the TAvatarUser>>#mouseUp: method, if the "drive" button is held down for less than 300 ms and the pointer happens to be pointing at something (far away, like the skybox), the avatar goes there. I think this only happens in certain demo worlds. This has been value to me. Nothing like a two-by-four to get one's attention. Well, objectivity and conveying knowledge is the most important thing anyway. My e-mail signature for several years has been:
|
Free forum by Nabble | Edit this page |