On Fri, Feb 02, 2007 at 12:15:47PM +0900, chris wrote:
>
> Yes - that's why we use a single continuous world space. Many systems
> like VGIS divide the earth into fixed sized sectors. This sort of
> segmentation creates many overheads.
> The Dungeon Siege game segmented its world into SiegeNodes, each
> with its own local coordinate space. When the viewpoint crossed a
> boundary between nodes, the local coordinate system changed to that
> of the node being entered and a ``Space Walk'' began.
> The space walk visited each active node and recalculated coordinate
> transforms to shift objects closer to the new local origin. This
> ensured coordinates did not get large enough to cause noticeable spatial
> jitter. It uses considerable processing resources to do space walk and
> the frequency of performing recalculations has to be limited: ``as
> infrequently as possible to
> avoid bogging down the CPU'' {Bilas}:
> http://www.drizzle.com/~scottb/gdc/continuous-world.htm

Okay, I've had a chance to read over and digest the "continous world" 
document.  As I understand it, the "world" is basically a set of "nodes" 
which are connected to form an adjacency graph.  The edges describes how 
the nodes are oriented/transformed in space in relation to each 
surrounding node.  The camera works in the coordinate space of whatever 
particular node it's on, and everything else is recentered relative to 
the current node.

I think this fits in very well with using portals in VOS.  A normal 
portal is a polygon in space which causes the renderer to recursively 
start rendering the sector behind the portal, clipped to the portal 
polygon.  This works nicely for indoor areas because if the portal isn't 
visible, it doesn't have to consider the room behind the portal at all.  
It's also used by some engines to connect indoor and outdoor areas (for 
example, I believe indoor areas in World of Warcraft are portals to a 
separate map, so that a viewer who is outside the building doesn't have 
to consider the building interior in rendering.)

The second kind of portal is a space-warping portal.  This works the 
same as a normal portal, except that a space transform (rotation and 
translation) is applied to the target sector.  This means that target 
sector no longer has to be in the same coordinate system as your current 
space.  Your current space has one origin, the space on the other side 
of the portal has another origin, and they're defined relative to each 
other.  Thus, crossing the portal boundary is in effect recentering the 
entire space.

I've always been against a unified coordinate system for virtual worlds 
for philosophical and pragmatic reasons (you're never going to get 
people to agree on how to allocate "space" except via some central 
authority), so it's good to consider that this is probably the best 
technical solution as well.

-- 
[   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