On Fri, Feb 09, 2007 at 04:56:39PM +0100, Karsten Otto wrote:
> I am not quite sure what kind of precision is necessary here... I'd  
> expect that it should be enough to center the current sector for  
> displaying purposes, and re-center to the new sector once you cross a  
> portal boundary. Considering relatively small sectors, I'd imagine an  
> error factor of a few centimeters  is not too disturbing when the  
> objects in question are 50 meters away. This is probably two pixels  
> difference on the average display resolution. I can live with that :-)

You've put your finger on it.  From a rendering perspective, you just 
need enough precision so that the edges between two triangles that are 
adjacent will actually be drawn that way without visible seams or 
cracks.  If you make sure the world is set up in such a way that the 
camera is never too far from the origin, then this isn't a problem. 

(Strictly speaking, the camera transform causes the world to be oriented 
around the camera, not to oriented the camera in the world -- but it's 
easier to speak about it as if it were the camera that is moving).

Human scale is pretty easy to manage.  Geospatial scale, and 
particularly moving between a galactic scale down to a human scale 
smoothly is where things are really difficult.  I'm open to ideas as to 
how to split this, because frankly I don't know how best to compromise 
between a massive scale and a high-detail scale, particularly in terms 
of the representation that gets pushed over the network.


Also, on the topic of precision, something else that hasn't been 
mentioned is cumulative error -- depending on how you work with your 
coordinates, you may start getting artifacts due to the accumulation of 
roundoff errors.  This is fairly managable by having some immutable 
"source" data from which you do your transforms from, instead doing 
incremental transformations, but still something to watch out for.

> Regarding physics simulation, which (if I understand you correctly)  
> suffers the most from matrix creep, well... I am no expert, but  
> couldn't you calculate this in a virtual coordinate space, derived  
> from the world coordinates in such a fashion that all objects  
> involved are close to the center? And then, once you reach some  
> "stable" result, convert the virtual coordinates back to world  
> coordinate space and continue from there? That may not be  
> particularly precise or realistic, but again, as long as the system  
> behaves more or less consistently, I can live with it.

Hmm.  Yes, you probably could do something like that, if you can divide 
up your interacting objects into isolated groups.  Then you could 
simulate those objects independently at the origin, then transform them 
back to the original position.  Seems like a hassle, though.

In practice, precise consistancy is the *least* of people's worries when 
setting up a rigid body physics simulation; setting up the system takes 
a lot of tweaking just to prevent it from flipping out.

Here's a harder question: how do you handle the physics for an object 
that's passing through or straddling a portal?

-- 
[   Peter Amstutz  ][ [EMAIL PROTECTED] ][ [EMAIL PROTECTED] ]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]

Attachment: signature.asc
Description: Digital signature

_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to