1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" /> 7 <style type="text/css"><!-- 8 span.static_style 9 { 10 font-size : 8pt; 11 color : white; 12 font-weight : bold; 13 background : #44f; 14 border-left : solid 1px #aaf; 15 border-top : solid 1px #aaf; 16 border-right : solid 1px #00c; 17 border-bottom : solid 1px #00c; 18 padding-left : 2px; 19 padding-right : 2px; 20 } 21 22 span.virtual_style 23 { 24 font-size : 8pt; 25 color : white; 26 font-weight : bold; 27 background : #0a0; 28 border-left : solid 1px #0f0; 29 border-top : solid 1px #0f0; 30 border-right : solid 1px #060; 31 border-bottom : solid 1px #060; 32 padding-left : 2px; 33 padding-right : 2px; 34 } 35 36 span.protected_style 37 { 38 font-size : 8pt; 39 color : white; 40 font-weight : bold; 41 background : #444; 42 border-left : solid 1px #ccc; 43 border-top : solid 1px #ccc; 44 border-right : solid 1px #222; 45 border-bottom : solid 1px #222; 46 padding-left : 2px; 47 padding-right : 2px; 48 } 49 --></style> 50 <title>nw::lyt::Drawer</title> 51 </head> 52 <body> 53 <h1>nw::lyt::Drawer Class</h1> 54 <h2>Syntax</h2> 55 <div class="section"> 56 <pre class="definition">class Drawer : public <a href="../../../nw/font/RectDrawer/Overview.html">nw::font::RectDrawer</a></pre> 57 </div> 58 <h2>Description</h2> 59 <div class="section"> 60 <p>High-speed drawing class.</p><p>This class draws layouts at high-speed.</p><p>Use this class in place of <a href="../../../nw/lyt/Layout/Draw.html">Layout::Draw()</a>.</p><p> nwlyt::Drawer drawer(graphicsResource);<br /> <br /> pLayout->Animate();<br /> pLayout->CalculateMtx(drawInfo);<br /> <br /> // GL setting made by the user.<br /> InitGX();<br /> <br /> drawer.DrawBegin(drawInfo);<br /> drawer.Draw(pLayout, drawInfo);<br /> drawer.DrawEnd(drawInfo);<br /> <br /> // Restores the coherency of the DMPGL state.<br /> nngxUpdateState(NN_GX_STATE_ALL);</p><p>The GL settings below are left up to the user (are not set by the lyt library).</p><p>・Culling<br /> ・Scissoring<br /> ・Stencil test<br /> ・Masking<br /> ・Polygon offset<br /> ・Depth test<br /> ・Early depth test<br /> ・Frame buffer object</p><p>For details on how to make these settings, check the simple demo source code. (The setting method is complicated because <a href="../../../nw/lyt/Drawer/Overview.html">Drawer</a> does not use standard GL functions.)</p><p>When the drawing function <a href="../../../nw/lyt/Drawer/Overview.html">Drawer</a> is executed, integrity of the DMPGL state is lost.</p><p>After using <CODE>Drawer</CODE>, be sure to call the <CODE>nngxUpdateState</CODE> function before using GL functions.</p></div> 61 <a name="function" id="function"> 62 <h2>Member Functions</h2> 63 <div class="section"> 64 <table class="members"> 65 <tr> 66 <th class="category" colspan="3">Constructors and Destructors</th> 67 </tr> 68 <tr> 69 <td width="100"> </td> 70 <th> 71 <a href="../../../nw/lyt/Drawer/Drawer.html">Drawer</a> 72 </th> 73 <td>Constructor.</td> 74 </tr> 75 <tr> 76 <th class="category" colspan="3">Initialization / Post-processing</th> 77 </tr> 78 <tr> 79 <td width="100"> </td> 80 <th> 81 <a href="../../../nw/lyt/Drawer/Initialize.html"><CODE>Initialize</CODE></a> 82 </th> 83 <td>Performs initialization.</td> 84 </tr> 85 <tr> 86 <td width="100"> <span class="virtual_style" title="virtual">V</span> 87 </td> 88 <th> 89 <a href="../../../nw/lyt/Drawer/Finalize.html"><CODE>Finalize</CODE></a> 90 </th> 91 <td>Releases, or finalizes.</td> 92 </tr> 93 <tr> 94 <th class="category" colspan="3">Rendering</th> 95 </tr> 96 <tr> 97 <td width="100"> </td> 98 <th> 99 <a href="../../../nw/lyt/Drawer/DrawBegin.html">DrawBegin</a> 100 </th> 101 <td>Starts drawing.</td> 102 </tr> 103 <tr> 104 <td width="100"> </td> 105 <th> 106 <a href="../../../nw/lyt/Drawer/Draw.html">Draw</a> 107 </th> 108 <td>Draws the layout.</td> 109 </tr> 110 <tr> 111 <td width="100"> </td> 112 <th> 113 <a href="../../../nw/lyt/Drawer/DrawEnd.html">DrawEnd</a> 114 </th> 115 <td>Ends drawing.</td> 116 </tr> 117 <tr> 118 <th class="category" colspan="3">Other</th> 119 </tr> 120 <tr> 121 <td width="100"> </td> 122 <th> 123 <a href="../../../nw/lyt/Drawer/FlushBuffer.html">FlushBuffer</a> 124 </th> 125 <td>Writes out the buffer contents.</td> 126 </tr> 127 <tr> 128 <td width="100"> </td> 129 <th> 130 <a href="../../../nw/font/RectDrawer/SetProjectionMtx.html">SetProjectionMtx</a> 131 </th> 132 <td>Sets the projection matrix.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 133 </tr> 134 <tr> 135 <td width="100"> </td> 136 <th> 137 <a href="../../../nw/font/RectDrawer/SetViewMtxForText.html">SetViewMtxForText</a> 138 </th> 139 <td>Sets the view matrix for the text.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 140 </tr> 141 <tr> 142 <td width="100"> </td> 143 <th> 144 <a href="../../../nw/font/RectDrawer/SetParallax.html">SetParallax</a> 145 </th> 146 <td>Sets the parallax parameters.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 147 </tr> 148 <tr> 149 <td width="100"> </td> 150 <th> 151 <a href="../../../nw/font/RectDrawer/BuildTextCommand.html">BuildTextCommand</a> 152 </th> 153 <td>Creates drawing commands the text.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 154 </tr> 155 <tr> 156 <td width="100"> 157 <span class="static_style" title="static">S</span> </td> 158 <th> 159 <a href="../../../nw/font/RectDrawer/GetVertexBufferCommandBufferSize.html">GetVertexBufferCommandBufferSize</a> 160 </th> 161 <td>Gets the size of the vertex buffer or command buffer required by RectDrawer.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 162 </tr> 163 <tr> 164 <td width="100"> 165 <span class="static_style" title="static">S</span> </td> 166 <th> 167 <a href="../../../nw/font/RectDrawer/GetVertexBufferData.html">GetVertexBufferData</a> 168 </th> 169 <td>Gets data in the vertex buffer for use by RectDrawer.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 170 </tr> 171 <tr> 172 <td width="100"> 173 <span class="static_style" title="static">S</span> </td> 174 <th> 175 <a href="../../../nw/font/RectDrawer/GetVertexBufferSize.html">GetVertexBufferSize</a> 176 </th> 177 <td>Gets the size of the vertex buffer required by RectDrawer.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 178 </tr> 179 <tr> 180 <td width="100"> 181 <span class="static_style" title="static">S</span> </td> 182 <th> 183 <a href="../../../nw/font/RectDrawer/GetCommandBufferSize.html">GetCommandBufferSize</a> 184 </th> 185 <td>Gets the size of the stream buffer required by RectDrawer.(Inherited from <a href="../../../nw/gfx/CameraProjectionUpdater/Overview.html"><CODE>RectDrawer</CODE></a>.</td> 186 </tr> </table> 187 </div> 188 </a> 189 <h2>Class Hierarchy</h2> 190 <div class="section"> 191 <p class="hierarchy"><a href="../../../nw/font/RectDrawer/Overview.html">nw::font::RectDrawer</a><br /> <b>nw::lyt::Drawer</b> 192 </p> 193 </div> 194 <h2>Revision History</h2> 195 <div class="section"> 196 <dl class="history"> 197 <dt>2010/09/24</dt> 198 <dd>Eliminated the need to call nngxUpdateState() after Drawer initialization.<br /> 199 </dd> 200 <dt>2010/05/14</dt> 201 <dd>Initial version. Replaced the <CODE>DrawManager</CODE> function.<br /> 202 </dd> 203 </dl> 204 </div> 205 <hr><p>CONFIDENTIAL</p></body> 206</html>