Hard Light Productions Forums

General FreeSpace => FreeSpace Discussion => Topic started by: Kazan on April 27, 2001, 06:59:00 am

Title: Hey Reaperman
Post by: Kazan on April 27, 2001, 06:59:00 am
I need you to help me figure out how to generate SORTNORMs in the POF 3D model BSP data... i haven't a clue what they are

------------------
FreeSpace 2: The Babylon Project Effects Nerd and Programmer.
http://freespace.volitionwatch.com/babylon (//"http://freespace.volitionwatch.com/babylon")

Did you say you wanted your head used as a soccer ball?
Title: Hey Reaperman
Post by: JarC on April 27, 2001, 02:59:00 pm
 
Quote
Originally posted by Kazan:
figure out how to generate SORTNORMs in the POF 3D model BSP data... i haven't a clue what they are

Hey Kazan   (http://dynamic.gamespy.com/~freespace/ubb/noncgi/smile.gif) Excuse me for jumpin in here, I happen to know a bit bout these, albeit not exactly related to the POF format but from a math point of view. So I may be able to help out here if you have no objection...

I'll try a simple example to illustrate what sortnormals are...

Picture yourself a cube which is centered around 0,0,0, now picture each axis being a flat plane instead of just a vector...
These planes will subdivide the cube into 8 equally sized, smaller cubes, a process that can be repeated infinitely...

I have like you, however no clue how these are used in the IDTA data other than that if the various offsets turn up a non-zero value, the object should be subdivided and only for the poly's within the specified bounding box....

If I am not mistaken, the use of sortnormals allows you to approximate size and volume a lot darn faster than calculating the exact values...so basically they would be used in collision detection I guess

Oh, before I forget...they are usually  oriented perpendicular with their associated axes


------------------
JarC (ICQ ("http://21893433.home.icq.com/main.html")) "Dave? Will I dream?"
------------------

[This message has been edited by JarC (edited 04-27-2001).]
Title: Hey Reaperman
Post by: Eternal One on April 28, 2001, 01:21:00 am
 
Quote
Originally posted by JarC:
 Hey Kazan    (http://dynamic.gamespy.com/~freespace/ubb/noncgi/smile.gif) Excuse me for jumpin in here, I happen to know a bit bout these, albeit not exactly related to the POF format but from a math point of view. So I may be able to help out here if you have no objection...

I'll try a simple example to illustrate what sortnormals are...

Picture yourself a cube which is centered around 0,0,0, now picture each axis being a flat plane instead of just a vector...
These planes will subdivide the cube into 8 equally sized, smaller cubes, a process that can be repeated infinitely...

I have like you, however no clue how these are used in the IDTA data other than that if the various offsets turn up a non-zero value, the object should be subdivided and only for the poly's within the specified bounding box....

If I am not mistaken, the use of sortnormals allows you to approximate size and volume a lot darn faster than calculating the exact values...so basically they would be used in collision detection I guess

Oh, before I forget...they are usually  oriented perpendicular with their associated axes


Quite good math-point-of-view description you got there, but it's not entirely that way. A lot more is involved, so much that I'd rather not write it all here  (http://dynamic.gamespy.com/~freespace/ubb/noncgi/smile.gif)

But a cube is the worst example you can pick, it's a special case that hopefully Kazan takes into account when he builds his converter.

Sortnorms are the heart of octree generation and the only thing that's even a bit hard to code in a converter, I'm really looking forward how you'll pull it off Kazan  (http://dynamic.gamespy.com/~freespace/ubb/noncgi/smile.gif)
Title: Hey Reaperman
Post by: JarC on April 28, 2001, 06:28:00 am
   
Quote
Originally posted by Eternal One:
But a cube is the worst example you can pick, it's a special case that hopefully Kazan takes into account when he builds his converter.

I know, but since he indicated not to know what they are, I figured a cube would be the easiest to demonstrate the recursive pattern (and the inherent trap coz in a cube it would go on infinite).

Kazan, if you want more theory, you can find lots of stuf to study up on in one of the  BSP Tree Faq ("http://www.dcc.ufba.br/mat056/bsp/bsp.html")'s

------------------
JarC (ICQ ("http://21893433.home.icq.com/main.html")) "Dave? Will I dream?"
------------------


[This message has been edited by JarC (edited 04-28-2001).]