BSP Trees Binary Spatial Partitioning (BSP) means: Partition (or - - PowerPoint PPT Presentation

bsp trees
SMART_READER_LITE
LIVE PREVIEW

BSP Trees Binary Spatial Partitioning (BSP) means: Partition (or - - PowerPoint PPT Presentation

BSP Trees Binary Spatial Partitioning (BSP) means: Partition (or split) a space into Binary (two) parts using a separating plane. Repeat the process for both resulting subspaces and you will get a BSP tree. Occlusion Objects


slide-1
SLIDE 1

BSP Trees

  • Binary Spatial Partitioning (BSP) means:

– Partition (or split) a space into Binary (two) parts using a separating plane. – Repeat the process for both resulting subspaces and you will get a BSP tree.

slide-2
SLIDE 2

Occlusion

Objects “behind” the splitting plane cannot hide objects “in front” of the plane, regardless the relative location of the

  • bserver.
slide-3
SLIDE 3

Splitting Planes

  • What we see in this

example is a simple model with four polygons.

  • We choose the splitting

planes so that they lay on a one of the polygon of the model.

slide-4
SLIDE 4

Creating the tree

We choose a splitting plane that splits the space in two.

Chosen Splitting Plane Root Node L Node R Node

Associated Splitting Plane

slide-5
SLIDE 5

Creating the tree

L Node R Node Chosen Splitting Plane

Associated Splitting Plane

slide-6
SLIDE 6

Creating the tree

Chosen Splitting Plane

slide-7
SLIDE 7

Creating the tree

Chosen Splitting Plane

slide-8
SLIDE 8

Creating the tree

The leaves of the tree are convex regions.

slide-9
SLIDE 9

Traversing the Tree

We want to render the scene from this point

  • f view. In what order

should we render the regions?

slide-10
SLIDE 10

Traversing the Tree

Test against the splitting plane

Traverse the R subtree before the L subtree Rendering order:

Test against the splitting plane

slide-11
SLIDE 11

Creating the tree

Test against the splitting plane

Traverse the L subtree before the R subtree Rendering order:

Test against the splitting plane

slide-12
SLIDE 12

Creating the tree

Rendering order: Traverse the L subtree before the R subtree

Test against the splitting plane Test against the splitting plane

slide-13
SLIDE 13

Creating the tree

Rendering order:

Test against the splitting plane

Traverse the R subtree before the L subtree

Test against the splitting plane

slide-14
SLIDE 14

Creating the tree

Rendering order:

Test against the splitting plane Test against the splitting plane

Traverse the L subtree before the R subtree

slide-15
SLIDE 15

Convex Cells

The cells can be ordered back to front, or front to back.

slide-16
SLIDE 16

F2B Order

1 2 3 4 5 6

slide-17
SLIDE 17

F2B Order

1 2 3 4 5 6

slide-18
SLIDE 18

Hidden Surface Removal

Display: – Traverse the BSP tree back to front, drawing polygons in the order they are encountered in the traversal.

  • Construct a BSP tree:

– Pick a polygon, let its supporting plane be the root of the tree. – Create two lists of polygons: these in front, and those behind (splitting polygons as necessary). – Recurse on the two lists to create the two sub-trees.

slide-19
SLIDE 19

BSP Construction

1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6

slide-20
SLIDE 20

BSP Trees

BSP-Trees are view-independent A good splitting plane minimize the number of polygon intersections, and aims at a balanced tree. How to choose the order of splitting planes during construction?

slide-21
SLIDE 21

Point Location

Given p, in which cell it resides?

slide-22
SLIDE 22

Ray Traversal

Given R, which cells, and in which order it traverses?