1 / 14

Visibility Determination – List Priority Methods

Visibility Determination – List Priority Methods. Chapter 11. Types of Visibility Methods. Object precision E.g. [Weiller 77], based on polygon clipping Image precision E.g. Z-buffer, ray casting List priority. P j. P i. Visibility (Priority) Ordering.

aure
Télécharger la présentation

Visibility Determination – List Priority Methods

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Visibility Determination –List Priority Methods Chapter 11

  2. Types of Visibility Methods • Object precision • E.g. [Weiller 77], based on polygon clipping • Image precision • E.g. Z-buffer, ray casting • List priority

  3. Pj Pi Visibility (Priority) Ordering • Given a set of polygons S and a viewpoint vp, find an ordering on S st for any 2 polygons intersected by a ray through vp Pi has higher priority than Pj

  4. H1 H1 Schumacker 69 • A polygon/object on the same side as the viewpoint has higher priority than one on the opposite site

  5. H1 H1 H2 H2 Schumacker 69 • If we have more than one object on one side then repeat the same reasoning and add more partitioning planes between these objects

  6. Binary Space Partitioning Trees(Fuchs, Kedem and Naylor `80) • More general, can deal with inseparable objects • Automatic, uses as partitions planes defined by the scene polygons • Method has two steps: • building of the tree independently of viewpoint • traversing the tree from a given viewpoint to get visibility ordering

  7. Building a BSP Tree (Recursive) {1, 2, 3, 4, 5, 6} A set of polygons The tree

  8. Building a BSP Tree (Recursive) Select one polygon and partition the space and the polygons

  9. Building a BSP Tree (Recursive) Recursively partition each sub-tree until all polygons are used up

  10. Building a BSP Tree (Recursive) • Start with a set of polygons and an empty tree • Select one of them and make it the root of the tree • Use its plane to divide the rest of the polygons in 3 sets: front, back, coplanar. • Any polygon crossing the plane is split • Repeat the process recursively with the front and back sets, creating the front and back subtrees respectively

  11. Building a BSP Tree (Incremental) • The tree can also be built incrementally: • start with a set of polygons and an empty tree • insert the polygons into the tree one at a time • insertion of a polygon is done by comparing it against the plane at each node and propagating it to the right side, splitting if necessary • when the polygon reaches an empty cell, make a node with its supporting plane

  12. Back-to-Front Traversal void traverse_btf(Tree *t, Point vp) { if (t = NULL) return; endif if (vp in-front of plane at root of t) traverse_btf(t->back, vp); draw polygons on node of t; traverse_btf;(t->front, vp); else traverse_btf(t->front, vp); draw polygons on node of t; traverse_btf(t->back, vp); endif }

  13. The BSP as a Hierarchy of Spaces • Each node corresponds to a region of space • the root is the whole of Rn • the leaves are homogeneous regions

  14. BSP Representation of Polyhedra

More Related