1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US"><!-- InstanceBegin template="/Templates/default_template.dwt" codeOutsideHTMLIsLocked="false" -->
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<!-- InstanceBeginEditable name="CSS の相対パス指定" -->
7<link href="../../../../common/manual.css" rel="stylesheet" type="text/css" />
8<!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="ページのタイトル" -->
9<title>Register Assignments</title>
10<!-- InstanceEndEditable -->
11</head>
12<body>
13<div>
14  <div class="body"> <!-- InstanceBeginEditable name="本文のタイトル" -->
15  <h1>Register Assignments</h1>
16  <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="本文" -->
17  <p class="warning">This page covers information for programmers who create custom shaders.</p>
18  <h2>Default Shader Settings</h2>
19  <p>The default shader settings of NW4C are given below.</p>
20  <p class="warning">This is a provisional setting and may be changed.</p>
21  <h3>Input Registers (12 registers)</h3>
22  <table>
23    <thead>
24      <tr>
25        <th>Name</th>
26        <th>Registers</th>
27        <th>Number</th>
28        <th>Description</th>
29      </tr>
30    </thead>
31    <tbody>
32      <tr>
33        <th>aPosition</th>
34        <td>--</td>
35        <td>1</td>
36        <td>Vertex position information.</td>
37      </tr>
38      <tr>
39        <th>aNormal</th>
40        <td>--</td>
41        <td>1</td>
42        <td>Normal vector information of vertex.</td>
43      </tr>
44      <tr>
45        <th>aTangent</th>
46        <td>--</td>
47        <td>1</td>
48        <td>Tangent vector information of vertex.</td>
49      </tr>
50      <tr>
51        <th>aColor</th>
52        <td>--</td>
53        <td>1</td>
54        <td>Vertex color information. (w is also used by the hemisphere light alpha.)</td>
55      </tr>
56      <tr>
57        <th>aTexCoord0</th>
58        <td>--</td>
59        <td>1</td>
60        <td>Texture coordinate information of vertex.</td>
61      </tr>
62      <tr>
63        <th>aTexCoord1</th>
64        <td>--</td>
65        <td>1</td>
66        <td>Texture coordinate information of vertex.</td>
67      </tr>
68      <tr>
69        <th>aTexCoord2</th>
70        <td>--</td>
71        <td>1</td>
72        <td>Texture coordinate information of vertex.</td>
73      </tr>
74      <tr>
75        <th>aBoneIndex</th>
76        <td>--</td>
77        <td>1</td>
78        <td>Bone index number information of vertex.</td>
79      </tr>
80      <tr>
81        <th>aBoneWeight</th>
82        <td>--</td>
83        <td>1</td>
84        <td>Vertex bone weight information.</td>
85      </tr>
86      <tr>
87        <th>Being Studied</th>
88        <td>--</td>
89        <td>--</td>
90        <td>Vertex morphing delta attribute information.</td>
91      </tr>
92    </tbody>
93  </table>
94  <h3>Constant Registers (96 registers)</h3>
95  <table>
96    <thead>
97      <tr>
98        <th>Name</th>
99        <th>Registers</th>
100        <th>Number</th>
101        <th>Description</th>
102      </tr>
103    </thead>
104    <tbody>
105      <tr>
106        <th>ProjMtx</th>
107        <td>c0</td>
108        <td>4</td>
109        <td>Projection matrix</td>
110      </tr>
111      <tr>
112        <th>ViewMtx</th>
113        <td>c4</td>
114        <td>3</td>
115        <td>View matrix.</td>
116      </tr>
117      <tr>
118        <th>NormMtx</th>
119        <td>c7</td>
120        <td>3</td>
121        <td>Normal matrix</td>
122      </tr>
123      <tr>
124        <th>PosOffs</th>
125        <td>c10</td>
126        <td>1</td>
127        <td>Position offset for input registers</td>
128      </tr>
129      <tr>
130        <th>IrScale</th>
131        <td>c11</td>
132        <td>3</td>
133        <td>Scale for input register</td>
134      </tr>
135      <tr>
136        <th>TexcMap</th>
137        <td>c14</td>
138        <td>1</td>
139        <td>Texture coordinate allocation</td>
140      </tr>
141      <tr>
142        <th>TexMtx0</th>
143        <td>c15</td>
144        <td>3</td>
145        <td>Texture coordinate matrix 0</td>
146      </tr>
147      <tr>
148        <th>TexMtx1</th>
149        <td>c18</td>
150        <td>3</td>
151        <td>Texture coordinate matrix 1</td>
152      </tr>
153      <tr>
154        <th>TexMtx2</th>
155        <td>c21</td>
156        <td>3</td>
157        <td>Texture coordinate matrix 2</td>
158      </tr>
159      <tr>
160        <th>--</th>
161        <td>c24</td>
162        <td>3</td>
163        <td>Reserved</td>
164      </tr>
165      <tr>
166        <th>MatAmbi</th>
167        <td>c27</td>
168        <td>1</td>
169        <td>Material ambient color (w = VertexColorScale)</td>
170      </tr>
171      <tr>
172        <th>MatDiff</th>
173        <td>c28</td>
174        <td>1</td>
175        <td>Material diffuse color</td>
176      </tr>
177      <tr>
178        <th>HslGCol</th>
179        <td>c29</td>
180        <td>1</td>
181        <td>Ground color for hemispherical lighting</td>
182      </tr>
183      <tr>
184        <th>HslSCol</th>
185        <td>c30</td>
186        <td>1</td>
187        <td>Space color for hemispherical lighting</td>
188      </tr>
189      <tr>
190        <th>HslSDir</th>
191        <td>c31</td>
192        <td>1</td>
193        <td>Directional vector toward space for hemispherical lighting (w = LerpFactor)</td>
194      </tr>
195      <tr>
196        <th>UnivReg</th>
197        <td>c32</td>
198        <td>60</td>
199        <td>General-purpose register (variable: first half, matrix palette; second half, light settings)</td>
200      </tr>
201      <tr>
202        <th> </th>
203        <td> </td>
204        <td>3 x ?</td>
205        <td>Position matrix</td>
206      </tr>
207      <tr>
208        <th> </th>
209        <td> </td>
210        <td>3 x ?</td>
211        <td>Normal matrix</td>
212      </tr>
213      <tr>
214        <th> </th>
215        <td> </td>
216        <td>4</td>
217        <td>Light ambient color</td>
218      </tr>
219      <tr>
220        <th> </th>
221        <td> </td>
222        <td>4</td>
223        <td>Light diffuse color</td>
224      </tr>
225      <tr>
226        <th> </th>
227        <td> </td>
228        <td>4</td>
229        <td>Light position (w = IsDirectionalLight)</td>
230      </tr>
231      <tr>
232        <th> </th>
233        <td> </td>
234        <td>4</td>
235        <td>Spotlight direction (w = IsSpotLightEnabled)</td>
236      </tr>
237      <tr>
238        <th> </th>
239        <td> </td>
240        <td>4</td>
241        <td>Light distance attenuation parameter (x = K0, y = K1, z = K2, w = IsAttenuationDistanceEnabled)</td>
242      </tr>
243      <tr>
244        <th> </th>
245        <td> </td>
246        <td>4</td>
247        <td>List spot parameter (x = SpotExponent , y = SpotCutoffAngle)</td>
248      </tr>
249      <tr>
250        <th>UserVal</th>
251        <td>c92</td>
252        <td>1</td>
253        <td>User register.</td>
254      </tr>
255      <tr>
256        <th>--</th>
257        <td>c93</td>
258        <td>3</td>
259        <td>Constant value</td>
260      </tr>
261    </tbody>
262  </table>
263  <h3>Boolean Registers (16 registers)</h3>
264  <table>
265    <thead>
266      <tr>
267        <th>Name</th>
268        <th>Registers</th>
269        <th>Number</th>
270        <th>Description</th>
271      </tr>
272    </thead>
273    <tbody>
274      <tr>
275        <th>IsSkinM</th>
276        <td>b1</td>
277        <td>1</td>
278        <td>Skinning ON/OFF</td>
279      </tr>
280      <tr>
281        <th>IsRgdSk</th>
282        <td>b2</td>
283        <td>1</td>
284        <td>Rigid skinning ON/OFF</td>
285      </tr>
286      <tr>
287        <th>IsUniSc</th>
288        <td>b3</td>
289        <td>1</td>
290        <td>Uniform scale ON/OFF</td>
291      </tr>
292      <tr>
293        <th>UseNorM</th>
294        <td>b4</td>
295        <td>1</td>
296        <td>Use normal matrix ON/OFF</td>
297      </tr>
298      <tr>
299        <th>IsHemiL</th>
300        <td>b5</td>
301        <td>1</td>
302        <td>Hemispherical light ON/OFF</td>
303      </tr>
304      <tr>
305        <th>IsHemiO</th>
306        <td>b6</td>
307        <td>1</td>
308        <td>Hemispherical light occlusion ON/OFF</td>
309      </tr>
310      <tr>
311        <th>IsVertA</th>
312        <td>b7</td>
313        <td>1</td>
314        <td>Vertex color alpha ON/OFF</td>
315      </tr>
316      <tr>
317        <th>IsBoneW</th>
318        <td>b8</td>
319        <td>1</td>
320        <td>Bone weight ON/OFF</td>
321      </tr>
322      <tr>
323        <th>TexPos0</th>
324        <td>b9</td>
325        <td>1</td>
326        <td>Texture coordinate 0 ON/OFF</td>
327      </tr>
328      <tr>
329        <th>TexPos1</th>
330        <td>b10</td>
331        <td>1</td>
332        <td>Texture coordinate 1 ON/OFF</td>
333      </tr>
334      <tr>
335        <th>TexPos2</th>
336        <td>b11</td>
337        <td>1</td>
338        <td>Texture coordinate 2 ON/OFF</td>
339      </tr>
340      <tr>
341        <th>IsVertL</th>
342        <td>b12</td>
343        <td>1</td>
344        <td>Vertex light ON/OFF</td>
345      </tr>
346    </tbody>
347  </table>
348  <h3>Integer Registers (4 registers)</h3>
349  <table>
350    <thead>
351      <tr>
352        <th>Name</th>
353        <th>Registers</th>
354        <th>Number</th>
355        <th>Description</th>
356      </tr>
357    </thead>
358    <tbody>
359      <tr>
360        <th>LightCt</th>
361        <td>i0</td>
362        <td>1</td>
363        <td>Number of vertex lights (loop counter)</td>
364      </tr>
365      <tr>
366        <th> </th>
367        <td>i1</td>
368        <td>1</td>
369        <td> </td>
370      </tr>
371      <tr>
372        <th> </th>
373        <td>i2</td>
374        <td>1</td>
375        <td> </td>
376      </tr>
377      <tr>
378        <th> </th>
379        <td>i3</td>
380        <td>1</td>
381        <td> </td>
382      </tr>
383    </tbody>
384  </table>
385  <!-- InstanceEndEditable --> </div>
386  <div class="footer" />
387</div>
388<hr><p>CONFIDENTIAL</p></body>
389<!-- InstanceEnd --></html>
390