ATI SDK

ATI Product Information

Support for Alternate OS's

Hardware partners

Software partners

RenderMonkey

Drivers


 
 

Highlights


GPU MeshMapper (V1.0)

GPU PerfStudio (V1.2)

Samples: CrossFire Detect (update)

Samples: PostTonemapResolve

The Compressonator (version 1.41)

GPU Shader Analyzer (V1.4)

RenderMonkey™
(version 1.81) (New)


ATI Compress (version 1.6)

AMD Tootle 2.0 (New)

AMD OpenGL ES 2.0 Emulator (V1.1) (New)

HLSL2GLSL (V0.9)

AMD at GDC 2007

ATI SDK


 
 
ATI Developer - Source Code
 
OcclusionQuery
 

Figure 1 - Simple illustration of asynchronous visibility query

This sample application uses the new asynchronous visibility query mechanism introduced in DirectX 9 to count how many pixels of the teapot are visible in the final frame.  The four circular "blockers" are drawn first.  Prior to drawing the teapot, a visibility query is begun:

m_pTeapotVizQuery->Issue(D3DISSUE_BEGIN);

After the teapot is drawn, the query is ended and the application spins waiting for the result:

m_pTeapotVizQuery->Issue(D3DISSUE_END);

// Stupidly block until we have a query result
while (m_pTeapotVizQuery->GetData((void *) &m_dwVizData, sizeof(DWORD), D3DGETDATA_FLUSH) == S_FALSE)
{
// asynchronous aspect of GetData() so I can do something
// here while the HW is still working on my DrawPrimitives()
}

The resulting numerical pixel count returned in m_dwVizData is output to the screen.

 
OcclusionQuery Controls
  • [T] - Toggles the teapot motion
  • [SPACE] - Toggles the blocker motion
  • Up/Down arrows
  • [F2] - Prompts user to select a new rendering device or display mode
  • Alt+[ENTER] - Toggles between fullscreen and windowed modes
  • [ESC] - Quit
 
Requirements

Download
 
 


 



©2008 Advanced Micro Devices, Inc.    |    Contact AMD    |    Terms and Conditions    |    Privacy    |    Trademark information    |    Site Map