3D Engine demo 1: 3D BSP Trees
Loading...
3,281
Loading...
Uploader Comments (Wc3UofA)
see all
All Comments (4)
-
niiice job.
Im also doing my own things too, but you did it waaay better
(using portal rendering, btw)
-
nice work, did floating point precision trip you up? I remeber the first time I done this it took me ages to find why it wasn't working, and then I found out (if you use floating point) that points can't actually coincide with a true mathematical plane(only on a very rare occasion) unless you create a small epsilon value to compare a float to zero.
-
Very cool! Seems that you are reinventing the wheel, though... did you do this for educational reasons?
Loading...
That pretty cool. Question: what's the difference between a bsp tree and an octree? From what I gather a bsp tree sorts out the polygons so that you draw the in the right order (ie. it's used for efficient depth-testing) whereas an octree will quickly tell you what's in your view frustum, no depth-testing (ir does frustum culling).
jSaurabh 3 years ago
a bsp tree can be used in Nd space; octrees are useful mainly for 3d space. The difference lies in the fact they divide space into 2 vs. 8 regions. Both kinds of trees can be useful for frustum culling. With 3D BSP trees, the information for which 3D convex spaces are visible from any given convex space (tree node) is calculated and stored a priori, so whenever you cross into a new space, you already know what other possible spaces are visible, and what order to draw them in.
Wc3UofA 3 years ago
ahh.. the reason is, having a software renderer that I understand from the ground up, allows me to do certain things not possible with 3D cards (for example, implementing some of the more recent algorithms in computer graphics literature). And yes it was educational. Always nice to understand how everything fits together from the ground up. Also posted as small part of my C.V., but I was disappointed with YouTube's image quality so I've reposted this on a more personal website.
Wc3UofA 3 years ago