1 /*---------------------------------------------------------------------------*
2   Project:  NinitendoWare
3   File:     gfx_ShaderUniforms.h
4 
5   Copyright (C)2009-2010 Nintendo Co., Ltd./HAL Laboratory, Inc.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   - Auto generated code -
14  *---------------------------------------------------------------------------*/
15 
16 #ifndef NW_GFX_SHADERUNIFORMS_H_
17 #define NW_GFX_SHADERUNIFORMS_H_
18 
19 #include <nw/types.h>
20 #include <nw/gfx/gfx_GfxObject.h>
21 #include <nw/ut/ut_MoveArray.h>
22 
23 #include <GLES2/gl2.h>
24 #include <GLES2/gl2ext.h>
25 
26 namespace nw
27 {
28 namespace gfx
29 {
30 
31 #if defined(NW_GFX_PROGRAM_OBJECT_ENABLED)
32 
33 //---------------------------------------------------------------------------
34 //! @brief        シェーダーの定数レジスタの種類です。
35 //---------------------------------------------------------------------------
36 enum ShaderUniform
37 {
38     SHADER_UNIFORM_PROJMTX, //!< シェーダ定数レジスタ "ProjMtx" の定義です。
39     SHADER_UNIFORM_VIEWMTX, //!< シェーダ定数レジスタ "ViewMtx" の定義です。
40     SHADER_UNIFORM_WRLDMTX, //!< シェーダ定数レジスタ "WrldMtx" の定義です。
41     SHADER_UNIFORM_NORMMTX, //!< シェーダ定数レジスタ "NormMtx" の定義です。
42     SHADER_UNIFORM_POSOFFS, //!< シェーダ定数レジスタ "PosOffs" の定義です。
43     SHADER_UNIFORM_IRSCALE, //!< シェーダ定数レジスタ "IrScale" の定義です。
44     SHADER_UNIFORM_TEXCMAP, //!< シェーダ定数レジスタ "TexcMap" の定義です。
45     SHADER_UNIFORM_TEXMTX0, //!< シェーダ定数レジスタ "TexMtx0" の定義です。
46     SHADER_UNIFORM_TEXMTX1, //!< シェーダ定数レジスタ "TexMtx1" の定義です。
47     SHADER_UNIFORM_TEXMTX2, //!< シェーダ定数レジスタ "TexMtx2" の定義です。
48     SHADER_UNIFORM_TEXTRAN, //!< シェーダ定数レジスタ "TexTran" の定義です。
49     SHADER_UNIFORM_MATAMBI, //!< シェーダ定数レジスタ "MatAmbi" の定義です。
50     SHADER_UNIFORM_MATDIFF, //!< シェーダ定数レジスタ "MatDiff" の定義です。
51     SHADER_UNIFORM_HSLGCOL, //!< シェーダ定数レジスタ "HslGCol" の定義です。
52     SHADER_UNIFORM_HSLSCOL, //!< シェーダ定数レジスタ "HslSCol" の定義です。
53     SHADER_UNIFORM_HSLSDIR, //!< シェーダ定数レジスタ "HslSDir" の定義です。
54     SHADER_UNIFORM_UNIVREG, //!< シェーダ定数レジスタ "UnivReg" の定義です。
55     SHADER_UNIFORM_ISSMOSK, //!< シェーダ定数レジスタ "IsSmoSk" の定義です。
56     SHADER_UNIFORM_ISRGDSK, //!< シェーダ定数レジスタ "IsRgdSk" の定義です。
57     SHADER_UNIFORM_ISHEMIL, //!< シェーダ定数レジスタ "IsHemiL" の定義です。
58     SHADER_UNIFORM_ISHEMIO, //!< シェーダ定数レジスタ "IsHemiO" の定義です。
59     SHADER_UNIFORM_ISVERTA, //!< シェーダ定数レジスタ "IsVertA" の定義です。
60     SHADER_UNIFORM_ISBONEW, //!< シェーダ定数レジスタ "IsBoneW" の定義です。
61     SHADER_UNIFORM_UVMAP0, //!< シェーダ定数レジスタ "UvMap0" の定義です。
62     SHADER_UNIFORM_UVMAP1, //!< シェーダ定数レジスタ "UvMap1" の定義です。
63     SHADER_UNIFORM_UVMAP2, //!< シェーダ定数レジスタ "UvMap2" の定義です。
64     SHADER_UNIFORM_ISVERTL, //!< シェーダ定数レジスタ "IsVertL" の定義です。
65     SHADER_UNIFORM_ISTEX1, //!< シェーダ定数レジスタ "IsTex1" の定義です。
66     SHADER_UNIFORM_ISTEX2, //!< シェーダ定数レジスタ "IsTex2" の定義です。
67     SHADER_UNIFORM_ISQUATE, //!< シェーダ定数レジスタ "IsQuate" の定義です。
68     SHADER_UNIFORM_LIGHTCT, //!< シェーダ定数レジスタ "LightCt" の定義です。
69     SHADER_UNIFORM_DMP_TEXENV0_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[0].combineRgb" の定義です。
70     SHADER_UNIFORM_DMP_TEXENV1_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[1].combineRgb" の定義です。
71     SHADER_UNIFORM_DMP_TEXENV2_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[2].combineRgb" の定義です。
72     SHADER_UNIFORM_DMP_TEXENV3_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[3].combineRgb" の定義です。
73     SHADER_UNIFORM_DMP_TEXENV4_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[4].combineRgb" の定義です。
74     SHADER_UNIFORM_DMP_TEXENV5_COMBINERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[5].combineRgb" の定義です。
75     SHADER_UNIFORM_DMP_TEXENV0_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[0].combineAlpha" の定義です。
76     SHADER_UNIFORM_DMP_TEXENV1_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[1].combineAlpha" の定義です。
77     SHADER_UNIFORM_DMP_TEXENV2_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[2].combineAlpha" の定義です。
78     SHADER_UNIFORM_DMP_TEXENV3_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[3].combineAlpha" の定義です。
79     SHADER_UNIFORM_DMP_TEXENV4_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[4].combineAlpha" の定義です。
80     SHADER_UNIFORM_DMP_TEXENV5_COMBINEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[5].combineAlpha" の定義です。
81     SHADER_UNIFORM_DMP_TEXENV0_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[0].srcRgb" の定義です。
82     SHADER_UNIFORM_DMP_TEXENV1_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[1].srcRgb" の定義です。
83     SHADER_UNIFORM_DMP_TEXENV2_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[2].srcRgb" の定義です。
84     SHADER_UNIFORM_DMP_TEXENV3_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[3].srcRgb" の定義です。
85     SHADER_UNIFORM_DMP_TEXENV4_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[4].srcRgb" の定義です。
86     SHADER_UNIFORM_DMP_TEXENV5_SRCRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[5].srcRgb" の定義です。
87     SHADER_UNIFORM_DMP_TEXENV0_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[0].srcAlpha" の定義です。
88     SHADER_UNIFORM_DMP_TEXENV1_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[1].srcAlpha" の定義です。
89     SHADER_UNIFORM_DMP_TEXENV2_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[2].srcAlpha" の定義です。
90     SHADER_UNIFORM_DMP_TEXENV3_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[3].srcAlpha" の定義です。
91     SHADER_UNIFORM_DMP_TEXENV4_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[4].srcAlpha" の定義です。
92     SHADER_UNIFORM_DMP_TEXENV5_SRCALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[5].srcAlpha" の定義です。
93     SHADER_UNIFORM_DMP_TEXENV0_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[0].operandRgb" の定義です。
94     SHADER_UNIFORM_DMP_TEXENV1_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[1].operandRgb" の定義です。
95     SHADER_UNIFORM_DMP_TEXENV2_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[2].operandRgb" の定義です。
96     SHADER_UNIFORM_DMP_TEXENV3_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[3].operandRgb" の定義です。
97     SHADER_UNIFORM_DMP_TEXENV4_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[4].operandRgb" の定義です。
98     SHADER_UNIFORM_DMP_TEXENV5_OPERANDRGB, //!< シェーダ定数レジスタ "dmp_TexEnv[5].operandRgb" の定義です。
99     SHADER_UNIFORM_DMP_TEXENV0_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[0].operandAlpha" の定義です。
100     SHADER_UNIFORM_DMP_TEXENV1_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[1].operandAlpha" の定義です。
101     SHADER_UNIFORM_DMP_TEXENV2_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[2].operandAlpha" の定義です。
102     SHADER_UNIFORM_DMP_TEXENV3_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[3].operandAlpha" の定義です。
103     SHADER_UNIFORM_DMP_TEXENV4_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[4].operandAlpha" の定義です。
104     SHADER_UNIFORM_DMP_TEXENV5_OPERANDALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[5].operandAlpha" の定義です。
105     SHADER_UNIFORM_DMP_TEXENV1_BUFFERINPUT, //!< シェーダ定数レジスタ "dmp_TexEnv[1].bufferInput" の定義です。
106     SHADER_UNIFORM_DMP_TEXENV2_BUFFERINPUT, //!< シェーダ定数レジスタ "dmp_TexEnv[2].bufferInput" の定義です。
107     SHADER_UNIFORM_DMP_TEXENV3_BUFFERINPUT, //!< シェーダ定数レジスタ "dmp_TexEnv[3].bufferInput" の定義です。
108     SHADER_UNIFORM_DMP_TEXENV4_BUFFERINPUT, //!< シェーダ定数レジスタ "dmp_TexEnv[4].bufferInput" の定義です。
109     SHADER_UNIFORM_DMP_TEXENV0_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[0].scaleRgb" の定義です。
110     SHADER_UNIFORM_DMP_TEXENV1_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[1].scaleRgb" の定義です。
111     SHADER_UNIFORM_DMP_TEXENV2_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[2].scaleRgb" の定義です。
112     SHADER_UNIFORM_DMP_TEXENV3_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[3].scaleRgb" の定義です。
113     SHADER_UNIFORM_DMP_TEXENV4_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[4].scaleRgb" の定義です。
114     SHADER_UNIFORM_DMP_TEXENV5_SCALERGB, //!< シェーダ定数レジスタ "dmp_TexEnv[5].scaleRgb" の定義です。
115     SHADER_UNIFORM_DMP_TEXENV0_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[0].scaleAlpha" の定義です。
116     SHADER_UNIFORM_DMP_TEXENV1_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[1].scaleAlpha" の定義です。
117     SHADER_UNIFORM_DMP_TEXENV2_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[2].scaleAlpha" の定義です。
118     SHADER_UNIFORM_DMP_TEXENV3_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[3].scaleAlpha" の定義です。
119     SHADER_UNIFORM_DMP_TEXENV4_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[4].scaleAlpha" の定義です。
120     SHADER_UNIFORM_DMP_TEXENV5_SCALEALPHA, //!< シェーダ定数レジスタ "dmp_TexEnv[5].scaleAlpha" の定義です。
121     SHADER_UNIFORM_DMP_TEXENV0_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[0].constRgba" の定義です。
122     SHADER_UNIFORM_DMP_TEXENV1_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[1].constRgba" の定義です。
123     SHADER_UNIFORM_DMP_TEXENV2_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[2].constRgba" の定義です。
124     SHADER_UNIFORM_DMP_TEXENV3_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[3].constRgba" の定義です。
125     SHADER_UNIFORM_DMP_TEXENV4_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[4].constRgba" の定義です。
126     SHADER_UNIFORM_DMP_TEXENV5_CONSTRGBA, //!< シェーダ定数レジスタ "dmp_TexEnv[5].constRgba" の定義です。
127     SHADER_UNIFORM_DMP_TEXENV0_BUFFERCOLOR, //!< シェーダ定数レジスタ "dmp_TexEnv[0].bufferColor" の定義です。
128     SHADER_UNIFORM_DMP_FRAGMENTLIGHTING_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLighting.enabled" の定義です。
129     SHADER_UNIFORM_DMP_FRAGMENTLIGHTING_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLighting.ambient" の定義です。
130     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERD0, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerD0" の定義です。
131     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERD1, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerD1" の定義です。
132     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERRR, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerRR" の定義です。
133     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERRG, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerRG" の定義です。
134     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERRB, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerRB" の定義です。
135     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerSP" の定義です。
136     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SAMPLERFR, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.samplerFR" の定義です。
137     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_EMISSION, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.emission" の定義です。
138     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.ambient" の定義です。
139     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.diffuse" の定義です。
140     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.specular0" の定義です。
141     SHADER_UNIFORM_DMP_FRAGMENTMATERIAL_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentMaterial.specular1" の定義です。
142     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].enabled" の定義です。
143     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].enabled" の定義です。
144     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].enabled" の定義です。
145     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].enabled" の定義です。
146     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].enabled" の定義です。
147     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].enabled" の定義です。
148     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].enabled" の定義です。
149     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_ENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].enabled" の定義です。
150     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].ambient" の定義です。
151     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].ambient" の定義です。
152     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].ambient" の定義です。
153     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].ambient" の定義です。
154     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].ambient" の定義です。
155     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].ambient" の定義です。
156     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].ambient" の定義です。
157     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_AMBIENT, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].ambient" の定義です。
158     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].diffuse" の定義です。
159     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].diffuse" の定義です。
160     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].diffuse" の定義です。
161     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].diffuse" の定義です。
162     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].diffuse" の定義です。
163     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].diffuse" の定義です。
164     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].diffuse" の定義です。
165     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_DIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].diffuse" の定義です。
166     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].specular0" の定義です。
167     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].specular0" の定義です。
168     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].specular0" の定義です。
169     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].specular0" の定義です。
170     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].specular0" の定義です。
171     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].specular0" の定義です。
172     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].specular0" の定義です。
173     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SPECULAR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].specular0" の定義です。
174     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].specular1" の定義です。
175     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].specular1" の定義です。
176     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].specular1" の定義です。
177     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].specular1" の定義です。
178     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].specular1" の定義です。
179     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].specular1" の定義です。
180     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].specular1" の定義です。
181     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SPECULAR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].specular1" の定義です。
182     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].position" の定義です。
183     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].position" の定義です。
184     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].position" の定義です。
185     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].position" の定義です。
186     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].position" の定義です。
187     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].position" の定義です。
188     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].position" の定義です。
189     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_POSITION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].position" の定義です。
190     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].spotDirection" の定義です。
191     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].spotDirection" の定義です。
192     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].spotDirection" の定義です。
193     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].spotDirection" の定義です。
194     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].spotDirection" の定義です。
195     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].spotDirection" の定義です。
196     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].spotDirection" の定義です。
197     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SPOTDIRECTION, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].spotDirection" の定義です。
198     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].shadowed" の定義です。
199     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].shadowed" の定義です。
200     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].shadowed" の定義です。
201     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].shadowed" の定義です。
202     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].shadowed" の定義です。
203     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].shadowed" の定義です。
204     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].shadowed" の定義です。
205     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SHADOWED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].shadowed" の定義です。
206     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].geomFactor0" の定義です。
207     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].geomFactor0" の定義です。
208     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].geomFactor0" の定義です。
209     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].geomFactor0" の定義です。
210     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].geomFactor0" の定義です。
211     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].geomFactor0" の定義です。
212     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].geomFactor0" の定義です。
213     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_GEOMFACTOR0, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].geomFactor0" の定義です。
214     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].geomFactor1" の定義です。
215     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].geomFactor1" の定義です。
216     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].geomFactor1" の定義です。
217     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].geomFactor1" の定義です。
218     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].geomFactor1" の定義です。
219     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].geomFactor1" の定義です。
220     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].geomFactor1" の定義です。
221     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_GEOMFACTOR1, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].geomFactor1" の定義です。
222     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].twoSideDiffuse" の定義です。
223     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].twoSideDiffuse" の定義です。
224     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].twoSideDiffuse" の定義です。
225     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].twoSideDiffuse" の定義です。
226     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].twoSideDiffuse" の定義です。
227     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].twoSideDiffuse" の定義です。
228     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].twoSideDiffuse" の定義です。
229     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_TWOSIDEDIFFUSE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].twoSideDiffuse" の定義です。
230     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].spotEnabled" の定義です。
231     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].spotEnabled" の定義です。
232     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].spotEnabled" の定義です。
233     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].spotEnabled" の定義です。
234     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].spotEnabled" の定義です。
235     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].spotEnabled" の定義です。
236     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].spotEnabled" の定義です。
237     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SPOTENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].spotEnabled" の定義です。
238     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].distanceAttenuationEnabled" の定義です。
239     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].distanceAttenuationEnabled" の定義です。
240     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].distanceAttenuationEnabled" の定義です。
241     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].distanceAttenuationEnabled" の定義です。
242     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].distanceAttenuationEnabled" の定義です。
243     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].distanceAttenuationEnabled" の定義です。
244     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].distanceAttenuationEnabled" の定義です。
245     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_DISTANCEATTENUATIONENABLED, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].distanceAttenuationEnabled" の定義です。
246     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].distanceAttenuationBias" の定義です。
247     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].distanceAttenuationBias" の定義です。
248     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].distanceAttenuationBias" の定義です。
249     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].distanceAttenuationBias" の定義です。
250     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].distanceAttenuationBias" の定義です。
251     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].distanceAttenuationBias" の定義です。
252     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].distanceAttenuationBias" の定義です。
253     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_DISTANCEATTENUATIONBIAS, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].distanceAttenuationBias" の定義です。
254     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].distanceAttenuationScale" の定義です。
255     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].distanceAttenuationScale" の定義です。
256     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].distanceAttenuationScale" の定義です。
257     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].distanceAttenuationScale" の定義です。
258     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].distanceAttenuationScale" の定義です。
259     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].distanceAttenuationScale" の定義です。
260     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].distanceAttenuationScale" の定義です。
261     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_DISTANCEATTENUATIONSCALE, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].distanceAttenuationScale" の定義です。
262     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].samplerSP" の定義です。
263     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].samplerSP" の定義です。
264     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].samplerSP" の定義です。
265     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].samplerSP" の定義です。
266     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].samplerSP" の定義です。
267     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].samplerSP" の定義です。
268     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].samplerSP" の定義です。
269     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SAMPLERSP, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].samplerSP" の定義です。
270     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE0_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[0].samplerDA" の定義です。
271     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE1_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[1].samplerDA" の定義です。
272     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE2_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[2].samplerDA" の定義です。
273     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE3_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[3].samplerDA" の定義です。
274     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE4_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[4].samplerDA" の定義です。
275     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE5_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[5].samplerDA" の定義です。
276     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE6_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[6].samplerDA" の定義です。
277     SHADER_UNIFORM_DMP_FRAGMENTLIGHTSOURCE7_SAMPLERDA, //!< シェーダ定数レジスタ "dmp_FragmentLightSource[7].samplerDA" の定義です。
278     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTD0, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputD0" の定義です。
279     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTD1, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputD1" の定義です。
280     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTRR, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputRR" の定義です。
281     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTRG, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputRG" の定義です。
282     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTRB, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputRB" の定義です。
283     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTSP, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputSP" の定義です。
284     SHADER_UNIFORM_DMP_LIGHTENV_ABSLUTINPUTFR, //!< シェーダ定数レジスタ "dmp_LightEnv.absLutInputFR" の定義です。
285     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTD0, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputD0" の定義です。
286     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTD1, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputD1" の定義です。
287     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTRR, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputRR" の定義です。
288     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTRG, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputRG" の定義です。
289     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTRB, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputRB" の定義です。
290     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTSP, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputSP" の定義です。
291     SHADER_UNIFORM_DMP_LIGHTENV_LUTINPUTFR, //!< シェーダ定数レジスタ "dmp_LightEnv.lutInputFR" の定義です。
292     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALED0, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleD0" の定義です。
293     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALED1, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleD1" の定義です。
294     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALERR, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleRR" の定義です。
295     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALERG, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleRG" の定義です。
296     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALERB, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleRB" の定義です。
297     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALESP, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleSP" の定義です。
298     SHADER_UNIFORM_DMP_LIGHTENV_LUTSCALEFR, //!< シェーダ定数レジスタ "dmp_LightEnv.lutScaleFR" の定義です。
299     SHADER_UNIFORM_DMP_LIGHTENV_SHADOWSELECTOR, //!< シェーダ定数レジスタ "dmp_LightEnv.shadowSelector" の定義です。
300     SHADER_UNIFORM_DMP_LIGHTENV_BUMPSELECTOR, //!< シェーダ定数レジスタ "dmp_LightEnv.bumpSelector" の定義です。
301     SHADER_UNIFORM_DMP_LIGHTENV_BUMPMODE, //!< シェーダ定数レジスタ "dmp_LightEnv.bumpMode" の定義です。
302     SHADER_UNIFORM_DMP_LIGHTENV_BUMPRENORM, //!< シェーダ定数レジスタ "dmp_LightEnv.bumpRenorm" の定義です。
303     SHADER_UNIFORM_DMP_LIGHTENV_CONFIG, //!< シェーダ定数レジスタ "dmp_LightEnv.config" の定義です。
304     SHADER_UNIFORM_DMP_LIGHTENV_INVERTSHADOW, //!< シェーダ定数レジスタ "dmp_LightEnv.invertShadow" の定義です。
305     SHADER_UNIFORM_DMP_LIGHTENV_SHADOWPRIMARY, //!< シェーダ定数レジスタ "dmp_LightEnv.shadowPrimary" の定義です。
306     SHADER_UNIFORM_DMP_LIGHTENV_SHADOWSECONDARY, //!< シェーダ定数レジスタ "dmp_LightEnv.shadowSecondary" の定義です。
307     SHADER_UNIFORM_DMP_LIGHTENV_SHADOWALPHA, //!< シェーダ定数レジスタ "dmp_LightEnv.shadowAlpha" の定義です。
308     SHADER_UNIFORM_DMP_LIGHTENV_FRESNELSELECTOR, //!< シェーダ定数レジスタ "dmp_LightEnv.fresnelSelector" の定義です。
309     SHADER_UNIFORM_DMP_LIGHTENV_CLAMPHIGHLIGHTS, //!< シェーダ定数レジスタ "dmp_LightEnv.clampHighlights" の定義です。
310     SHADER_UNIFORM_DMP_LIGHTENV_LUTENABLEDSP, //!< シェーダ定数レジスタ "dmp_LightEnv.lutEnabledSP" の定義です。
311     SHADER_UNIFORM_DMP_LIGHTENV_LUTENABLEDD0, //!< シェーダ定数レジスタ "dmp_LightEnv.lutEnabledD0" の定義です。
312     SHADER_UNIFORM_DMP_LIGHTENV_LUTENABLEDD1, //!< シェーダ定数レジスタ "dmp_LightEnv.lutEnabledD1" の定義です。
313     SHADER_UNIFORM_DMP_LIGHTENV_LUTENABLEDREFL, //!< シェーダ定数レジスタ "dmp_LightEnv.lutEnabledRefl" の定義です。
314     SHADER_UNIFORM_DMP_TEXTURE0_PERSPECTIVESHADOW, //!< シェーダ定数レジスタ "dmp_Texture[0].perspectiveShadow" の定義です。
315     SHADER_UNIFORM_DMP_TEXTURE0_SHADOWZSCALE, //!< シェーダ定数レジスタ "dmp_Texture[0].shadowZScale" の定義です。
316     SHADER_UNIFORM_DMP_TEXTURE0_SHADOWZBIAS, //!< シェーダ定数レジスタ "dmp_Texture[0].shadowZBias" の定義です。
317     SHADER_UNIFORM_DMP_TEXTURE0_SAMPLERTYPE, //!< シェーダ定数レジスタ "dmp_Texture[0].samplerType" の定義です。
318     SHADER_UNIFORM_DMP_TEXTURE1_SAMPLERTYPE, //!< シェーダ定数レジスタ "dmp_Texture[1].samplerType" の定義です。
319     SHADER_UNIFORM_DMP_TEXTURE2_SAMPLERTYPE, //!< シェーダ定数レジスタ "dmp_Texture[2].samplerType" の定義です。
320     SHADER_UNIFORM_DMP_TEXTURE3_SAMPLERTYPE, //!< シェーダ定数レジスタ "dmp_Texture[3].samplerType" の定義です。
321     SHADER_UNIFORM_DMP_TEXTURE2_TEXCOORD, //!< シェーダ定数レジスタ "dmp_Texture[2].texcoord" の定義です。
322     SHADER_UNIFORM_DMP_TEXTURE3_TEXCOORD, //!< シェーダ定数レジスタ "dmp_Texture[3].texcoord" の定義です。
323     SHADER_UNIFORM_DMP_TEXTURE3_PTRGBMAP, //!< シェーダ定数レジスタ "dmp_Texture[3].ptRgbMap" の定義です。
324     SHADER_UNIFORM_DMP_TEXTURE3_PTALPHAMAP, //!< シェーダ定数レジスタ "dmp_Texture[3].ptAlphaMap" の定義です。
325     SHADER_UNIFORM_DMP_TEXTURE3_PTALPHASEPARATE, //!< シェーダ定数レジスタ "dmp_Texture[3].ptAlphaSeparate" の定義です。
326     SHADER_UNIFORM_DMP_TEXTURE3_PTCLAMPU, //!< シェーダ定数レジスタ "dmp_Texture[3].ptClampU" の定義です。
327     SHADER_UNIFORM_DMP_TEXTURE3_PTCLAMPV, //!< シェーダ定数レジスタ "dmp_Texture[3].ptClampV" の定義です。
328     SHADER_UNIFORM_DMP_TEXTURE3_PTSHIFTU, //!< シェーダ定数レジスタ "dmp_Texture[3].ptShiftU" の定義です。
329     SHADER_UNIFORM_DMP_TEXTURE3_PTSHIFTV, //!< シェーダ定数レジスタ "dmp_Texture[3].ptShiftV" の定義です。
330     SHADER_UNIFORM_DMP_TEXTURE3_PTMINFILTER, //!< シェーダ定数レジスタ "dmp_Texture[3].ptMinFilter" の定義です。
331     SHADER_UNIFORM_DMP_TEXTURE3_PTTEXWIDTH, //!< シェーダ定数レジスタ "dmp_Texture[3].ptTexWidth" の定義です。
332     SHADER_UNIFORM_DMP_TEXTURE3_PTTEXOFFSET, //!< シェーダ定数レジスタ "dmp_Texture[3].ptTexOffset" の定義です。
333     SHADER_UNIFORM_DMP_TEXTURE3_PTTEXBIAS, //!< シェーダ定数レジスタ "dmp_Texture[3].ptTexBias" の定義です。
334     SHADER_UNIFORM_DMP_TEXTURE3_PTNOISEENABLE, //!< シェーダ定数レジスタ "dmp_Texture[3].ptNoiseEnable" の定義です。
335     SHADER_UNIFORM_DMP_TEXTURE3_PTNOISEU, //!< シェーダ定数レジスタ "dmp_Texture[3].ptNoiseU" の定義です。
336     SHADER_UNIFORM_DMP_TEXTURE3_PTNOISEV, //!< シェーダ定数レジスタ "dmp_Texture[3].ptNoiseV" の定義です。
337     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERRGBMAP, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerRgbMap" の定義です。
338     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERALPHAMAP, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerAlphaMap" の定義です。
339     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERNOISEMAP, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerNoiseMap" の定義です。
340     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERR, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerR" の定義です。
341     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERG, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerG" の定義です。
342     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERB, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerB" の定義です。
343     SHADER_UNIFORM_DMP_TEXTURE3_PTSAMPLERA, //!< シェーダ定数レジスタ "dmp_Texture[3].ptSamplerA" の定義です。
344     SHADER_UNIFORM_DMP_GAS_LIGHTXY, //!< シェーダ定数レジスタ "dmp_Gas.lightXY" の定義です。
345     SHADER_UNIFORM_DMP_GAS_LIGHTZ, //!< シェーダ定数レジスタ "dmp_Gas.lightZ" の定義です。
346     SHADER_UNIFORM_DMP_GAS_DELTAZ, //!< シェーダ定数レジスタ "dmp_Gas.deltaZ" の定義です。
347     SHADER_UNIFORM_DMP_GAS_AUTOACC, //!< シェーダ定数レジスタ "dmp_Gas.autoAcc" の定義です。
348     SHADER_UNIFORM_DMP_GAS_ACCMAX, //!< シェーダ定数レジスタ "dmp_Gas.accMax" の定義です。
349     SHADER_UNIFORM_DMP_GAS_SHADINGDENSITYSRC, //!< シェーダ定数レジスタ "dmp_Gas.shadingDensitySrc" の定義です。
350     SHADER_UNIFORM_DMP_GAS_COLORLUTINPUT, //!< シェーダ定数レジスタ "dmp_Gas.colorLutInput" の定義です。
351     SHADER_UNIFORM_DMP_GAS_SAMPLERTR, //!< シェーダ定数レジスタ "dmp_Gas.samplerTR" の定義です。
352     SHADER_UNIFORM_DMP_GAS_SAMPLERTG, //!< シェーダ定数レジスタ "dmp_Gas.samplerTG" の定義です。
353     SHADER_UNIFORM_DMP_GAS_SAMPLERTB, //!< シェーダ定数レジスタ "dmp_Gas.samplerTB" の定義です。
354     SHADER_UNIFORM_DMP_GAS_ATTENUATION, //!< シェーダ定数レジスタ "dmp_Gas.attenuation" の定義です。
355     SHADER_UNIFORM_DMP_FOG_MODE, //!< シェーダ定数レジスタ "dmp_Fog.mode" の定義です。
356     SHADER_UNIFORM_DMP_FOG_COLOR, //!< シェーダ定数レジスタ "dmp_Fog.color" の定義です。
357     SHADER_UNIFORM_DMP_FOG_ZFLIP, //!< シェーダ定数レジスタ "dmp_Fog.zFlip" の定義です。
358     SHADER_UNIFORM_DMP_FOG_SAMPLER, //!< シェーダ定数レジスタ "dmp_Fog.sampler" の定義です。
359     SHADER_UNIFORM_DMP_FRAGOPERATION_ENABLECLIPPINGPLANE, //!< シェーダ定数レジスタ "dmp_FragOperation.enableClippingPlane" の定義です。
360     SHADER_UNIFORM_DMP_FRAGOPERATION_CLIPPINGPLANE, //!< シェーダ定数レジスタ "dmp_FragOperation.clippingPlane" の定義です。
361     SHADER_UNIFORM_DMP_FRAGOPERATION_ENABLEALPHATEST, //!< シェーダ定数レジスタ "dmp_FragOperation.enableAlphaTest" の定義です。
362     SHADER_UNIFORM_DMP_FRAGOPERATION_ALPHAREFVALUE, //!< シェーダ定数レジスタ "dmp_FragOperation.alphaRefValue" の定義です。
363     SHADER_UNIFORM_DMP_FRAGOPERATION_ALPHATESTFUNC, //!< シェーダ定数レジスタ "dmp_FragOperation.alphaTestFunc" の定義です。
364     SHADER_UNIFORM_DMP_FRAGOPERATION_MODE, //!< シェーダ定数レジスタ "dmp_FragOperation.mode" の定義です。
365     SHADER_UNIFORM_DMP_FRAGOPERATION_WSCALE, //!< シェーダ定数レジスタ "dmp_FragOperation.wScale" の定義です。
366     SHADER_UNIFORM_DMP_FRAGOPERATION_PENUMBRASCALE, //!< シェーダ定数レジスタ "dmp_FragOperation.penumbraScale" の定義です。
367     SHADER_UNIFORM_DMP_FRAGOPERATION_PENUMBRABIAS, //!< シェーダ定数レジスタ "dmp_FragOperation.penumbraBias" の定義です。
368     SHADER_UNIFORM_DMP_POINT_VIEWPORT, //!< シェーダ定数レジスタ "dmp_Point.viewport" の定義です。
369     SHADER_UNIFORM_DMP_POINT_DISTANCEATTENUATION, //!< シェーダ定数レジスタ "dmp_Point.distanceAttenuation" の定義です。
370     SHADER_UNIFORM_DMP_LINE_WIDTH, //!< シェーダ定数レジスタ "dmp_Line.width" の定義です。
371     SHADER_UNIFORM_DMP_SILHOUETTE_WIDTH, //!< シェーダ定数レジスタ "dmp_Silhouette.width" の定義です。
372     SHADER_UNIFORM_DMP_SILHOUETTE_SCALEBYW, //!< シェーダ定数レジスタ "dmp_Silhouette.scaleByW" の定義です。
373     SHADER_UNIFORM_DMP_SILHOUETTE_COLOR, //!< シェーダ定数レジスタ "dmp_Silhouette.color" の定義です。
374     SHADER_UNIFORM_DMP_SILHOUETTE_FRONTFACECCW, //!< シェーダ定数レジスタ "dmp_Silhouette.frontFaceCCW" の定義です。
375     SHADER_UNIFORM_DMP_SILHOUETTE_ACCEPTEMPTYTRIANGLES, //!< シェーダ定数レジスタ "dmp_Silhouette.acceptEmptyTriangles" の定義です。
376     SHADER_UNIFORM_DMP_SILHOUETTE_OPENEDGECOLOR, //!< シェーダ定数レジスタ "dmp_Silhouette.openEdgeColor" の定義です。
377     SHADER_UNIFORM_DMP_SILHOUETTE_OPENEDGEWIDTH, //!< シェーダ定数レジスタ "dmp_Silhouette.openEdgeWidth" の定義です。
378     SHADER_UNIFORM_DMP_SILHOUETTE_OPENEDGEDEPTHBIAS, //!< シェーダ定数レジスタ "dmp_Silhouette.openEdgeDepthBias" の定義です。
379     SHADER_UNIFORM_DMP_SILHOUETTE_OPENEDGEWIDTHSCALEBYW, //!< シェーダ定数レジスタ "dmp_Silhouette.openEdgeWidthScaleByW" の定義です。
380     SHADER_UNIFORM_DMP_SILHOUETTE_OPENEDGEDEPTHBIASSCALEBYW, //!< シェーダ定数レジスタ "dmp_Silhouette.openEdgeDepthBiasScaleByW" の定義です。
381     SHADER_UNIFORM_DMP_SUBDIVISION_LEVEL, //!< シェーダ定数レジスタ "dmp_Subdivision.level" の定義です。
382     SHADER_UNIFORM_DMP_SUBDIVISION_FRAGMENTLIGHTINGENABLED, //!< シェーダ定数レジスタ "dmp_Subdivision.fragmentLightingEnabled" の定義です。
383     SHADER_UNIFORM_DMP_PARTSYS_COLOR, //!< シェーダ定数レジスタ "dmp_PartSys.color" の定義です。
384     SHADER_UNIFORM_DMP_PARTSYS_ASPECT, //!< シェーダ定数レジスタ "dmp_PartSys.aspect" の定義です。
385     SHADER_UNIFORM_DMP_PARTSYS_TIME, //!< シェーダ定数レジスタ "dmp_PartSys.time" の定義です。
386     SHADER_UNIFORM_DMP_PARTSYS_SPEED, //!< シェーダ定数レジスタ "dmp_PartSys.speed" の定義です。
387     SHADER_UNIFORM_DMP_PARTSYS_COUNTMAX, //!< シェーダ定数レジスタ "dmp_PartSys.countMax" の定義です。
388     SHADER_UNIFORM_DMP_PARTSYS_RANDSEED, //!< シェーダ定数レジスタ "dmp_PartSys.randSeed" の定義です。
389     SHADER_UNIFORM_DMP_PARTSYS_RANDOMCORE, //!< シェーダ定数レジスタ "dmp_PartSys.randomCore" の定義です。
390     SHADER_UNIFORM_DMP_PARTSYS_DISTANCEATTENUATION, //!< シェーダ定数レジスタ "dmp_PartSys.distanceAttenuation" の定義です。
391     SHADER_UNIFORM_DMP_PARTSYS_VIEWPORT, //!< シェーダ定数レジスタ "dmp_PartSys.viewport" の定義です。
392     SHADER_UNIFORM_DMP_PARTSYS_POINTSIZE, //!< シェーダ定数レジスタ "dmp_PartSys.pointSize" の定義です。
393     SHADER_UNIFORM_COUNT
394 };
395 
396 #endif
397 
398 //---------------------------------------------------------------------------
399 //! @brief        頂点シェーダーの小数レジスタのインデックス番号です。
400 //---------------------------------------------------------------------------
401 enum VertexShaderUniformIndex
402 {
403     VERTEX_SHADER_UNIFORM_PROJMTX_INDEX = 86, //!< 頂点シェーダユニフォーム "ProjMtx のレジスタインデックスです。
404     VERTEX_SHADER_UNIFORM_VIEWMTX_INDEX = 90, //!< 頂点シェーダユニフォーム "ViewMtx のレジスタインデックスです。
405     VERTEX_SHADER_UNIFORM_WRLDMTX_INDEX = 0, //!< 頂点シェーダユニフォーム "WrldMtx のレジスタインデックスです。
406     VERTEX_SHADER_UNIFORM_NORMMTX_INDEX = 3, //!< 頂点シェーダユニフォーム "NormMtx のレジスタインデックスです。
407     VERTEX_SHADER_UNIFORM_POSOFFS_INDEX = 6, //!< 頂点シェーダユニフォーム "PosOffs のレジスタインデックスです。
408     VERTEX_SHADER_UNIFORM_IRSCALE_INDEX = 7, //!< 頂点シェーダユニフォーム "IrScale のレジスタインデックスです。
409     VERTEX_SHADER_UNIFORM_TEXCMAP_INDEX = 10, //!< 頂点シェーダユニフォーム "TexcMap のレジスタインデックスです。
410     VERTEX_SHADER_UNIFORM_TEXMTX0_INDEX = 11, //!< 頂点シェーダユニフォーム "TexMtx0 のレジスタインデックスです。
411     VERTEX_SHADER_UNIFORM_TEXMTX1_INDEX = 14, //!< 頂点シェーダユニフォーム "TexMtx1 のレジスタインデックスです。
412     VERTEX_SHADER_UNIFORM_TEXMTX2_INDEX = 17, //!< 頂点シェーダユニフォーム "TexMtx2 のレジスタインデックスです。
413     VERTEX_SHADER_UNIFORM_TEXTRAN_INDEX = 19, //!< 頂点シェーダユニフォーム "TexTran のレジスタインデックスです。
414     VERTEX_SHADER_UNIFORM_MATAMBI_INDEX = 20, //!< 頂点シェーダユニフォーム "MatAmbi のレジスタインデックスです。
415     VERTEX_SHADER_UNIFORM_MATDIFF_INDEX = 21, //!< 頂点シェーダユニフォーム "MatDiff のレジスタインデックスです。
416     VERTEX_SHADER_UNIFORM_HSLGCOL_INDEX = 22, //!< 頂点シェーダユニフォーム "HslGCol のレジスタインデックスです。
417     VERTEX_SHADER_UNIFORM_HSLSCOL_INDEX = 23, //!< 頂点シェーダユニフォーム "HslSCol のレジスタインデックスです。
418     VERTEX_SHADER_UNIFORM_HSLSDIR_INDEX = 24, //!< 頂点シェーダユニフォーム "HslSDir のレジスタインデックスです。
419     VERTEX_SHADER_UNIFORM_UNIVREG_INDEX = 25, //!< 頂点シェーダユニフォーム "UnivReg のレジスタインデックスです。
420     VERTEX_SHADER_UNIFORM_ISSMOSK_INDEX = 1, //!< 頂点シェーダユニフォーム "IsSmoSk のレジスタインデックスです。
421     VERTEX_SHADER_UNIFORM_ISRGDSK_INDEX = 2, //!< 頂点シェーダユニフォーム "IsRgdSk のレジスタインデックスです。
422     VERTEX_SHADER_UNIFORM_ISHEMIL_INDEX = 5, //!< 頂点シェーダユニフォーム "IsHemiL のレジスタインデックスです。
423     VERTEX_SHADER_UNIFORM_ISHEMIO_INDEX = 6, //!< 頂点シェーダユニフォーム "IsHemiO のレジスタインデックスです。
424     VERTEX_SHADER_UNIFORM_ISVERTA_INDEX = 7, //!< 頂点シェーダユニフォーム "IsVertA のレジスタインデックスです。
425     VERTEX_SHADER_UNIFORM_ISBONEW_INDEX = 8, //!< 頂点シェーダユニフォーム "IsBoneW のレジスタインデックスです。
426     VERTEX_SHADER_UNIFORM_UVMAP0_INDEX = 9, //!< 頂点シェーダユニフォーム "UvMap0 のレジスタインデックスです。
427     VERTEX_SHADER_UNIFORM_UVMAP1_INDEX = 10, //!< 頂点シェーダユニフォーム "UvMap1 のレジスタインデックスです。
428     VERTEX_SHADER_UNIFORM_UVMAP2_INDEX = 11, //!< 頂点シェーダユニフォーム "UvMap2 のレジスタインデックスです。
429     VERTEX_SHADER_UNIFORM_ISVERTL_INDEX = 12, //!< 頂点シェーダユニフォーム "IsVertL のレジスタインデックスです。
430     VERTEX_SHADER_UNIFORM_ISTEX1_INDEX = 13, //!< 頂点シェーダユニフォーム "IsTex1 のレジスタインデックスです。
431     VERTEX_SHADER_UNIFORM_ISTEX2_INDEX = 14, //!< 頂点シェーダユニフォーム "IsTex2 のレジスタインデックスです。
432     VERTEX_SHADER_UNIFORM_ISQUATE_INDEX = 15, //!< 頂点シェーダユニフォーム "IsQuate のレジスタインデックスです。
433     VERTEX_SHADER_UNIFORM_LIGHTCT_INDEX = 0, //!< 頂点シェーダユニフォーム "LightCt のレジスタインデックスです。
434     VERTEX_SHADER_UNIFORM_INDEX_MAX = 96
435 };
436 
437 #if defined(NW_GFX_PROGRAM_OBJECT_ENABLED)
438 
439 //---------------------------------------------------------------------------
440 //! @brief        シェーダーユニフォームのロケーション値をキャッシュするクラスです。
441 //---------------------------------------------------------------------------
442 class ShaderUniformLocation : public GfxObject
443 {
444 public:
445     static ShaderUniformLocation* Create(os::IAllocator* allocator);
446 
447     void BuildUniformLocations(GLuint programObject);
448 
GetUniformLocation(int location)449     GLint GetUniformLocation(int location) const
450     {
451         return m_UniformLocations[location];
452     }
453 
454 private:
455     NW_DISALLOW_COPY_AND_ASSIGN(ShaderUniformLocation);
456 
457     ShaderUniformLocation(os::IAllocator* allocator);
458     ut::FixedSizeArray<GLint, SHADER_UNIFORM_COUNT> m_UniformLocations;
459 };
460 
461 #endif
462 
463 // コマンドキャッシュ対応用の一時的なマクロです。
464 #define NW_GFX_VERTEX_UNIFORM(x)  VERTEX_SHADER_UNIFORM_##x##_INDEX
465 
466 } // namespace gfx
467 } // namespace nw
468 
469 #endif /* NW_GFX_SHADERUNIFORMS_H_ */
470 
471