Hieratic Z-buffering for rejection of occlusion

I am reading the occlusion clipping section in Real-Time Rendering 3rd Edition, and I could not understand how it works. Some questions:

  • How is the "Z-pyramid"? Why do we need multiple resolution of the Z-buffer? In the book, it is displayed as follows (left): enter image description here

  • Is the Octree structure the same as Octree, which is used for general rejection and rendering of truncation? Or is it a specialized Octree, made only for occlusion rejection technique?

  • A more general question: in the previous section (and also here ), the term Query Occlusion Query is described as "rendering a simplified bounding box on an object and comparing its depth results in a Z-buffer, returning the number of visible pixels." What features in OpenGL are associated with this concept of occlusal request?

  • Is this technique the standard for cutting open world occlusion?

+5
source share
1 answer
  1. The hierarchical Z-buffer is useful in situations where large nearby objects can overlap many smaller objects. An example is the visualization of the interior of a building or mountain landscape.

    When a nearby object is visualized, it sets the pixel somewhere at a lower resolution level of the Z-buffer pyramid to a value close to depth. When a smaller object is rendered, its bounding box can first be checked on this pixel and rejected entirely.

  2. Yes.

    To benefit from the hierarchical Z-buffer, we need to visualize the landscape, starting from the nearest objects. To do this, you can use techniques such as octreys or BSP.

    In addition, having an octree at hand allows you to select entire tree branches based on the distance to their bbox, rather than individual objects or triangles.

  3. The part of OpenGL that is responsible for occlusion requests: glBeginQuery , glEndQuery and glGetQueryObject . See Query Objects for details.

  4. Hierarchical Z-buffers were hardware implemented on some early Radeon . However, I have not heard about this at this time.

    Occlusion requests, on the other hand, are commonly used. They essentially provide similar benefits.

0
source

Source: https://habr.com/ru/post/1237052/


All Articles