OGRE-Next: Ogre::D3D11HardwareOcclusionQuery Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::D3D11HardwareOcclusionQuery Class Referencefinal

This is a class that is the DirectX9 implementation of hardware occlusion testing. More...

`#include <OgreD3D11HardwareOcclusionQuery.h>`

Inheritance diagram for Ogre::D3D11HardwareOcclusionQuery:
[legend]

## Public Member Functions
| D3D11HardwareOcclusionQuery (D3D11Device &device)
| Default object constructor.
| ~D3D11HardwareOcclusionQuery () override
| Object destructor.
void | beginOcclusionQuery () override
| Starts the hardware occlusion query.
void | endOcclusionQuery () override
| Ends the hardware occlusion test.
unsigned int | getLastQuerysPixelcount ()
bool | isStillOutstanding () override
| Lets you know when query is done, or still be processed by the Hardware.
bool | pullOcclusionQuery (unsigned int *NumOfFragments) override
| Pulls the hardware occlusion query.
Public Member Functions inherited from Ogre::HardwareOcclusionQuery
| HardwareOcclusionQuery ()
| Object public member functions.
virtual | ~HardwareOcclusionQuery ()
| Object destructor.
unsigned int | getLastQuerysPixelcount () const
| Let's you get the last pixel count with out doing the hardware occlusion test.

## Detailed Description

This is a class that is the DirectX9 implementation of hardware occlusion testing.

Author
  Lee Sandberg, email lee@a.nosp@m.bcme.nosp@m.dia.s.nosp@m.e

Updated on 12/7/2004 by Chris McGuirk Updated on 4/8/2005 by Tuan Kuranes email: tuan..nosp@m.kura.nosp@m.nes@f.nosp@m.ree..nosp@m.fr

## Constructor & Destructor Documentation

## ◆ D3D11HardwareOcclusionQuery()

Ogre::D3D11HardwareOcclusionQuery::D3D11HardwareOcclusionQuery | ( | D3D11Device & | device | ) |

Default object constructor.

## ◆ ~D3D11HardwareOcclusionQuery()

Ogre::D3D11HardwareOcclusionQuery::~D3D11HardwareOcclusionQuery | ( |  | ) |
| override

Object destructor.

## Member Function Documentation

## ◆ beginOcclusionQuery()

void Ogre::D3D11HardwareOcclusionQuery::beginOcclusionQuery | ( |  | ) |
| overridevirtual

Starts the hardware occlusion query.

Remarks
  Simple usage: Create one or more OcclusionQuery object one per outstanding query or one per tested object OcclusionQuery* mOcclusionQuery; createOcclusionQuery( &mOcclusionQuery ); In the rendering loop: Draw all occluders mOcclusionQuery->startOcclusionQuery(); Draw the polygons to be tested mOcclusionQuery->endOcclusionQuery();

Results must be pulled using: UINT mNumberOfPixelsVisable; pullOcclusionQuery( &mNumberOfPixelsVisable );

Implements Ogre::HardwareOcclusionQuery.

## ◆ endOcclusionQuery()

void Ogre::D3D11HardwareOcclusionQuery::endOcclusionQuery | ( |  | ) |
| overridevirtual

Ends the hardware occlusion test.

Implements Ogre::HardwareOcclusionQuery.

## ◆ getLastQuerysPixelcount()

unsigned int Ogre::D3D11HardwareOcclusionQuery::getLastQuerysPixelcount | ( |  | ) |
| inline

## ◆ isStillOutstanding()

bool Ogre::D3D11HardwareOcclusionQuery::isStillOutstanding | ( |  | ) |
| overridevirtual

Lets you know when query is done, or still be processed by the Hardware.

Returns
  true if query isn't finished.

Implements Ogre::HardwareOcclusionQuery.

## ◆ pullOcclusionQuery()

bool Ogre::D3D11HardwareOcclusionQuery::pullOcclusionQuery | ( | unsigned int * | NumOfFragments | ) |
| overridevirtual

Pulls the hardware occlusion query.

Note
  Waits until the query result is available; use isStillOutstanding if just want to test if the result is available.

Return values

  NumOfFragments | will get the resulting number of fragments.

Returns
  True if success or false if not.

Implements Ogre::HardwareOcclusionQuery.

The documentation for this class was generated from the following file:

- OgreD3D11HardwareOcclusionQuery.h