Quote:
Originally posted by Sayeh
I reread your description, and looked at your drawings again-- which are different from standard BSP. I think your viewpoint is slightly skewed by the way you are implementing your own version of BSP.
Actually, what I showed is about as pure as you can get in terms of the partitioning process without going into 3-Dimensions. Yes that's "Standard" (even though there really is no "standard" implementation." That's not a "skewed" interpretation.
In fact, it's NOT like mine because I actually split polygons in that example and stored them in leaves. I don't do that in my implementation. Unless youare talking about my description of stored polygon "groups" in which case I was talking about my implementation. In fact, I made it a point to specifically state as such!
If, for some reason you think that BSP is different, then post what you think it is (and I can tell you right now that you'd be wrong).
Quote:
Originally posted by Sayeh
I'm talking vector mathematics here (analytical geometry). The term "partition" is a gamer's term, not a math term. I'm talking about planes and their instersections. Described as vectors and associated normals.
Which leads me to believe youdon't know what a partition is. Plane intersection is not a partition and vectors have 1 normalized version and an infinite number of normals associated with them. Planar intersection can not be described by just vectors an normals because intersections have a location in space. Vectors don't. Also, normals don't mean anything at all with planar intersection because the intersection is line which has infinitely many normals -- just like a vector. A partition here is a sector, not a divider. If you don't understand that much, then you don't understand what BSP is. Go take a linear algebra course.
Quote:
Originally posted by Sayeh
The whole point behind the BSP algorithm is to break an internal (ie. CONCAVE) space into it's smallest form (ideally a cube or oblong) where no planes overlap when viewed from within that "box".
No, the original purpose was to break things down into concave partitions. If your level was completely concave from the start, then you most likely wouldn't use BSP. Also, if your level was concave from the start you'd have a pretty retarded level because it would be a closed figure with nothing obscuring your vision across the entire world. It would be a box or a pyramid or something similar. BSP was originally solely for draw order -- back before z-buffers. That was the original reason that you had to split polygons and get things into concave sectors -- like you said and I said before, no overlap.
Either you are confused or you don't understand the word concave. Go look it up.
Quote:
Originally posted by Sayeh
Carmack's method is very effecient in the sense that it had little actual decision making to perform (decisions take time). He would essentially determine on which leg of the tree the POV was, and then travel the opposite leg until it hit a leaf. Then without thinking, he'd simply draw the vectors (ie. "partitions") by traversing the tree in reverse back to the node the POV was in.
Then you don't understand what Carmack is doing. For one, you're using POV in a silly sense -- what you most likely meant was the players position. His point of view doesn't have anything to do with traversing the tree, it's only looked at AFTER the sector in which the player lies is found. He traverses to a leaf and doesn't stop at a "leg." Even if he did, he'd have no way to determine which leg to stop at because the player exists "in" all of the nodes which go from the leaf to the whole. You aren't understanding the entire concept of BSP. Also, now you are calling a vector a partition. A partition is a sector, not a vector, not an intersection of planes (which are two very different things. Earlier you said it was the intersection of planes which is a line NOT a vector). On top of that, you said he draws the vectors which shows that youdon't even know what a vector is. You can't "draw" a vector because it has no location and takes up no space -- it's just a concept that represents direction with magnitude. And finally you are saying that he traverses back to where the POV was, which again, just shows that you don't understand the process. The player is in ALL of the nodes that lead up from the leaf where he lies to the original entire world (NOT leg). If he drew everything that lead all the way back to the master node, then he would have, in effect, draw the entire level, which would have accomplished absolutely nothing. You don't understand thewhole concept behind BSP or vector mathematics or even the proper terminology. Don't try to tell me I'm wrong when you obviously have absolutely no idea what you are talking about!
Quote:
Originally posted by Shadow12345
Is an octree necessary if you use the bsp format?
Octree is a completely different type of partitioning. It is not directly related to BSP in any way. I'd diagram that process as well, but it's pretty impossible to diagram in 2D.