-
Notifications
You must be signed in to change notification settings - Fork 8
/
d3dx9shader.inc
346 lines (307 loc) · 12.8 KB
/
d3dx9shader.inc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
;--- include file created by h2incx v0.96, copyright 2005 japheth
;--- source file: d:\ddraw\include\d3dx9shader.h, last modified: 12/1/2004 15:7
include d3dx9.inc
ifndef __D3DX9SHADER_H__
__D3DX9SHADER_H__ EQU <>
D3DXTX_VERSION macro _Major,_Minor
exitm <( ( 'T' shl 24 ) or ( 'X' shl 16 ) or ( ( _Major ) shl 8 ) or ( _Minor ) ) >
endm
D3DXSHADER_DEBUG EQU ( 1 shl 0 )
D3DXSHADER_SKIPVALIDATION EQU ( 1 shl 1 )
D3DXSHADER_SKIPOPTIMIZATION EQU ( 1 shl 2 )
D3DXSHADER_PACKMATRIX_ROWMAJOR EQU ( 1 shl 3 )
D3DXSHADER_PACKMATRIX_COLUMNMAJOR EQU ( 1 shl 4 )
D3DXSHADER_PARTIALPRECISION EQU ( 1 shl 5 )
D3DXSHADER_FORCE_VS_SOFTWARE_NOOPT EQU ( 1 shl 6 )
D3DXSHADER_FORCE_PS_SOFTWARE_NOOPT EQU ( 1 shl 7 )
D3DXSHADER_NO_PRESHADER EQU ( 1 shl 8 )
D3DXSHADER_AVOID_FLOW_CONTROL EQU ( 1 shl 9 )
D3DXSHADER_PREFER_FLOW_CONTROL EQU ( 1 shl 10 )
D3DXHANDLE typedef LPSTR
LPD3DXHANDLE typedef ptr D3DXHANDLE
D3DXMACRO struct
Name_ LPSTR ?
Definition LPSTR ?
D3DXMACRO ends
LPD3DXMACRO typedef ptr D3DXMACRO
D3DXSEMANTIC struct
Usage DWORD ?
UsageIndex DWORD ?
D3DXSEMANTIC ends
LPD3DXSEMANTIC typedef ptr D3DXSEMANTIC
D3DXFRAGMENT_DESC struct
Name_ LPSTR ?
Target DWORD ?
D3DXFRAGMENT_DESC ends
LPD3DXFRAGMENT_DESC typedef ptr D3DXFRAGMENT_DESC
D3DXREGISTER_SET typedef DWORD
D3DXRS_BOOL = 0
D3DXRS_INT4 = 1
D3DXRS_FLOAT4 = 2
D3DXRS_SAMPLER = 3
D3DXRS_FORCE_DWORD = 7fffffffh
LPD3DXREGISTER_SET typedef ptr D3DXREGISTER_SET
D3DXPARAMETER_CLASS typedef DWORD
D3DXPC_SCALAR = 0
D3DXPC_VECTOR = 1
D3DXPC_MATRIX_ROWS = 2
D3DXPC_MATRIX_COLUMNS = 3
D3DXPC_OBJECT = 4
D3DXPC_STRUCT = 5
D3DXPC_FORCE_DWORD = 7fffffffh
LPD3DXPARAMETER_CLASS typedef ptr D3DXPARAMETER_CLASS
D3DXPARAMETER_TYPE typedef DWORD
D3DXPT_VOID = 0
D3DXPT_BOOL = 1
D3DXPT_INT = 2
D3DXPT_FLOAT = 3
D3DXPT_STRING = 4
D3DXPT_TEXTURE = 5
D3DXPT_TEXTURE1D = 6
D3DXPT_TEXTURE2D = 7
D3DXPT_TEXTURE3D = 8
D3DXPT_TEXTURECUBE = 9
D3DXPT_SAMPLER = 10
D3DXPT_SAMPLER1D = 11
D3DXPT_SAMPLER2D = 12
D3DXPT_SAMPLER3D = 13
D3DXPT_SAMPLERCUBE = 14
D3DXPT_PIXELSHADER = 15
D3DXPT_VERTEXSHADER = 16
D3DXPT_PIXELFRAGMENT = 17
D3DXPT_VERTEXFRAGMENT = 18
D3DXPT_FORCE_DWORD = 7fffffffh
LPD3DXPARAMETER_TYPE typedef ptr D3DXPARAMETER_TYPE
D3DXCONSTANTTABLE_DESC struct
Creator LPSTR ?
Version DWORD ?
Constants DWORD ?
D3DXCONSTANTTABLE_DESC ends
LPD3DXCONSTANTTABLE_DESC typedef ptr D3DXCONSTANTTABLE_DESC
D3DXCONSTANT_DESC struct
Name_ LPSTR ?
RegisterSet D3DXREGISTER_SET ?
RegisterIndex DWORD ?
RegisterCount DWORD ?
Class D3DXPARAMETER_CLASS ?
Type_ D3DXPARAMETER_TYPE ?
Rows DWORD ?
Columns DWORD ?
Elements DWORD ?
StructMembers DWORD ?
Bytes DWORD ?
DefaultValue LPCVOID ?
D3DXCONSTANT_DESC ends
LPD3DXCONSTANT_DESC typedef ptr D3DXCONSTANT_DESC
;ID3DXConstantTable typedef ID3DXConstantTable
LPD3DXCONSTANTTABLE typedef ptr ID3DXConstantTable
DEFINE_GUID(IID_ID3DXConstantTable,0ab3c758fh,93eh,4356h,0b7h,62h,4dh,0b1h,8fh,1bh,3ah,1h)
;#undef INTERFACE
INTERFACE EQU <ID3DXConstantTable>
DECLARE_INTERFACE_(ID3DXConstantTable,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef
STDMETHOD_ ULONG,Release
STDMETHOD_ LPVOID,GetBufferPointer
STDMETHOD_ DWORD_,GetBufferSize
STDMETHOD GetDesc , :ptr D3DXCONSTANTTABLE_DESC
STDMETHOD GetConstantDesc , :D3DXHANDLE, :ptr D3DXCONSTANT_DESC, :ptr DWORD
STDMETHOD_ UINT,GetSamplerIndex , :D3DXHANDLE
STDMETHOD_ D3DXHANDLE,GetConstant , :D3DXHANDLE, :DWORD
STDMETHOD_ D3DXHANDLE,GetConstantByName , :D3DXHANDLE, :LPSTR
STDMETHOD_ D3DXHANDLE,GetConstantElement , :D3DXHANDLE, :DWORD
STDMETHOD SetDefaults , :LPDIRECT3DDEVICE9
STDMETHOD SetValue , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :LPCVOID, :DWORD
STDMETHOD SetBool , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :BOOL
STDMETHOD SetBoolArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr BOOL, :DWORD
STDMETHOD SetInt , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :DWORD
STDMETHOD SetIntArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr DWORD, :DWORD
STDMETHOD SetFloat , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :REAL4
STDMETHOD SetFloatArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr REAL4, :DWORD
STDMETHOD SetVector , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXVECTOR4
STDMETHOD SetVectorArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXVECTOR4, :DWORD
STDMETHOD SetMatrix , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXMATRIX
STDMETHOD SetMatrixArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixPointerArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixTranspose , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXMATRIX
STDMETHOD SetMatrixTransposeArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixTransposePointerArray , :LPDIRECT3DDEVICE9, :D3DXHANDLE, :ptr ptr D3DXMATRIX, :DWORD
;}
DECLARE_INTERFACE__END
;ID3DXTextureShader typedef ID3DXTextureShader
LPD3DXTEXTURESHADER typedef ptr ID3DXTextureShader
DEFINE_GUID(IID_ID3DXTextureShader,3e3d67f8h,0aa7ah,405dh,0a8h,57h,0bah,1h,0d4h,75h,84h,26h)
;#undef INTERFACE
INTERFACE EQU <ID3DXTextureShader>
DECLARE_INTERFACE_(ID3DXTextureShader,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef
STDMETHOD_ ULONG,Release
STDMETHOD GetFunction , :ptr LPD3DXBUFFER
STDMETHOD GetConstantBuffer , :ptr LPD3DXBUFFER
STDMETHOD GetDesc , :ptr D3DXCONSTANTTABLE_DESC
STDMETHOD GetConstantDesc , :D3DXHANDLE, :ptr D3DXCONSTANT_DESC, :ptr DWORD
STDMETHOD_ D3DXHANDLE,GetConstant , :D3DXHANDLE, :DWORD
STDMETHOD_ D3DXHANDLE,GetConstantByName , :D3DXHANDLE, :LPSTR
STDMETHOD_ D3DXHANDLE,GetConstantElement , :D3DXHANDLE, :DWORD
STDMETHOD SetDefaults
STDMETHOD SetValue , :D3DXHANDLE, :LPCVOID, :DWORD
STDMETHOD SetBool , :D3DXHANDLE, :BOOL
STDMETHOD SetBoolArray , :D3DXHANDLE, :ptr BOOL, :DWORD
STDMETHOD SetInt , :D3DXHANDLE, :DWORD
STDMETHOD SetIntArray , :D3DXHANDLE, :ptr DWORD, :DWORD
STDMETHOD SetFloat , :D3DXHANDLE, :REAL4
STDMETHOD SetFloatArray , :D3DXHANDLE, :ptr REAL4, :DWORD
STDMETHOD SetVector , :D3DXHANDLE, :ptr D3DXVECTOR4
STDMETHOD SetVectorArray , :D3DXHANDLE, :ptr D3DXVECTOR4, :DWORD
STDMETHOD SetMatrix , :D3DXHANDLE, :ptr D3DXMATRIX
STDMETHOD SetMatrixArray , :D3DXHANDLE, :ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixPointerArray , :D3DXHANDLE, :ptr ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixTranspose , :D3DXHANDLE, :ptr D3DXMATRIX
STDMETHOD SetMatrixTransposeArray , :D3DXHANDLE, :ptr D3DXMATRIX, :DWORD
STDMETHOD SetMatrixTransposePointerArray , :D3DXHANDLE, :ptr ptr D3DXMATRIX, :DWORD
;}
DECLARE_INTERFACE__END
;ID3DXFragmentLinker typedef ID3DXFragmentLinker
LPD3DXFRAGMENTLINKER typedef ptr ID3DXFragmentLinker
DEFINE_GUID(IID_ID3DXFragmentLinker,1a2c0cc2h,0e5b6h,4ebch,9eh,8dh,39h,0eh,5h,78h,11h,0b6h)
;#undef INTERFACE
INTERFACE EQU <ID3DXFragmentLinker>
DECLARE_INTERFACE_(ID3DXFragmentLinker,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef
STDMETHOD_ ULONG,Release
STDMETHOD GetDevice , :ptr LPDIRECT3DDEVICE9
STDMETHOD_ UINT,GetNumberOfFragments
STDMETHOD_ D3DXHANDLE,GetFragmentHandleByIndex , :DWORD
STDMETHOD_ D3DXHANDLE,GetFragmentHandleByName , :LPSTR
STDMETHOD GetFragmentDesc , :D3DXHANDLE, :LPD3DXFRAGMENT_DESC
STDMETHOD AddFragments , :ptr DWORD
STDMETHOD GetAllFragments , :ptr LPD3DXBUFFER
STDMETHOD GetFragment , :D3DXHANDLE, :ptr LPD3DXBUFFER
STDMETHOD LinkShader , :LPSTR, :DWORD, :ptr D3DXHANDLE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
STDMETHOD LinkVertexShader , :LPSTR, :DWORD, :ptr D3DXHANDLE, :DWORD, :ptr LPDIRECT3DVERTEXSHADER9, :ptr LPD3DXBUFFER
STDMETHOD LinkPixelShader , :LPSTR, :DWORD, :ptr D3DXHANDLE, :DWORD, :ptr LPDIRECT3DPIXELSHADER9, :ptr LPD3DXBUFFER
STDMETHOD ClearCache
;}
DECLARE_INTERFACE__END
D3DXINCLUDE_TYPE typedef DWORD
D3DXINC_LOCAL = 0
D3DXINC_SYSTEM = 1
D3DXINC_FORCE_DWORD = 7fffffffh
LPD3DXINCLUDE_TYPE typedef ptr D3DXINCLUDE_TYPE
;ID3DXInclude typedef ID3DXInclude
LPD3DXINCLUDE typedef ptr ID3DXInclude
;#undef INTERFACE
INTERFACE EQU <ID3DXInclude>
DECLARE_INTERFACE(ID3DXInclude)
;{
STDMETHOD Open , :D3DXINCLUDE_TYPE, :LPSTR, :LPCVOID, :ptr LPCVOID, :ptr DWORD
STDMETHOD Close , :LPCVOID
;}
DECLARE_INTERFACE_END
ifdef __cplusplus
;extern "C"
;{
endif
D3DXAssembleShaderFromFileA proto stdcall :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXAssembleShaderFromFileW proto stdcall :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
ifdef UNICODE
D3DXAssembleShaderFromFile EQU <D3DXAssembleShaderFromFileW>
else
D3DXAssembleShaderFromFile EQU <D3DXAssembleShaderFromFileA>
endif
D3DXAssembleShaderFromResourceA proto stdcall :HMODULE, :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXAssembleShaderFromResourceW proto stdcall :HMODULE, :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
ifdef UNICODE
D3DXAssembleShaderFromResource EQU <D3DXAssembleShaderFromResourceW>
else
D3DXAssembleShaderFromResource EQU <D3DXAssembleShaderFromResourceA>
endif
D3DXAssembleShader proto stdcall :LPSTR, :DWORD, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXCompileShaderFromFileA proto stdcall :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :LPSTR, :LPSTR, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER, :ptr LPD3DXCONSTANTTABLE
D3DXCompileShaderFromFileW proto stdcall :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :LPSTR, :LPSTR, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER, :ptr LPD3DXCONSTANTTABLE
ifdef UNICODE
D3DXCompileShaderFromFile EQU <D3DXCompileShaderFromFileW>
else
D3DXCompileShaderFromFile EQU <D3DXCompileShaderFromFileA>
endif
D3DXCompileShaderFromResourceA proto stdcall :HMODULE, :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :LPSTR, :LPSTR, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER, :ptr LPD3DXCONSTANTTABLE
D3DXCompileShaderFromResourceW proto stdcall :HMODULE, :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :LPSTR, :LPSTR, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER, :ptr LPD3DXCONSTANTTABLE
ifdef UNICODE
D3DXCompileShaderFromResource EQU <D3DXCompileShaderFromResourceW>
else
D3DXCompileShaderFromResource EQU <D3DXCompileShaderFromResourceA>
endif
D3DXCompileShader proto stdcall :LPSTR, :DWORD, :ptr D3DXMACRO, :LPD3DXINCLUDE, :LPSTR, :LPSTR, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER, :ptr LPD3DXCONSTANTTABLE
D3DXDisassembleShader proto stdcall :ptr DWORD, :BOOL, :LPSTR, :ptr LPD3DXBUFFER
D3DXGetPixelShaderProfile proto stdcall :LPDIRECT3DDEVICE9
D3DXGetVertexShaderProfile proto stdcall :LPDIRECT3DDEVICE9
D3DXFindShaderComment proto stdcall :ptr DWORD, :DWORD, :ptr LPCVOID, :ptr DWORD
D3DXGetShaderSize proto stdcall :ptr DWORD
D3DXGetShaderVersion proto stdcall :ptr DWORD
D3DXGetShaderInputSemantics proto stdcall :ptr DWORD, :ptr D3DXSEMANTIC, :ptr DWORD
D3DXGetShaderOutputSemantics proto stdcall :ptr DWORD, :ptr D3DXSEMANTIC, :ptr DWORD
D3DXGetShaderSamplers proto stdcall :ptr DWORD, :ptr LPSTR, :ptr DWORD
D3DXGetShaderConstantTable proto stdcall :ptr DWORD, :ptr LPD3DXCONSTANTTABLE
D3DXCreateTextureShader proto stdcall :ptr DWORD, :ptr LPD3DXTEXTURESHADER
D3DXGatherFragmentsFromFileA proto stdcall :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXGatherFragmentsFromFileW proto stdcall :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
ifdef UNICODE
D3DXGatherFragmentsFromFile EQU <D3DXGatherFragmentsFromFileW>
else
D3DXGatherFragmentsFromFile EQU <D3DXGatherFragmentsFromFileA>
endif
D3DXGatherFragmentsFromResourceA proto stdcall :HMODULE, :LPSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXGatherFragmentsFromResourceW proto stdcall :HMODULE, :LPWSTR, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
ifdef UNICODE
D3DXGatherFragmentsFromResource EQU <D3DXGatherFragmentsFromResourceW>
else
D3DXGatherFragmentsFromResource EQU <D3DXGatherFragmentsFromResourceA>
endif
D3DXGatherFragments proto stdcall :LPSTR, :DWORD, :ptr D3DXMACRO, :LPD3DXINCLUDE, :DWORD, :ptr LPD3DXBUFFER, :ptr LPD3DXBUFFER
D3DXCreateFragmentLinker proto stdcall :LPDIRECT3DDEVICE9, :DWORD, :ptr LPD3DXFRAGMENTLINKER
ifdef __cplusplus
;}
endif
D3DXSHADER_CONSTANTTABLE struct
Size_ DWORD ?
Creator DWORD ?
Version DWORD ?
Constants DWORD ?
ConstantInfo DWORD ?
Flags DWORD ?
Target DWORD ?
D3DXSHADER_CONSTANTTABLE ends
LPD3DXSHADER_CONSTANTTABLE typedef ptr D3DXSHADER_CONSTANTTABLE
D3DXSHADER_CONSTANTINFO struct
Name_ DWORD ?
RegisterSet WORD ?
RegisterIndex WORD ?
RegisterCount WORD ?
Reserved WORD ?
TypeInfo DWORD ?
DefaultValue DWORD ?
D3DXSHADER_CONSTANTINFO ends
LPD3DXSHADER_CONSTANTINFO typedef ptr D3DXSHADER_CONSTANTINFO
D3DXSHADER_TYPEINFO struct
Class WORD ?
Type_ WORD ?
Rows WORD ?
Columns WORD ?
Elements WORD ?
StructMembers WORD ?
StructMemberInfo DWORD ?
D3DXSHADER_TYPEINFO ends
LPD3DXSHADER_TYPEINFO typedef ptr D3DXSHADER_TYPEINFO
D3DXSHADER_STRUCTMEMBERINFO struct
Name_ DWORD ?
TypeInfo DWORD ?
D3DXSHADER_STRUCTMEMBERINFO ends
LPD3DXSHADER_STRUCTMEMBERINFO typedef ptr D3DXSHADER_STRUCTMEMBERINFO
endif
;--- errors: 0
;--- end of file ---