Hi Thomas, one thing that comes to mind initially, is simply to use actual 3D 
coordinates. You can still store objects or object descriptions in an array, 
but add two coordinates to each which can define (on a gross level) its size. 
I.E. a door might be defined as existing from -1.5, 0.0, -3.0 to  1.5, 0.0, 3.0 
where coordinates are measured in feet and are shown as x,y,z for width, length 
and height.

so you'd have a door that is three feet wide, six feet tall, and zero feet long 
so to speak. In this example, 0.0, 0.0, 0.0 is in the center of the door, so 
you could move the door anywhere as its coordinate definition is only relative 
to itself.

This would actually define the door and any other objects as axis-aligned 
bounding boxes so would have real dimensions in the game, but could still be 
stored with a very small amount of data.

Hope this helps…

Smiles,

Cara :)
On Dec 5, 2010, at 3:42 PM, Thomas Ward wrote:

Hello everyone,

I was wondering if some gamers and especially other game developers
could give me their input on this matter. Tonight I am sitting here
doing a bit of work on the Genesis 3D engine when it ocurred to me I
might be doing things the wrong way, or at least I don't have to do
things the way I'm currently doing it.

You see, when I draw a map of a game level I draw everything in it
completely to scale. Like if I draw a chasm or lava pit, and let's say
it is 10 feet in length, it ends up using at least 10 elements of the
array to hold it in memory. Now, obviously the larger the level the
more memory the game is going to use because everything is drawn
completely to actual scale. This would be fine for games where the
levels are small, where the levels are restricted to a 2d world, but
tonight while working on the engine and creating a test level for Star
Wars Mysteries of the Sith I soon realized that in order to draw 3d
levels according to actual scale would be huge. Oh, the computers of
today can certainly handle it as memory is no object its just the
principle of the thing why create a (100, 100, 100) 3d array to store
the game level when I could acomplish the same thing with a (10, 10,
10) array that has everything scaled down by a factor of 10.

So to use my earlier example the chasm that is 10 feet in length would
be reduced to 1, and therefore would only use up 1 element in the
array. Therefore instead of the player taking a step of 1 he or she
would move only 0.1 units per step. Things like that basically means
that I could make the level 10 times smaller, saving memory, and still
draw large objects and rooms.

However, scaling things down isn't without its problems either. For
example, since you can't store anything in an array that is smaller
than 1 unit in size a door that would normally only be two or three
feet wide would now be 10 feet wide because that is the smallest I
could make it and store it in the array. Same would go for chasms,
fire pits, and anything else. Basically, I'd have to make the jumps
longer in order to clear a trap that was only three or four feet
accross, but thanks to the weird skaling and technical issues with the
array would be no smaller than 10 feet. Any thoughts on this?

Cheers!

---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gam...@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.


---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gam...@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

Reply via email to