Method(HRESULT, "GetClipStatus", [Out(Pointer(D3DCLIPSTATUS9), "pClipStatus")]),
Method(HRESULT, "GetTexture", [(DWORD, "Stage"), Out(Pointer(PDIRECT3DBASETEXTURE9), "ppTexture")]),
Method(HRESULT, "SetTexture", [(DWORD, "Stage"), (PDIRECT3DBASETEXTURE9, "pTexture")]),
- Method(HRESULT, "GetTextureStageState", [(DWORD, "Stage"), (D3DTEXTURESTAGESTATETYPE, "Type"), Out(Pointer(DWORD), "pValue")]),
- Method(HRESULT, "SetTextureStageState", [(DWORD, "Stage"), (D3DTEXTURESTAGESTATETYPE, "Type"), (DWORD, "Value")]),
- Method(HRESULT, "GetSamplerState", [(DWORD, "Sampler"), (D3DSAMPLERSTATETYPE, "Type"), Out(Pointer(DWORD), "pValue")]),
- Method(HRESULT, "SetSamplerState", [(DWORD, "Sampler"), (D3DSAMPLERSTATETYPE, "Type"), (DWORD, "Value")]),
+ Method(HRESULT, "GetTextureStageState", [(DWORD, "Stage"), (D3DTEXTURESTAGESTATETYPE, "Type"), Out(Pointer(D3DTEXTURESTAGESTATEVALUE), "pValue")]),
+ Method(HRESULT, "SetTextureStageState", [(DWORD, "Stage"), (D3DTEXTURESTAGESTATETYPE, "Type"), (D3DTEXTURESTAGESTATEVALUE, "Value")]),
+ Method(HRESULT, "GetSamplerState", [(DWORD, "Sampler"), (D3DSAMPLERSTATETYPE, "Type"), Out(Pointer(D3DSAMPLERSTATEVALUE), "pValue")]),
+ Method(HRESULT, "SetSamplerState", [(DWORD, "Sampler"), (D3DSAMPLERSTATETYPE, "Type"), (D3DSAMPLERSTATEVALUE, "Value")]),
Method(HRESULT, "ValidateDevice", [Out(Pointer(DWORD), "pNumPasses")]),
Method(HRESULT, "SetPaletteEntries", [(UINT, "PaletteNumber"), (ConstPointer(PALETTEENTRY), "pEntries")]),
Method(HRESULT, "GetPaletteEntries", [(UINT, "PaletteNumber"), Out(Pointer(PALETTEENTRY), "pEntries")]),
# XXX: D3DRENDERSTATE_WRAPBIAS + n
])
-D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE",
- [expr for expr, types in D3DRENDERSTATEVALUE.switch_types]
-)
-
-D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
- "D3DTSS_COLOROP",
- "D3DTSS_COLORARG1",
- "D3DTSS_COLORARG2",
- "D3DTSS_ALPHAOP",
- "D3DTSS_ALPHAARG1",
- "D3DTSS_ALPHAARG2",
- "D3DTSS_BUMPENVMAT00",
- "D3DTSS_BUMPENVMAT01",
- "D3DTSS_BUMPENVMAT10",
- "D3DTSS_BUMPENVMAT11",
- "D3DTSS_TEXCOORDINDEX",
- "D3DTSS_BUMPENVLSCALE",
- "D3DTSS_BUMPENVLOFFSET",
- "D3DTSS_TEXTURETRANSFORMFLAGS",
- "D3DTSS_COLORARG0",
- "D3DTSS_ALPHAARG0",
- "D3DTSS_RESULTARG",
- "D3DTSS_CONSTANT",
+D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE", [
+ expr for expr, types in D3DRENDERSTATEVALUE.switch_types
])
-D3DSAMPLERSTATETYPE = Enum("D3DSAMPLERSTATETYPE", [
-
- "D3DSAMP_ADDRESSU",
- "D3DSAMP_ADDRESSV",
- "D3DSAMP_ADDRESSW",
- "D3DSAMP_BORDERCOLOR",
- "D3DSAMP_MAGFILTER",
- "D3DSAMP_MINFILTER",
- "D3DSAMP_MIPFILTER",
- "D3DSAMP_MIPMAPLODBIAS",
- "D3DSAMP_MAXMIPLEVEL",
- "D3DSAMP_MAXANISOTROPY",
- "D3DSAMP_SRGBTEXTURE",
- "D3DSAMP_ELEMENTINDEX",
- "D3DSAMP_DMAPOFFSET",
-])
-
-D3DTSS = Flags(DWORD, [
- "D3DTSS_TCI_PASSTHRU",
+D3DTSS_TCI = Flags(DWORD, [
+ #"D3DTSS_TCI_PASSTHRU", 0
"D3DTSS_TCI_CAMERASPACENORMAL",
"D3DTSS_TCI_CAMERASPACEPOSITION",
"D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR",
"D3DTA_ALPHAREPLICATE",
])
+D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
+ "D3DTTFF_DISABLE",
+ "D3DTTFF_COUNT1",
+ "D3DTTFF_COUNT2",
+ "D3DTTFF_COUNT3",
+ "D3DTTFF_COUNT4",
+ "D3DTTFF_PROJECTED",
+])
+
+
+D3DTEXTURESTAGESTATEVALUE = Polymorphic(DWORD, "Type", [
+ ("D3DTSS_COLOROP", D3DTEXTUREOP),
+ ("D3DTSS_COLORARG1", D3DTA),
+ ("D3DTSS_COLORARG2", D3DTA),
+ ("D3DTSS_ALPHAOP", D3DTEXTUREOP),
+ ("D3DTSS_ALPHAARG1", D3DTA),
+ ("D3DTSS_ALPHAARG2", D3DTA),
+ ("D3DTSS_BUMPENVMAT00", FLOAT_AS_DWORD),
+ ("D3DTSS_BUMPENVMAT01", FLOAT_AS_DWORD),
+ ("D3DTSS_BUMPENVMAT10", FLOAT_AS_DWORD),
+ ("D3DTSS_BUMPENVMAT11", FLOAT_AS_DWORD),
+ ("D3DTSS_TEXCOORDINDEX", D3DTSS_TCI,),
+ ("D3DTSS_BUMPENVLSCALE", FLOAT_AS_DWORD),
+ ("D3DTSS_BUMPENVLOFFSET", FLOAT_AS_DWORD),
+ ("D3DTSS_TEXTURETRANSFORMFLAGS", D3DTEXTURETRANSFORMFLAGS),
+ ("D3DTSS_COLORARG0", D3DTA,),
+ ("D3DTSS_ALPHAARG0", D3DTA,),
+ ("D3DTSS_RESULTARG", D3DTA,),
+ ("D3DTSS_CONSTANT", D3DCOLOR),
+])
+
+D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
+ expr for expr, types in D3DTEXTURESTAGESTATEVALUE.switch_types
+])
+
D3DTEXTUREFILTERTYPE = Enum("D3DTEXTUREFILTERTYPE", [
"D3DTEXF_NONE",
"D3DTEXF_POINT",
"D3DTEXF_CONVOLUTIONMONO",
])
+D3DSAMPLERSTATEVALUE = Polymorphic(DWORD, "Type", [
+ ("D3DSAMP_ADDRESSU", D3DTEXTUREADDRESS),
+ ("D3DSAMP_ADDRESSV", D3DTEXTUREADDRESS),
+ ("D3DSAMP_ADDRESSW", D3DTEXTUREADDRESS),
+ ("D3DSAMP_BORDERCOLOR", D3DCOLOR),
+ ("D3DSAMP_MAGFILTER", D3DTEXTUREFILTERTYPE),
+ ("D3DSAMP_MINFILTER", D3DTEXTUREFILTERTYPE),
+ ("D3DSAMP_MIPFILTER", D3DTEXTUREFILTERTYPE),
+ ("D3DSAMP_MIPMAPLODBIAS", FLOAT_AS_DWORD),
+ ("D3DSAMP_MAXMIPLEVEL", DWORD),
+ ("D3DSAMP_MAXANISOTROPY", DWORD),
+ ("D3DSAMP_SRGBTEXTURE", BOOL),
+ ("D3DSAMP_ELEMENTINDEX", DWORD),
+ ("D3DSAMP_DMAPOFFSET", DWORD),
+])
+
+D3DSAMPLERSTATETYPE = Enum("D3DSAMPLERSTATETYPE", [
+ expr for expr, types in D3DSAMPLERSTATEVALUE.switch_types
+])
+
D3DPV = Flags(DWORD, [
"D3DPV_DONOTCOPYDATA",
])
"D3DSBT_VERTEXSTATE",
])
-D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
- "D3DTTFF_DISABLE",
- "D3DTTFF_COUNT1",
- "D3DTTFF_COUNT2",
- "D3DTTFF_COUNT3",
- "D3DTTFF_COUNT4",
- "D3DTTFF_PROJECTED",
-])
-
D3DDEVTYPE = Enum("D3DDEVTYPE", [
"D3DDEVTYPE_HAL",
"D3DDEVTYPE_REF",