1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 6<META name="GENERATOR" content="Microsoft FrontPage 5.0"> 7<META http-equiv="Content-Style-Type" content="text/css"> 8<LINK rel="stylesheet" type="text/css" href="../../../CSS/revolution.css"> 9<title>mgt-triple-buf</title> 10</head> 11 12<body> 13 14<h1 align="left">mgt-triple-buf</h1> 15 16 17 18<h2>Description</h2> 19 20<P>This program demonstrates triple-buffered rendering. Only two external frame buffers (XFBs) are used. Triple-buffering allows for maximum use of the graphics pipeline, because the CPU can work on the next frame while the GP is rendering the current frame. However, this allows maximum latency to increase. Triple-buffering results in more complex data management. The CPU cannot alter data for the next frame while the GP is still reading it for the current frame. A clean-up thread can be used to deallocate any data that was kept for the GP to read.</P> 21<h2>Coverage</h2> 22<TABLE border="1" cellpadding="3" cellspacing="0.1" width="640"> 23 <tr> 24<TD width="30%" bgcolor="#C0C0C0"><em><strong>Functions</strong></em></TD> 25<TD width="25%" bgcolor="#C0C0C0"><em><strong>Parameters</strong></em></TD> 26<TD width="45%" bgcolor="#C0C0C0"><em><strong>Description</strong></em></TD> 27 </tr> 28 <tr> 29<TD width="30%"><a href="../../../vi/VISetPostRetraceCallback.html"><code>VISetPostRetraceCallback</code></a></TD> 30<TD width="25%"><em><strong><font face="Courier New">cb</font></strong></em></TD> 31<TD width="45%">Pointer to the callback function.</TD> 32 </tr> 33 <tr> 34<TD width="30%"><a href="../../../vi/VISetPreRetraceCallback.html"><code>VISetPreRetraceCallback</code></a></TD> 35<TD width="25%"><em><strong><font face="Courier New">cb</font></strong></em></TD> 36<TD width="45%">Pointer to the callback function.</TD> 37 </tr> 38 <tr> 39<TD width="30%"><code><a href="../../../gx/GfxFIFO/GXEnableBreakPt.html">GXEnableBreakPt</a></code></TD> 40<TD width="25%"><em><strong><font face="Courier New">address</font></strong></em></TD> 41<TD width="45%">Breakpoint address.</TD> 42 </tr> 43 <tr> 44<TD width="30%"><code><a href="../../../gx/GfxFIFO/GXDisableBreakPt.html">GXDisableBreakPt</a></code></TD> 45<TD width="25%">None.</TD> 46 <TD width="45%"></TD> 47 </tr> 48 <tr> 49<TD width="30%"><code><a href="../../../gx/GfxFIFO/GXSetBreakPtCallback.html">GXSetBreakPtCallback</a></code></TD> 50<TD width="25%"><em><strong><font face="Courier New">cb</font></strong></em></TD> 51<TD width="45%">Pointer to the callback function.</TD> 52 </tr> 53 <tr> 54<TD width="30%"><code><a href="../../../gx/Management/GXSetDrawSync.html">GXSetDrawSync</a></code></TD> 55<TD width="25%"><em><strong><font face="Courier New">token</font></strong></em></TD> 56<TD width="45%">Value of drawsync token.</TD> 57 </tr> 58 <tr> 59<TD width="30%"><code><a href="../../../gx/Management/GXReadDrawSync.html">GXReadDrawSync</a></code></TD> 60<TD width="25%">None.</TD> 61 <TD width="45%"></TD> 62 </tr> 63 <tr> 64<TD width="30%"><code><a href="../../../gx/GfxFIFO/GXGetFifoPtrs.html">GXGetFifoPtrs</a></code></TD> 65<TD width="25%">Various.</TD> 66<TD width="45%">Appropriate value.</TD> 67 </tr> 68</TABLE> 69<h2>Operation Method</h2> 70 71<p>X Button: Press to stop animation.<br>PAUSE: Press to quit.</p> 72 73<h2>Required Data Files</h2> 74 75<p>None.</p> 76<H2>Revision History</H2> 77<P>2006/03/01 Initial version.</P> 78<hr> 79<P>CONFIDENTIAL</p> 80</BODY> 81</HTML>