Query how many pixels have passed the per-fragment tests.
More...
#include <OgreHardwareOcclusionQuery.h>
Query how many pixels have passed the per-fragment tests.
Create one OcclusionQuery per outstanding query or one per tested object
Then, in the rendering loop:
- Draw all occluders
- begin()
- Draw the polygons to be tested
- end()
Results must be pulled using waitForResult()
◆ HardwareOcclusionQuery()
Ogre::HardwareOcclusionQuery::HardwareOcclusionQuery |
( |
| ) |
|
◆ ~HardwareOcclusionQuery()
virtual Ogre::HardwareOcclusionQuery::~HardwareOcclusionQuery |
( |
| ) |
|
|
virtual |
◆ begin()
void Ogre::HardwareOcclusionQuery::begin |
( |
| ) |
|
|
inline |
Starts the hardware occlusion query.
◆ beginOcclusionQuery()
virtual void Ogre::HardwareOcclusionQuery::beginOcclusionQuery |
( |
| ) |
|
|
pure virtual |
◆ end()
void Ogre::HardwareOcclusionQuery::end |
( |
| ) |
|
|
inline |
Ends the hardware occlusion test.
◆ endOcclusionQuery()
virtual void Ogre::HardwareOcclusionQuery::endOcclusionQuery |
( |
| ) |
|
|
pure virtual |
◆ waitForResult()
bool Ogre::HardwareOcclusionQuery::waitForResult |
( |
unsigned int * |
result | ) |
|
|
inline |
Waits until the query result is available.
use resultReady() if just want to test if the result is available.
- Return values
-
result | will get the resulting number of fragments. |
- Returns
- True if success or false if not.
◆ pullOcclusionQuery()
virtual bool Ogre::HardwareOcclusionQuery::pullOcclusionQuery |
( |
unsigned int * |
result | ) |
|
|
pure virtual |
◆ getLastResult()
uint32 Ogre::HardwareOcclusionQuery::getLastResult |
( |
| ) |
const |
|
inline |
Let's you get the last pixel count with out doing the hardware occlusion test.
This function won't give you new values, just the old value.
- Returns
- The last fragment count from the last test.
◆ getLastQuerysPixelcount()
uint32 Ogre::HardwareOcclusionQuery::getLastQuerysPixelcount |
( |
| ) |
const |
|
inline |
◆ resultReady()
bool Ogre::HardwareOcclusionQuery::resultReady |
( |
| ) |
|
|
inline |
Lets you know when query is done, or still be processed by the Hardware.
- Returns
- true if query is finished.
◆ isStillOutstanding()
virtual bool Ogre::HardwareOcclusionQuery::isStillOutstanding |
( |
void |
| ) |
|
|
pure virtual |
The documentation for this class was generated from the following file: