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>tev-outline</title>
10</head>
11
12<body>
13
14<h1 align="left">tev-outline</h1>
15
16<h2>Description</h2>
17<P>This example demo tests the cartoon outline functionality of the Wii. Outlines are drawn by a two-pass rendering algorithm. In the first pass, the object ID number is written into the alpha plane. The alpha plane is then copied and used as a texture. The second pass determines which part should be outlined from that texture information. The alpha comparison feature assists in this processing. (For details, see <A href="#Algorithm Details">Algorithm Details</A>.)</P>
18
19<h2>Coverage</h2>
20<p>This list doesn't contain settings for drawing other than outlines.</p>
21<TABLE border="1" cellpadding="3" cellspacing="0.1" width="640">
22  <tr>
23<TD width="30%" bgcolor="#C0C0C0"><EM><STRONG>Functions</STRONG></EM></TD>
24<TD width="25%" bgcolor="#C0C0C0"><EM><STRONG>Parameters</STRONG></EM></TD>
25<TD width="45%" bgcolor="#C0C0C0"><EM><STRONG>Description</STRONG></EM></TD>
26    </tr>
27  <tr>
28<TD width="30%"><a href="../../../gx/Framebuffer/GXSetTexCopySrc.html"><code>GXSetTexCopySrc</code></a></TD>
29<TD width="25%"><SPAN class="argument">Left, top, width, height</SPAN></TD>
30<TD width="45%">0, 0, <CODE>SCREEN_WD</CODE>, <CODE>SCREEN_HT</CODE></TD>
31    </tr>
32  <tr>
33<TD width="30%" rowspan="4"><a href="../../../gx/Framebuffer/GXSetTexCopyDst.html"><code>GXSetTexCopyDst</code></a></TD>
34<TD width="25%"><SPAN class="argument">Width</SPAN></TD>
35<TD width="45%">Constant (<CODE>SCREEN_WD</CODE>)</TD>
36    </tr>
37  <tr>
38<TD width="25%"><SPAN class="argument">height</SPAN></TD>
39<TD width="45%">Constant (<CODE>SCREEN_HT</CODE>)</TD>
40    </tr>
41  <tr>
42<TD width="25%"><SPAN class="argument">Texture Format</SPAN></TD>
43<TD width="45%"><CODE>GX_TF_A8</CODE></TD>
44    </tr>
45  <tr>
46<TD width="25%"><SPAN class="argument">Mipmap filter</SPAN></TD>
47<TD width="45%"><CODE>GX_DISABLE</CODE></TD>
48    </tr>
49
50  <tr>
51<TD width="30%" rowspan="2"><a href="../../../gx/Framebuffer/GXCopyTex.html"><code>GXCopyTex</code></a></TD>
52<TD width="25%"><SPAN class="argument">Copy buffer</SPAN></TD>
53<TD width="45%">Appropriate buffer</TD>
54    </tr>
55  <tr>
56<TD width="25%"><SPAN class="argument">Clear copy</SPAN></TD>
57<TD width="45%"><CODE>GX_DISABLE</CODE></TD>
58    </tr>
59  <tr>
60<TD width="30%" rowspan="7"><code><a href="../../../gx/Texture/GXInitTexObj.html">GXInitTexObj</a></code></TD>
61<TD width="25%"><SPAN class="argument">Texture object pointer</SPAN></TD>
62<TD width="45%">For output</TD>
63    </tr>
64  <tr>
65<TD width="25%"><SPAN class="argument">Pointer to bitmap</SPAN></TD>
66<TD width="45%">Gets data through <CODE>GXCopyTex</CODE></TD>
67    </tr>
68  <tr>
69<TD width="25%"><SPAN class="argument">Width</SPAN></TD>
70<TD width="45%"><CODE>SCREEN_WD</CODE></TD>
71    </tr>
72  <tr>
73<TD width="25%"><SPAN class="argument">height</SPAN></TD>
74<TD width="45%"><CODE>SCREEN_HT</CODE></TD>
75    </tr>
76  <tr>
77<TD width="25%"><SPAN class="argument">Texture format</TD>
78<TD width="45%"><CODE>GX_TF_I8</CODE></TD>
79    </tr>
80  <tr>
81<TD width="25%"><SPAN class="argument">Clamp_s, clamp_t</SPAN></TD>
82<TD width="45%"><CODE>GX_CLAMP</CODE>, <CODE>GX_CLAMP</CODE></TD>
83    </tr>
84  <tr>
85<TD width="25%"><SPAN class="argument">Mipmap enable</SPAN></TD>
86<TD width="45%"><CODE>GX_DISABLE</CODE></TD>
87    </tr>
88  <tr>
89<TD width="30%" rowspan="6"><code><a href="../../../gx/Texture/GXInitTexObjLOD.html"><CODE>GXInitTexObjLOD</CODE></a></code></TD>
90<TD width="25%"><SPAN class="argument">Texture object pointer</SPAN></TD>
91<TD width="45%">Same as <CODE>GXInitTexObj</CODE></TD>
92    </tr>
93  <tr>
94<TD width="25%"><SPAN class="argument">min_filter</SPAN></TD>
95<TD width="45%"><CODE>GX_NEAR</CODE></TD>
96    </tr>
97  <tr>
98<TD width="25%"><SPAN class="argument">max_filter</SPAN></TD>
99<TD width="45%"><CODE>GX_NEAR</CODE></TD>
100    </tr>
101  <tr>
102<TD width="25%"><SPAN class="argument">min_lod, max_lod, lod_bias</SPAN></TD>
103<TD width="45%">0.0f, 0.0f, 0.0f&nbsp;&nbsp; (don't care)</TD>
104    </tr>
105  <tr>
106<TD width="25%"><SPAN class="argument">bias_clamp, do_edge_lod</SPAN></TD>
107<TD width="45%"><CODE>GX_DISABLE</CODE>, <CODE>GX_DISABLE</CODE> ( don't care )</TD>
108    </tr>
109  <tr>
110<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>max_aniso</CODE></EM></STRONG></SPAN></TD>
111<TD width="45%"><CODE>GX_ANISO_1</CODE> ( don't care )</TD>
112    </tr>
113  <tr>
114<TD width="30%"><a href="../../../gx/TexCoordGen/GXSetNumTexGens.html"><code>GXSetNumTexGens</code></a></TD>
115<TD width="25%"><SPAN class="argument">Number of texture coordinates to generate</SPAN></TD>
116      <TD width="45%">2</TD>
117    </tr>
118  <tr>
119<TD width="30%" rowspan="4"><code><a href="../../../gx/TexCoordGen/GXSetTexCoordGen.html">GXSetTexCoordGen</a></code></TD>
120<TD width="25%"><SPAN class="argument">Name of the texture coordinate to be generated</SPAN></TD>
121<TD width="45%"><CODE>GX_TEXCOORD0</CODE> / <CODE>GX_TEXCOORD1</CODE></TD>
122    </tr>
123  <tr>
124<TD width="25%"><SPAN class="argument">Function type</SPAN></TD>
125<TD width="45%"><CODE>GX_TG_MTX2x4</CODE></TD>
126    </tr>
127  <tr>
128<TD width="25%"><SPAN class="argument">Source attribute</SPAN></TD>
129<TD width="45%"><CODE>GX_TG_TEX0</CODE></TD>
130    </tr>
131  <tr>
132<TD width="25%"><SPAN class="argument">Texture matrix select</SPAN></TD>
133<TD width="45%">Appropriate value.</TD>
134    </tr>
135  <tr>
136<TD width="30%"><code><a href="../../../gx/Tev/GXSetTevColorIn.html"><CODE>GXSetTevColorIn</CODE></a></code></TD>
137<TD width="25%"><SPAN class="argument">Each argument</SPAN></TD>
138<TD width="45%"><A href="#Algorithm Details">See Algorithm Details</A>.</TD>
139    </tr>
140  <tr>
141<TD width="30%"><code><a href="../../../gx/Tev/GXSetTevColorOp.html"><CODE>GXSetTevColorOp</CODE></a></code></TD>
142<TD width="25%"><SPAN class="argument">Each argument</SPAN></TD>
143<TD width="45%"><A href="#Algorithm Details">See Algorithm Details</A>.</TD>
144    </tr>
145  <tr>
146<TD width="30%"><code><a href="../../../gx/Tev/GXSetTevAlphaIn.html"><CODE>GXSetTevAlphaIn</CODE></a></code></TD>
147<TD width="25%"><SPAN class="argument">Each argument</SPAN></TD>
148<TD width="45%"><A href="#Algorithm Details">See Algorithm Details</A>.</TD>
149    </tr>
150  <tr>
151<TD width="30%"><code><a href="../../../gx/Tev/GXSetTevAlphaOp.html"><CODE>GXSetTevAlphaOp</CODE></a></code></TD>
152<TD width="25%"><SPAN class="argument">Each argument</SPAN></TD>
153<TD width="45%"><A href="#Algorithm Details">See Algorithm Details</A>.</TD>
154    </tr>
155  <tr>
156<TD width="30%" rowspan="5"><code><a href="../../../gx/Tev/GXSetAlphaCompare.html"><CODE>GXSetAlphaCompare</CODE></a></code></TD>
157<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>comp0</CODE></EM></STRONG></SPAN></TD>
158<TD width="45%"><CODE>GX_GREATER</CODE></TD>
159    </tr>
160  <tr>
161<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>ref0</CODE></EM></STRONG></SPAN></TD>
162<TD width="45%">Appropriate tolerance value</TD>
163    </tr>
164  <tr>
165<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>op</CODE></EM></STRONG></SPAN></TD>
166<TD width="45%"><CODE>GX_AOP_AND</CODE></TD>
167    </tr>
168  <tr>
169<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>comp1</CODE></EM></STRONG></SPAN></TD>
170<TD width="45%"><CODE>GX_LESS</CODE></TD>
171    </tr>
172  <tr>
173<TD width="25%"><SPAN class="argument"><STRONG><EM><CODE>ref1</CODE></EM></STRONG></SPAN></TD>
174<TD width="45%">Appropriate tolerance value</TD>
175    </tr>
176</TABLE>
177
178<h2>Using the Demo</h2>
179<P>The Control Stick rotates the object. The C Stick controls the zoom parameter of the camera. The L and R Buttons stretch and bend the object.<BR>START exits the demo.</P>
180
181<h2>Snapshot</h2>
182<P><IMG src="./images/tev-outline-1.jpg" alt="tev-outline-1.jpg" WIDTH="642" HEIGHT="482"></p>
183
184<h2>Required Data Files</h2>
185<p>None.</p>
186
187<H2><a name="Algorithm Details">Algorithm Details</a></H2>
188<P>(Under Construction)</P>
189
190<H2>Revision History</H2>
191<P>
1922006/03/01 Initial version.<br>
193</P>
194
195<hr><p>CONFIDENTIAL</p></body>
196</html>