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