Artifact 31c199e5b62e320d90436c891c4cb7f4e081b116:
- File
src/win32/directx/d3d9.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d /*============== 0010: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================ 0020: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================ 0030: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================ 0040: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3b 0d 0a 20 ============;.. 0050: 2a 0d 0a 20 2a 20 20 43 6f 70 79 72 69 67 68 74 *.. * Copyright 0060: 20 28 43 29 20 4d 69 63 72 6f 73 6f 66 74 20 43 (C) Microsoft C 0070: 6f 72 70 6f 72 61 74 69 6f 6e 2e 20 20 41 6c 6c orporation. All 0080: 20 52 69 67 68 74 73 20 52 65 73 65 72 76 65 64 Rights Reserved 0090: 2e 0d 0a 20 2a 0d 0a 20 2a 20 20 46 69 6c 65 3a ... *.. * File: 00a0: 20 20 20 64 33 64 39 2e 68 0d 0a 20 2a 20 20 43 d3d9.h.. * C 00b0: 6f 6e 74 65 6e 74 3a 20 20 20 20 44 69 72 65 63 ontent: Direc 00c0: 74 33 44 20 69 6e 63 6c 75 64 65 20 66 69 6c 65 t3D include file 00d0: 0d 0a 20 2a 0d 0a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a .. *.. ********* 00e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 00f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0100: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0110: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0120: 2a 2a 2a 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e ***/..module win 0130: 33 32 2e 64 69 72 65 63 74 78 2e 64 33 64 39 3b 32.directx.d3d9; 0140: 0d 0a 0d 0a 69 6d 70 6f 72 74 20 77 69 6e 33 32 ....import win32 0150: 2e 77 69 6e 64 6f 77 73 3b 0d 0a 70 75 62 6c 69 .windows;..publi 0160: 63 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 64 c import win32.d 0170: 69 72 65 63 74 78 2e 64 33 64 39 74 79 70 65 73 irectx.d3d9types 0180: 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 6f 72 74 ;..public import 0190: 20 77 69 6e 33 32 2e 64 69 72 65 63 74 78 2e 64 win32.directx.d 01a0: 33 64 39 63 61 70 73 3b 0d 0a 0d 0a 63 6f 6e 73 3d9caps;....cons 01b0: 74 20 44 49 52 45 43 54 33 44 5f 56 45 52 53 49 t DIRECT3D_VERSI 01c0: 4f 4e 20 3d 20 30 78 30 39 30 30 3b 0d 0a 0d 0a ON = 0x0900;.... 01d0: 2f 2a 2a 54 68 69 73 20 69 64 65 6e 74 69 66 69 /**This identifi 01e0: 65 72 20 69 73 20 70 61 73 73 65 64 20 74 6f 20 er is passed to 01f0: 44 69 72 65 63 74 33 44 43 72 65 61 74 65 39 20 Direct3DCreate9 0200: 69 6e 20 6f 72 64 65 72 20 74 6f 20 65 6e 73 75 in order to ensu 0210: 72 65 20 74 68 61 74 20 61 6e 0d 0a 20 2a 20 61 re that an.. * a 0220: 70 70 6c 69 63 61 74 69 6f 6e 20 77 61 73 20 62 pplication was b 0230: 75 69 6c 74 20 61 67 61 69 6e 73 74 20 74 68 65 uilt against the 0240: 20 63 6f 72 72 65 63 74 20 68 65 61 64 65 72 20 correct header 0250: 66 69 6c 65 73 2e 20 54 68 69 73 20 6e 75 6d 62 files. This numb 0260: 65 72 20 69 73 0d 0a 20 2a 20 69 6e 63 72 65 6d er is.. * increm 0270: 65 6e 74 65 64 20 77 68 65 6e 65 76 65 72 20 61 ented whenever a 0280: 20 68 65 61 64 65 72 20 28 6f 72 20 6f 74 68 65 header (or othe 0290: 72 29 20 63 68 61 6e 67 65 20 77 6f 75 6c 64 20 r) change would 02a0: 72 65 71 75 69 72 65 20 61 70 70 6c 69 63 61 74 require applicat 02b0: 69 6f 6e 73 0d 0a 20 2a 20 74 6f 20 62 65 20 72 ions.. * to be r 02c0: 65 62 75 69 6c 74 2e 20 49 66 20 74 68 65 20 76 ebuilt. If the v 02d0: 65 72 73 69 6f 6e 20 64 6f 65 73 6e 27 74 20 6d ersion doesn't m 02e0: 61 74 63 68 2c 20 44 69 72 65 63 74 33 44 43 72 atch, Direct3DCr 02f0: 65 61 74 65 39 20 77 69 6c 6c 20 66 61 69 6c 2e eate9 will fail. 0300: 0d 0a 20 2a 20 28 54 68 65 20 6e 75 6d 62 65 72 .. * (The number 0310: 20 69 74 73 65 6c 66 20 68 61 73 20 6e 6f 20 6d itself has no m 0320: 65 61 6e 69 6e 67 2e 29 2a 2f 0d 0a 0d 0a 64 65 eaning.)*/....de 0330: 62 75 67 20 7b 0d 0a 20 20 20 20 63 6f 6e 73 74 bug {.. const 0340: 20 44 33 44 5f 53 44 4b 5f 56 45 52 53 49 4f 4e D3D_SDK_VERSION 0350: 20 3d 20 28 33 32 20 7c 20 30 78 38 30 30 30 30 = (32 | 0x80000 0360: 30 30 30 29 3b 0d 0a 20 20 20 20 63 6f 6e 73 74 000);.. const 0370: 20 44 33 44 39 62 5f 53 44 4b 5f 56 45 52 53 49 D3D9b_SDK_VERSI 0380: 4f 4e 20 3d 20 28 33 31 20 7c 20 30 78 38 30 30 ON = (31 | 0x800 0390: 30 30 30 30 30 29 3b 0d 0a 7d 0d 0a 65 6c 73 65 00000);..}..else 03a0: 20 7b 0d 0a 20 20 20 20 63 6f 6e 73 74 20 44 33 {.. const D3 03b0: 44 5f 53 44 4b 5f 56 45 52 53 49 4f 4e 20 3d 20 D_SDK_VERSION = 03c0: 33 32 3b 0d 0a 20 20 20 20 63 6f 6e 73 74 20 44 32;.. const D 03d0: 33 44 39 62 5f 53 44 4b 5f 56 45 52 53 49 4f 4e 3D9b_SDK_VERSION 03e0: 20 3d 20 33 31 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 = 31;..}..../* 03f0: 49 49 44 5f 49 44 69 72 65 63 74 33 44 39 20 2a IID_IDirect3D9 * 0400: 2f 0d 0a 2f 2a 20 7b 38 31 42 44 43 42 43 41 2d /../* {81BDCBCA- 0410: 36 34 44 34 2d 34 32 36 64 2d 41 45 38 44 2d 41 64D4-426d-AE8D-A 0420: 44 30 31 34 37 46 34 32 37 35 43 7d 20 2a 2f 0d D0147F4275C} */. 0430: 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 .extern (C) cons 0440: 74 20 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 t GUID IID_IDire 0450: 63 74 33 44 39 20 3d 20 7b 20 30 78 38 31 62 64 ct3D9 = { 0x81bd 0460: 63 62 63 61 2c 20 30 78 36 34 64 34 2c 20 30 78 cbca, 0x64d4, 0x 0470: 34 32 36 64 2c 20 5b 30 78 61 65 2c 20 30 78 38 426d, [0xae, 0x8 0480: 64 2c 20 30 78 61 64 2c 20 30 78 31 2c 20 30 78 d, 0xad, 0x1, 0x 0490: 34 37 2c 20 30 78 66 34 2c 20 30 78 32 37 2c 20 47, 0xf4, 0x27, 04a0: 30 78 35 63 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 0x5c] };..../* I 04b0: 49 44 5f 49 44 69 72 65 63 74 33 44 44 65 76 69 ID_IDirect3DDevi 04c0: 63 65 39 20 2a 2f 0d 0a 2f 2f 20 7b 44 30 32 32 ce9 */..// {D022 04d0: 33 42 39 36 2d 42 46 37 41 2d 34 33 66 64 2d 39 3B96-BF7A-43fd-9 04e0: 32 42 44 2d 41 34 33 42 30 44 38 32 42 39 45 42 2BD-A43B0D82B9EB 04f0: 7d 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 43 29 } */..extern (C) 0500: 20 63 6f 6e 73 74 20 47 55 49 44 20 49 49 44 5f const GUID IID_ 0510: 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65 39 IDirect3DDevice9 0520: 20 3d 20 7b 20 30 78 64 30 32 32 33 62 39 36 2c = { 0xd0223b96, 0530: 20 30 78 62 66 37 61 2c 20 30 78 34 33 66 64 2c 0xbf7a, 0x43fd, 0540: 20 5b 30 78 39 32 2c 20 30 78 62 64 2c 20 30 78 [0x92, 0xbd, 0x 0550: 61 34 2c 20 30 78 33 62 2c 20 30 78 64 2c 20 30 a4, 0x3b, 0xd, 0 0560: 78 38 32 2c 20 30 78 62 39 2c 20 30 78 65 62 5d x82, 0xb9, 0xeb] 0570: 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 49 44 };..../* IID_ID 0580: 69 72 65 63 74 33 44 52 65 73 6f 75 72 63 65 39 irect3DResource9 0590: 20 2a 2f 0d 0a 2f 2f 20 7b 30 35 45 45 43 30 35 */..// {05EEC05 05a0: 44 2d 38 46 37 44 2d 34 33 36 32 2d 42 39 39 39 D-8F7D-4362-B999 05b0: 2d 44 31 42 41 46 33 35 37 43 37 30 34 7d 0d 0a -D1BAF357C704}.. 05c0: 65 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 74 extern (C) const 05d0: 20 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 63 GUID IID_IDirec 05e0: 74 33 44 52 65 73 6f 75 72 63 65 39 20 3d 20 7b t3DResource9 = { 05f0: 20 30 78 30 35 65 65 63 30 35 64 2c 20 30 78 38 0x05eec05d, 0x8 0600: 66 37 64 2c 20 30 78 34 33 36 32 2c 20 5b 30 78 f7d, 0x4362, [0x 0610: 62 39 2c 20 30 78 39 39 2c 20 30 78 64 31 2c 20 b9, 0x99, 0xd1, 0620: 30 78 62 61 2c 20 30 78 66 33 2c 20 30 78 35 37 0xba, 0xf3, 0x57 0630: 2c 20 30 78 63 37 2c 20 30 78 30 34 5d 20 7d 3b , 0xc7, 0x04] }; 0640: 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 49 44 69 72 65 ..../* IID_IDire 0650: 63 74 33 44 42 61 73 65 54 65 78 74 75 72 65 39 ct3DBaseTexture9 0660: 20 2a 2f 0d 0a 2f 2a 20 7b 35 38 30 43 41 38 37 */../* {580CA87 0670: 45 2d 31 44 33 43 2d 34 64 35 34 2d 39 39 31 44 E-1D3C-4d54-991D 0680: 2d 42 37 44 33 45 33 43 32 39 38 43 45 7d 20 2a -B7D3E3C298CE} * 0690: 2f 0d 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f /..extern (C) co 06a0: 6e 73 74 20 47 55 49 44 20 49 49 44 5f 49 44 69 nst GUID IID_IDi 06b0: 72 65 63 74 33 44 42 61 73 65 54 65 78 74 75 72 rect3DBaseTextur 06c0: 65 39 20 3d 20 7b 20 30 78 35 38 30 63 61 38 37 e9 = { 0x580ca87 06d0: 65 2c 20 30 78 31 64 33 63 2c 20 30 78 34 64 35 e, 0x1d3c, 0x4d5 06e0: 34 2c 20 5b 30 78 39 39 2c 20 30 78 31 64 2c 20 4, [0x99, 0x1d, 06f0: 30 78 62 37 2c 20 30 78 64 33 2c 20 30 78 65 33 0xb7, 0xd3, 0xe3 0700: 2c 20 30 78 63 32 2c 20 30 78 39 38 2c 20 30 78 , 0xc2, 0x98, 0x 0710: 63 65 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 ce] };..../* IID 0720: 5f 49 44 69 72 65 63 74 33 44 54 65 78 74 75 72 _IDirect3DTextur 0730: 65 39 20 2a 2f 0d 0a 2f 2a 20 7b 38 35 43 33 31 e9 */../* {85C31 0740: 32 32 37 2d 33 44 45 35 2d 34 66 30 30 2d 39 42 227-3DE5-4f00-9B 0750: 33 41 2d 46 31 31 41 43 33 38 43 31 38 42 35 7d 3A-F11AC38C18B5} 0760: 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 43 29 20 */..extern (C) 0770: 63 6f 6e 73 74 20 47 55 49 44 20 49 49 44 5f 49 const GUID IID_I 0780: 44 69 72 65 63 74 33 44 54 65 78 74 75 72 65 39 Direct3DTexture9 0790: 20 3d 20 7b 20 30 78 38 35 63 33 31 32 32 37 2c = { 0x85c31227, 07a0: 20 30 78 33 64 65 35 2c 20 30 78 34 66 30 30 2c 0x3de5, 0x4f00, 07b0: 20 5b 30 78 39 62 2c 20 30 78 33 61 2c 20 30 78 [0x9b, 0x3a, 0x 07c0: 66 31 2c 20 30 78 31 61 2c 20 30 78 63 33 2c 20 f1, 0x1a, 0xc3, 07d0: 30 78 38 63 2c 20 30 78 31 38 2c 20 30 78 62 35 0x8c, 0x18, 0xb5 07e0: 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 49 ] };..../* IID_I 07f0: 44 69 72 65 63 74 33 44 43 75 62 65 54 65 78 74 Direct3DCubeText 0800: 75 72 65 39 20 2a 2f 0d 0a 2f 2a 20 7b 46 46 46 ure9 */../* {FFF 0810: 33 32 46 38 31 2d 44 39 35 33 2d 34 37 33 61 2d 32F81-D953-473a- 0820: 39 32 32 33 2d 39 33 44 36 35 32 41 42 41 39 33 9223-93D652ABA93 0830: 46 7d 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 43 F} */..extern (C 0840: 29 20 63 6f 6e 73 74 20 47 55 49 44 20 49 49 44 ) const GUID IID 0850: 5f 49 44 69 72 65 63 74 33 44 43 75 62 65 54 65 _IDirect3DCubeTe 0860: 78 74 75 72 65 39 20 3d 20 7b 20 30 78 66 66 66 xture9 = { 0xfff 0870: 33 32 66 38 31 2c 20 30 78 64 39 35 33 2c 20 30 32f81, 0xd953, 0 0880: 78 34 37 33 61 2c 20 5b 30 78 39 32 2c 20 30 78 x473a, [0x92, 0x 0890: 32 33 2c 20 30 78 39 33 2c 20 30 78 64 36 2c 20 23, 0x93, 0xd6, 08a0: 30 78 35 32 2c 20 30 78 61 62 2c 20 30 78 61 39 0x52, 0xab, 0xa9 08b0: 2c 20 30 78 33 66 5d 20 7d 3b 0d 0a 0d 0a 2f 2a , 0x3f] };..../* 08c0: 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 56 6f IID_IDirect3DVo 08d0: 6c 75 6d 65 54 65 78 74 75 72 65 39 20 2a 2f 0d lumeTexture9 */. 08e0: 0a 2f 2a 20 7b 32 35 31 38 35 32 36 43 2d 45 37 ./* {2518526C-E7 08f0: 38 39 2d 34 31 31 31 2d 41 37 42 39 2d 34 37 45 89-4111-A7B9-47E 0900: 46 33 32 38 44 31 33 45 36 7d 20 2a 2f 0d 0a 65 F328D13E6} */..e 0910: 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 xtern (C) const 0920: 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 63 74 GUID IID_IDirect 0930: 33 44 56 6f 6c 75 6d 65 54 65 78 74 75 72 65 39 3DVolumeTexture9 0940: 20 3d 20 7b 20 30 78 32 35 31 38 35 32 36 63 2c = { 0x2518526c, 0950: 20 30 78 65 37 38 39 2c 20 30 78 34 31 31 31 2c 0xe789, 0x4111, 0960: 20 5b 30 78 61 37 2c 20 30 78 62 39 2c 20 30 78 [0xa7, 0xb9, 0x 0970: 34 37 2c 20 30 78 65 66 2c 20 30 78 33 32 2c 20 47, 0xef, 0x32, 0980: 30 78 38 64 2c 20 30 78 31 33 2c 20 30 78 65 36 0x8d, 0x13, 0xe6 0990: 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 49 ] };..../* IID_I 09a0: 44 69 72 65 63 74 33 44 56 65 72 74 65 78 42 75 Direct3DVertexBu 09b0: 66 66 65 72 39 20 2a 2f 0d 0a 2f 2a 20 7b 42 36 ffer9 */../* {B6 09c0: 34 42 42 31 42 35 2d 46 44 37 30 2d 34 64 66 36 4BB1B5-FD70-4df6 09d0: 2d 42 46 39 31 2d 31 39 44 30 41 31 32 34 35 35 -BF91-19D0A12455 09e0: 45 33 7d 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 E3} */..extern ( 09f0: 43 29 20 63 6f 6e 73 74 20 47 55 49 44 20 49 49 C) const GUID II 0a00: 44 5f 49 44 69 72 65 63 74 33 44 56 65 72 74 65 D_IDirect3DVerte 0a10: 78 42 75 66 66 65 72 39 20 3d 20 7b 20 30 78 62 xBuffer9 = { 0xb 0a20: 36 34 62 62 31 62 35 2c 20 30 78 66 64 37 30 2c 64bb1b5, 0xfd70, 0a30: 20 30 78 34 64 66 36 2c 20 5b 30 78 62 66 2c 20 0x4df6, [0xbf, 0a40: 30 78 39 31 2c 20 30 78 31 39 2c 20 30 78 64 30 0x91, 0x19, 0xd0 0a50: 2c 20 30 78 61 31 2c 20 30 78 32 34 2c 20 30 78 , 0xa1, 0x24, 0x 0a60: 35 35 2c 20 30 78 65 33 5d 20 7d 3b 0d 0a 0d 0a 55, 0xe3] };.... 0a70: 2f 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 /* IID_IDirect3D 0a80: 49 6e 64 65 78 42 75 66 66 65 72 39 20 2a 2f 0d IndexBuffer9 */. 0a90: 0a 2f 2a 20 7b 37 43 39 44 44 36 35 45 2d 44 33 ./* {7C9DD65E-D3 0aa0: 46 37 2d 34 35 32 39 2d 41 43 45 45 2d 37 38 35 F7-4529-ACEE-785 0ab0: 38 33 30 41 43 44 45 33 35 7d 20 2a 2f 0d 0a 65 830ACDE35} */..e 0ac0: 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 xtern (C) const 0ad0: 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 63 74 GUID IID_IDirect 0ae0: 33 44 49 6e 64 65 78 42 75 66 66 65 72 39 20 3d 3DIndexBuffer9 = 0af0: 20 7b 20 30 78 37 63 39 64 64 36 35 65 2c 20 30 { 0x7c9dd65e, 0 0b00: 78 64 33 66 37 2c 20 30 78 34 35 32 39 2c 20 5b xd3f7, 0x4529, [ 0b10: 30 78 61 63 2c 20 30 78 65 65 2c 20 30 78 37 38 0xac, 0xee, 0x78 0b20: 2c 20 30 78 35 38 2c 20 30 78 33 30 2c 20 30 78 , 0x58, 0x30, 0x 0b30: 61 63 2c 20 30 78 64 65 2c 20 30 78 33 35 5d 20 ac, 0xde, 0x35] 0b40: 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 49 44 69 };..../* IID_IDi 0b50: 72 65 63 74 33 44 53 75 72 66 61 63 65 39 20 2a rect3DSurface9 * 0b60: 2f 0d 0a 2f 2a 20 7b 30 43 46 42 41 46 33 41 2d /../* {0CFBAF3A- 0b70: 39 46 46 36 2d 34 32 39 61 2d 39 39 42 33 2d 41 9FF6-429a-99B3-A 0b80: 32 37 39 36 41 46 38 42 38 39 42 7d 20 2a 2f 0d 2796AF8B89B} */. 0b90: 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 .extern (C) cons 0ba0: 74 20 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 t GUID IID_IDire 0bb0: 63 74 33 44 53 75 72 66 61 63 65 39 20 3d 20 7b ct3DSurface9 = { 0bc0: 20 30 78 63 66 62 61 66 33 61 2c 20 30 78 39 66 0xcfbaf3a, 0x9f 0bd0: 66 36 2c 20 30 78 34 32 39 61 2c 20 5b 30 78 39 f6, 0x429a, [0x9 0be0: 39 2c 20 30 78 62 33 2c 20 30 78 61 32 2c 20 30 9, 0xb3, 0xa2, 0 0bf0: 78 37 39 2c 20 30 78 36 61 2c 20 30 78 66 38 2c x79, 0x6a, 0xf8, 0c00: 20 30 78 62 38 2c 20 30 78 39 62 5d 20 7d 3b 0d 0xb8, 0x9b] };. 0c10: 0a 0d 0a 2f 2a 20 49 49 44 5f 49 44 69 72 65 63 .../* IID_IDirec 0c20: 74 33 44 56 6f 6c 75 6d 65 39 20 2a 2f 0d 0a 2f t3DVolume9 */../ 0c30: 2a 20 7b 32 34 46 34 31 36 45 36 2d 31 46 36 37 * {24F416E6-1F67 0c40: 2d 34 61 61 37 2d 42 38 38 45 2d 44 33 33 46 36 -4aa7-B88E-D33F6 0c50: 46 33 31 32 38 41 31 7d 20 2a 2f 0d 0a 65 78 74 F3128A1} */..ext 0c60: 65 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 47 55 ern (C) const GU 0c70: 49 44 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 ID IID_IDirect3D 0c80: 56 6f 6c 75 6d 65 39 20 3d 20 7b 20 30 78 32 34 Volume9 = { 0x24 0c90: 66 34 31 36 65 36 2c 20 30 78 31 66 36 37 2c 20 f416e6, 0x1f67, 0ca0: 30 78 34 61 61 37 2c 20 5b 30 78 62 38 2c 20 30 0x4aa7, [0xb8, 0 0cb0: 78 38 65 2c 20 30 78 64 33 2c 20 30 78 33 66 2c x8e, 0xd3, 0x3f, 0cc0: 20 30 78 36 66 2c 20 30 78 33 31 2c 20 30 78 32 0x6f, 0x31, 0x2 0cd0: 38 2c 20 30 78 61 31 5d 20 7d 3b 0d 0a 0d 0a 2f 8, 0xa1] };..../ 0ce0: 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 53 * IID_IDirect3DS 0cf0: 77 61 70 43 68 61 69 6e 39 20 2a 2f 0d 0a 2f 2a wapChain9 */../* 0d00: 20 7b 37 39 34 39 35 30 46 32 2d 41 44 46 43 2d {794950F2-ADFC- 0d10: 34 35 38 61 2d 39 30 35 45 2d 31 30 41 31 30 42 458a-905E-10A10B 0d20: 30 42 35 30 33 42 7d 20 2a 2f 0d 0a 65 78 74 65 0B503B} */..exte 0d30: 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 47 55 49 rn (C) const GUI 0d40: 44 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 53 D IID_IDirect3DS 0d50: 77 61 70 43 68 61 69 6e 39 20 3d 20 7b 20 30 78 wapChain9 = { 0x 0d60: 37 39 34 39 35 30 66 32 2c 20 30 78 61 64 66 63 794950f2, 0xadfc 0d70: 2c 20 30 78 34 35 38 61 2c 20 5b 30 78 39 30 2c , 0x458a, [0x90, 0d80: 20 30 78 35 65 2c 20 30 78 31 30 2c 20 30 78 61 0x5e, 0x10, 0xa 0d90: 31 2c 20 30 78 62 2c 20 30 78 62 2c 20 30 78 35 1, 0xb, 0xb, 0x5 0da0: 30 2c 20 30 78 33 62 5d 20 7d 3b 0d 0a 0d 0a 2f 0, 0x3b] };..../ 0db0: 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 56 * IID_IDirect3DV 0dc0: 65 72 74 65 78 44 65 63 6c 61 72 61 74 69 6f 6e ertexDeclaration 0dd0: 39 20 2a 2f 0d 0a 2f 2a 20 7b 44 44 31 33 43 35 9 */../* {DD13C5 0de0: 39 43 2d 33 36 46 41 2d 34 30 39 38 2d 41 38 46 9C-36FA-4098-A8F 0df0: 42 2d 43 37 45 44 33 39 44 43 38 35 34 36 7d 20 B-C7ED39DC8546} 0e00: 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 43 29 20 63 */..extern (C) c 0e10: 6f 6e 73 74 20 47 55 49 44 20 49 49 44 5f 49 44 onst GUID IID_ID 0e20: 69 72 65 63 74 33 44 56 65 72 74 65 78 44 65 63 irect3DVertexDec 0e30: 6c 61 72 61 74 69 6f 6e 39 20 3d 20 7b 20 30 78 laration9 = { 0x 0e40: 64 64 31 33 63 35 39 63 2c 20 30 78 33 36 66 61 dd13c59c, 0x36fa 0e50: 2c 20 30 78 34 30 39 38 2c 20 5b 30 78 61 38 2c , 0x4098, [0xa8, 0e60: 20 30 78 66 62 2c 20 30 78 63 37 2c 20 30 78 65 0xfb, 0xc7, 0xe 0e70: 64 2c 20 30 78 33 39 2c 20 30 78 64 63 2c 20 30 d, 0x39, 0xdc, 0 0e80: 78 38 35 2c 20 30 78 34 36 5d 20 7d 3b 0d 0a 0d x85, 0x46] };... 0e90: 0a 2f 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 ./* IID_IDirect3 0ea0: 44 56 65 72 74 65 78 53 68 61 64 65 72 39 20 2a DVertexShader9 * 0eb0: 2f 0d 0a 2f 2a 20 7b 45 46 43 35 35 35 37 45 2d /../* {EFC5557E- 0ec0: 36 32 36 35 2d 34 36 31 33 2d 38 41 39 34 2d 34 6265-4613-8A94-4 0ed0: 33 38 35 37 38 38 39 45 42 33 36 7d 20 2a 2f 0d 3857889EB36} */. 0ee0: 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f 6e 73 .extern (C) cons 0ef0: 74 20 47 55 49 44 20 49 49 44 5f 49 44 69 72 65 t GUID IID_IDire 0f00: 63 74 33 44 56 65 72 74 65 78 53 68 61 64 65 72 ct3DVertexShader 0f10: 39 20 3d 20 7b 20 30 78 65 66 63 35 35 35 37 65 9 = { 0xefc5557e 0f20: 2c 20 30 78 36 32 36 35 2c 20 30 78 34 36 31 33 , 0x6265, 0x4613 0f30: 2c 20 5b 30 78 38 61 2c 20 30 78 39 34 2c 20 30 , [0x8a, 0x94, 0 0f40: 78 34 33 2c 20 30 78 38 35 2c 20 30 78 37 38 2c x43, 0x85, 0x78, 0f50: 20 30 78 38 39 2c 20 30 78 65 62 2c 20 30 78 33 0x89, 0xeb, 0x3 0f60: 36 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 49 49 44 5f 6] };..../* IID_ 0f70: 49 44 69 72 65 63 74 33 44 50 69 78 65 6c 53 68 IDirect3DPixelSh 0f80: 61 64 65 72 39 20 2a 2f 0d 0a 2f 2a 20 7b 36 44 ader9 */../* {6D 0f90: 33 42 44 42 44 43 2d 35 42 30 32 2d 34 34 31 35 3BDBDC-5B02-4415 0fa0: 2d 42 38 35 32 2d 43 45 35 45 38 42 43 43 42 32 -B852-CE5E8BCCB2 0fb0: 38 39 7d 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 89} */..extern ( 0fc0: 43 29 20 63 6f 6e 73 74 20 47 55 49 44 20 49 49 C) const GUID II 0fd0: 44 5f 49 44 69 72 65 63 74 33 44 50 69 78 65 6c D_IDirect3DPixel 0fe0: 53 68 61 64 65 72 39 20 3d 20 7b 20 30 78 36 64 Shader9 = { 0x6d 0ff0: 33 62 64 62 64 63 2c 20 30 78 35 62 30 32 2c 20 3bdbdc, 0x5b02, 1000: 30 78 34 34 31 35 2c 20 5b 30 78 62 38 2c 20 30 0x4415, [0xb8, 0 1010: 78 35 32 2c 20 30 78 63 65 2c 20 30 78 35 65 2c x52, 0xce, 0x5e, 1020: 20 30 78 38 62 2c 20 30 78 63 63 2c 20 30 78 62 0x8b, 0xcc, 0xb 1030: 32 2c 20 30 78 38 39 5d 20 7d 3b 0d 0a 0d 0a 2f 2, 0x89] };..../ 1040: 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 53 * IID_IDirect3DS 1050: 74 61 74 65 42 6c 6f 63 6b 39 20 2a 2f 0d 0a 2f tateBlock9 */../ 1060: 2a 20 7b 42 30 37 43 34 46 45 35 2d 33 31 30 44 * {B07C4FE5-310D 1070: 2d 34 62 61 38 2d 41 32 33 43 2d 34 46 30 46 32 -4ba8-A23C-4F0F2 1080: 30 36 46 32 31 38 42 7d 20 2a 2f 0d 0a 65 78 74 06F218B} */..ext 1090: 65 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 47 55 ern (C) const GU 10a0: 49 44 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 ID IID_IDirect3D 10b0: 53 74 61 74 65 42 6c 6f 63 6b 39 20 3d 20 7b 20 StateBlock9 = { 10c0: 30 78 62 30 37 63 34 66 65 35 2c 20 30 78 33 31 0xb07c4fe5, 0x31 10d0: 30 64 2c 20 30 78 34 62 61 38 2c 20 5b 30 78 61 0d, 0x4ba8, [0xa 10e0: 32 2c 20 30 78 33 63 2c 20 30 78 34 66 2c 20 30 2, 0x3c, 0x4f, 0 10f0: 78 66 2c 20 30 78 32 30 2c 20 30 78 36 66 2c 20 xf, 0x20, 0x6f, 1100: 30 78 32 31 2c 20 30 78 38 62 5d 20 7d 3b 0d 0a 0x21, 0x8b] };.. 1110: 0d 0a 2f 2a 20 49 49 44 5f 49 44 69 72 65 63 74 ../* IID_IDirect 1120: 33 44 51 75 65 72 79 39 20 2a 2f 0d 0a 2f 2a 20 3DQuery9 */../* 1130: 7b 64 39 37 37 31 34 36 30 2d 61 36 39 35 2d 34 {d9771460-a695-4 1140: 66 32 36 2d 62 62 64 33 2d 32 37 62 38 34 30 62 f26-bbd3-27b840b 1150: 35 34 31 63 63 7d 20 2a 2f 0d 0a 65 78 74 65 72 541cc} */..exter 1160: 6e 20 28 43 29 20 63 6f 6e 73 74 20 47 55 49 44 n (C) const GUID 1170: 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 51 75 IID_IDirect3DQu 1180: 65 72 79 39 20 3d 20 7b 20 30 78 64 39 37 37 31 ery9 = { 0xd9771 1190: 34 36 30 2c 20 30 78 61 36 39 35 2c 20 30 78 34 460, 0xa695, 0x4 11a0: 66 32 36 2c 20 5b 30 78 62 62 2c 20 30 78 64 33 f26, [0xbb, 0xd3 11b0: 2c 20 30 78 32 37 2c 20 30 78 62 38 2c 20 30 78 , 0x27, 0xb8, 0x 11c0: 34 30 2c 20 30 78 62 35 2c 20 30 78 34 31 2c 20 40, 0xb5, 0x41, 11d0: 30 78 63 63 5d 20 7d 3b 0d 0a 0d 0a 0d 0a 2f 2a 0xcc] };....../* 11e0: 20 49 49 44 5f 48 65 6c 70 65 72 4e 61 6d 65 20 IID_HelperName 11f0: 2a 2f 0d 0a 2f 2a 20 7b 45 34 41 33 36 37 32 33 */../* {E4A36723 1200: 2d 46 44 46 45 2d 34 62 32 32 2d 42 31 34 36 2d -FDFE-4b22-B146- 1210: 33 43 30 34 43 30 37 46 34 43 43 38 7d 20 2a 2f 3C04C07F4CC8} */ 1220: 0d 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f 6e ..extern (C) con 1230: 73 74 20 47 55 49 44 20 49 49 44 5f 48 65 6c 70 st GUID IID_Help 1240: 65 72 4e 61 6d 65 20 3d 20 7b 20 30 78 65 34 61 erName = { 0xe4a 1250: 33 36 37 32 33 2c 20 30 78 66 64 66 65 2c 20 30 36723, 0xfdfe, 0 1260: 78 34 62 32 32 2c 20 5b 30 78 62 31 2c 20 30 78 x4b22, [0xb1, 0x 1270: 34 36 2c 20 30 78 33 63 2c 20 30 78 34 2c 20 30 46, 0x3c, 0x4, 0 1280: 78 63 30 2c 20 30 78 37 66 2c 20 30 78 34 63 2c xc0, 0x7f, 0x4c, 1290: 20 30 78 63 38 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 0xc8] };..../* 12a0: 49 49 44 5f 49 44 69 72 65 63 74 33 44 39 45 78 IID_IDirect3D9Ex 12b0: 20 2a 2f 0d 0a 2f 2a 20 7b 30 32 31 37 37 32 34 */../* {0217724 12c0: 31 2d 36 39 46 43 2d 34 30 30 43 2d 38 46 46 31 1-69FC-400C-8FF1 12d0: 2d 39 33 41 34 34 44 46 36 38 36 31 44 7d 20 2a -93A44DF6861D} * 12e0: 2f 0d 0a 65 78 74 65 72 6e 20 28 43 29 20 63 6f /..extern (C) co 12f0: 6e 73 74 20 47 55 49 44 20 49 49 44 5f 49 44 69 nst GUID IID_IDi 1300: 72 65 63 74 33 44 39 45 78 20 3d 20 7b 20 30 78 rect3D9Ex = { 0x 1310: 30 32 31 37 37 32 34 31 2c 20 30 78 36 39 46 43 02177241, 0x69FC 1320: 2c 20 30 78 34 30 30 43 2c 20 5b 30 78 38 46 2c , 0x400C, [0x8F, 1330: 20 30 78 46 31 2c 20 30 78 39 33 2c 20 30 78 41 0xF1, 0x93, 0xA 1340: 34 2c 20 30 78 34 44 2c 20 30 78 46 36 2c 20 30 4, 0x4D, 0xF6, 0 1350: 78 38 36 2c 20 30 78 31 44 5d 20 7d 3b 0d 0a 0d x86, 0x1D] };... 1360: 0a 2f 2a 20 49 49 44 5f 49 44 69 72 65 63 74 33 ./* IID_IDirect3 1370: 44 44 65 76 69 63 65 39 45 78 20 2a 2f 0d 0a 2f DDevice9Ex */../ 1380: 2f 20 7b 42 31 38 42 31 30 43 45 2d 32 36 34 39 / {B18B10CE-2649 1390: 2d 34 30 35 61 2d 38 37 30 46 2d 39 35 46 37 37 -405a-870F-95F77 13a0: 37 44 34 33 31 33 41 7d 0d 0a 65 78 74 65 72 6e 7D4313A}..extern 13b0: 20 28 43 29 20 63 6f 6e 73 74 20 47 55 49 44 20 (C) const GUID 13c0: 49 49 44 5f 49 44 69 72 65 63 74 33 44 44 65 76 IID_IDirect3DDev 13d0: 69 63 65 39 45 78 20 3d 20 7b 20 30 78 62 31 38 ice9Ex = { 0xb18 13e0: 62 31 30 63 65 2c 20 30 78 32 36 34 39 2c 20 30 b10ce, 0x2649, 0 13f0: 78 34 30 35 61 2c 20 5b 30 78 38 37 2c 20 30 78 x405a, [0x87, 0x 1400: 66 2c 20 30 78 39 35 2c 20 30 78 66 37 2c 20 30 f, 0x95, 0xf7, 0 1410: 78 37 37 2c 20 30 78 64 34 2c 20 30 78 33 31 2c x77, 0xd4, 0x31, 1420: 20 30 78 33 61 5d 20 7d 3b 0d 0a 0d 0a 2f 2a 20 0x3a] };..../* 1430: 49 49 44 5f 49 44 69 72 65 63 74 33 44 53 77 61 IID_IDirect3DSwa 1440: 70 43 68 61 69 6e 39 45 78 20 2a 2f 0d 0a 2f 2a pChain9Ex */../* 1450: 20 7b 39 31 38 38 36 43 41 46 2d 31 43 33 44 2d {91886CAF-1C3D- 1460: 34 64 32 65 2d 41 30 41 42 2d 33 45 34 43 37 44 4d2e-A0AB-3E4C7D 1470: 38 44 33 33 30 33 7d 20 2a 2f 0d 0a 65 78 74 65 8D3303} */..exte 1480: 72 6e 20 28 43 29 20 63 6f 6e 73 74 20 47 55 49 rn (C) const GUI 1490: 44 20 49 49 44 5f 49 44 69 72 65 63 74 33 44 53 D IID_IDirect3DS 14a0: 77 61 70 43 68 61 69 6e 39 45 78 20 3d 20 7b 20 wapChain9Ex = { 14b0: 30 78 39 31 38 38 36 63 61 66 2c 20 30 78 31 63 0x91886caf, 0x1c 14c0: 33 64 2c 20 30 78 34 64 32 65 2c 20 5b 30 78 61 3d, 0x4d2e, [0xa 14d0: 30 2c 20 30 78 61 62 2c 20 30 78 33 65 2c 20 30 0, 0xab, 0x3e, 0 14e0: 78 34 63 2c 20 30 78 37 64 2c 20 30 78 38 64 2c x4c, 0x7d, 0x8d, 14f0: 20 30 78 33 33 2c 20 30 78 30 33 5d 20 7d 3b 0d 0x33, 0x03] };. 1500: 0a 0d 0a 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 43 .......extern (C 1510: 29 3a 0d 0a 2f 2a 2a 0d 0a 20 2a 20 44 4c 4c 20 ):../**.. * DLL 1520: 46 75 6e 63 74 69 6f 6e 20 66 6f 72 20 63 72 65 Function for cre 1530: 61 74 69 6e 67 20 61 20 44 69 72 65 63 74 33 44 ating a Direct3D 1540: 39 20 6f 62 6a 65 63 74 2e 20 54 68 69 73 20 6f 9 object. This o 1550: 62 6a 65 63 74 20 73 75 70 70 6f 72 74 73 0d 0a bject supports.. 1560: 20 2a 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 61 * enumeration a 1570: 6e 64 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 72 nd allows the cr 1580: 65 61 74 69 6f 6e 20 6f 66 20 44 69 72 65 63 74 eation of Direct 1590: 33 44 44 65 76 69 63 65 39 20 6f 62 6a 65 63 74 3DDevice9 object 15a0: 73 2e 0d 0a 20 2a 20 50 61 73 73 20 74 68 65 20 s... * Pass the 15b0: 76 61 6c 75 65 20 6f 66 20 74 68 65 20 63 6f 6e value of the con 15c0: 73 74 61 6e 74 20 44 33 44 5f 53 44 4b 5f 56 45 stant D3D_SDK_VE 15d0: 52 53 49 4f 4e 20 74 6f 20 74 68 69 73 20 66 75 RSION to this fu 15e0: 6e 63 74 69 6f 6e 2c 20 73 6f 0d 0a 20 2a 20 74 nction, so.. * t 15f0: 68 61 74 20 74 68 65 20 72 75 6e 2d 74 69 6d 65 hat the run-time 1600: 20 63 61 6e 20 76 61 6c 69 64 61 74 65 20 74 68 can validate th 1610: 61 74 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 at your applicat 1620: 69 6f 6e 20 77 61 73 20 63 6f 6d 70 69 6c 65 64 ion was compiled 1630: 0d 0a 20 2a 20 61 67 61 69 6e 73 74 20 74 68 65 .. * against the 1640: 20 72 69 67 68 74 20 68 65 61 64 65 72 73 2e 0d right headers.. 1650: 0a 20 2a 2f 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 . */....extern ( 1660: 57 69 6e 64 6f 77 73 29 20 4c 50 44 49 52 45 43 Windows) LPDIREC 1670: 54 33 44 39 20 44 69 72 65 63 74 33 44 43 72 65 T3D9 Direct3DCre 1680: 61 74 65 39 28 55 49 4e 54 20 53 44 4b 56 65 72 ate9(UINT SDKVer 1690: 73 69 6f 6e 29 3b 0d 0a 0d 0a 2f 2a 2a 0d 0a 20 sion);..../**.. 16a0: 2a 20 53 74 75 62 73 20 66 6f 72 20 67 72 61 70 * Stubs for grap 16b0: 68 69 63 73 20 70 72 6f 66 69 6c 69 6e 67 2e 0d hics profiling.. 16c0: 0a 20 2a 2f 0d 0a 65 78 74 65 72 6e 20 28 57 69 . */..extern (Wi 16d0: 6e 64 6f 77 73 29 20 69 6e 74 20 44 33 44 50 45 ndows) int D3DPE 16e0: 52 46 5f 42 65 67 69 6e 45 76 65 6e 74 28 20 44 RF_BeginEvent( D 16f0: 33 44 43 4f 4c 4f 52 20 63 6f 6c 2c 20 4c 50 43 3DCOLOR col, LPC 1700: 57 53 54 52 20 77 73 7a 4e 61 6d 65 20 29 3b 0d WSTR wszName );. 1710: 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 .extern (Windows 1720: 29 20 69 6e 74 20 44 33 44 50 45 52 46 5f 45 6e ) int D3DPERF_En 1730: 64 45 76 65 6e 74 28 29 3b 0d 0a 65 78 74 65 72 dEvent();..exter 1740: 6e 20 28 57 69 6e 64 6f 77 73 29 20 76 6f 69 64 n (Windows) void 1750: 20 44 33 44 50 45 52 46 5f 53 65 74 4d 61 72 6b D3DPERF_SetMark 1760: 65 72 28 20 44 33 44 43 4f 4c 4f 52 20 63 6f 6c er( D3DCOLOR col 1770: 2c 20 4c 50 43 57 53 54 52 20 77 73 7a 4e 61 6d , LPCWSTR wszNam 1780: 65 20 29 3b 0d 0a 65 78 74 65 72 6e 20 28 57 69 e );..extern (Wi 1790: 6e 64 6f 77 73 29 20 76 6f 69 64 20 44 33 44 50 ndows) void D3DP 17a0: 45 52 46 5f 53 65 74 52 65 67 69 6f 6e 28 20 44 ERF_SetRegion( D 17b0: 33 44 43 4f 4c 4f 52 20 63 6f 6c 2c 20 4c 50 43 3DCOLOR col, LPC 17c0: 57 53 54 52 20 77 73 7a 4e 61 6d 65 20 29 3b 0d WSTR wszName );. 17d0: 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 .extern (Windows 17e0: 29 20 42 4f 4f 4c 20 44 33 44 50 45 52 46 5f 51 ) BOOL D3DPERF_Q 17f0: 75 65 72 79 52 65 70 65 61 74 46 72 61 6d 65 28 ueryRepeatFrame( 1800: 29 3b 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 57 69 );....extern (Wi 1810: 6e 64 6f 77 73 29 20 76 6f 69 64 20 44 33 44 50 ndows) void D3DP 1820: 45 52 46 5f 53 65 74 4f 70 74 69 6f 6e 73 28 20 ERF_SetOptions( 1830: 44 57 4f 52 44 20 64 77 4f 70 74 69 6f 6e 73 20 DWORD dwOptions 1840: 29 3b 0d 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 );..extern (Wind 1850: 6f 77 73 29 20 44 57 4f 52 44 20 44 33 44 50 45 ows) DWORD D3DPE 1860: 52 46 5f 47 65 74 53 74 61 74 75 73 28 29 3b 0d RF_GetStatus();. 1870: 0a 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 4c .....interface L 1880: 50 44 49 52 45 43 54 33 44 39 20 3a 20 49 55 6e PDIRECT3D9 : IUn 1890: 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 known..{.. HR 18a0: 45 53 55 4c 54 20 52 65 67 69 73 74 65 72 53 6f ESULT RegisterSo 18b0: 66 74 77 61 72 65 44 65 76 69 63 65 28 76 6f 69 ftwareDevice(voi 18c0: 64 2a 20 70 49 6e 69 74 69 61 6c 69 7a 65 46 75 d* pInitializeFu 18d0: 6e 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 55 49 nction);.. UI 18e0: 4e 54 20 47 65 74 41 64 61 70 74 65 72 43 6f 75 NT GetAdapterCou 18f0: 6e 74 28 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 nt();.. HRESU 1900: 4c 54 20 47 65 74 41 64 61 70 74 65 72 49 64 65 LT GetAdapterIde 1910: 6e 74 69 66 69 65 72 28 20 55 49 4e 54 20 41 64 ntifier( UINT Ad 1920: 61 70 74 65 72 2c 44 57 4f 52 44 20 46 6c 61 67 apter,DWORD Flag 1930: 73 2c 44 33 44 41 44 41 50 54 45 52 5f 49 44 45 s,D3DADAPTER_IDE 1940: 4e 54 49 46 49 45 52 39 2a 20 70 49 64 65 6e 74 NTIFIER9* pIdent 1950: 69 66 69 65 72 29 3b 0d 0a 20 20 20 20 55 49 4e ifier);.. UIN 1960: 54 20 47 65 74 41 64 61 70 74 65 72 4d 6f 64 65 T GetAdapterMode 1970: 43 6f 75 6e 74 28 55 49 4e 54 20 41 64 61 70 74 Count(UINT Adapt 1980: 65 72 2c 44 33 44 46 4f 52 4d 41 54 20 46 6f 72 er,D3DFORMAT For 1990: 6d 61 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 mat);.. HRESU 19a0: 4c 54 20 45 6e 75 6d 41 64 61 70 74 65 72 4d 6f LT EnumAdapterMo 19b0: 64 65 73 28 20 55 49 4e 54 20 41 64 61 70 74 65 des( UINT Adapte 19c0: 72 2c 44 33 44 46 4f 52 4d 41 54 20 46 6f 72 6d r,D3DFORMAT Form 19d0: 61 74 2c 55 49 4e 54 20 4d 6f 64 65 2c 44 33 44 at,UINT Mode,D3D 19e0: 44 49 53 50 4c 41 59 4d 4f 44 45 2a 20 70 4d 6f DISPLAYMODE* pMo 19f0: 64 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c de);.. HRESUL 1a00: 54 20 47 65 74 41 64 61 70 74 65 72 44 69 73 70 T GetAdapterDisp 1a10: 6c 61 79 4d 6f 64 65 28 20 55 49 4e 54 20 41 64 layMode( UINT Ad 1a20: 61 70 74 65 72 2c 44 33 44 44 49 53 50 4c 41 59 apter,D3DDISPLAY 1a30: 4d 4f 44 45 2a 20 70 4d 6f 64 65 29 3b 0d 0a 20 MODE* pMode);.. 1a40: 20 20 20 48 52 45 53 55 4c 54 20 43 68 65 63 6b HRESULT Check 1a50: 44 65 76 69 63 65 54 79 70 65 28 20 55 49 4e 54 DeviceType( UINT 1a60: 20 41 64 61 70 74 65 72 2c 44 33 44 44 45 56 54 Adapter,D3DDEVT 1a70: 59 50 45 20 44 65 76 54 79 70 65 2c 44 33 44 46 YPE DevType,D3DF 1a80: 4f 52 4d 41 54 20 41 64 61 70 74 65 72 46 6f 72 ORMAT AdapterFor 1a90: 6d 61 74 2c 44 33 44 46 4f 52 4d 41 54 20 42 61 mat,D3DFORMAT Ba 1aa0: 63 6b 42 75 66 66 65 72 46 6f 72 6d 61 74 2c 42 ckBufferFormat,B 1ab0: 4f 4f 4c 20 62 57 69 6e 64 6f 77 65 64 29 3b 0d OOL bWindowed);. 1ac0: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 68 65 . HRESULT Che 1ad0: 63 6b 44 65 76 69 63 65 46 6f 72 6d 61 74 28 20 ckDeviceFormat( 1ae0: 55 49 4e 54 20 41 64 61 70 74 65 72 2c 44 33 44 UINT Adapter,D3D 1af0: 44 45 56 54 59 50 45 20 44 65 76 69 63 65 54 79 DEVTYPE DeviceTy 1b00: 70 65 2c 44 33 44 46 4f 52 4d 41 54 20 41 64 61 pe,D3DFORMAT Ada 1b10: 70 74 65 72 46 6f 72 6d 61 74 2c 44 57 4f 52 44 pterFormat,DWORD 1b20: 20 55 73 61 67 65 2c 44 33 44 52 45 53 4f 55 52 Usage,D3DRESOUR 1b30: 43 45 54 59 50 45 20 52 54 79 70 65 2c 44 33 44 CETYPE RType,D3D 1b40: 46 4f 52 4d 41 54 20 43 68 65 63 6b 46 6f 72 6d FORMAT CheckForm 1b50: 61 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c at);.. HRESUL 1b60: 54 20 43 68 65 63 6b 44 65 76 69 63 65 4d 75 6c T CheckDeviceMul 1b70: 74 69 53 61 6d 70 6c 65 54 79 70 65 28 20 55 49 tiSampleType( UI 1b80: 4e 54 20 41 64 61 70 74 65 72 2c 44 33 44 44 45 NT Adapter,D3DDE 1b90: 56 54 59 50 45 20 44 65 76 69 63 65 54 79 70 65 VTYPE DeviceType 1ba0: 2c 44 33 44 46 4f 52 4d 41 54 20 53 75 72 66 61 ,D3DFORMAT Surfa 1bb0: 63 65 46 6f 72 6d 61 74 2c 42 4f 4f 4c 20 57 69 ceFormat,BOOL Wi 1bc0: 6e 64 6f 77 65 64 2c 44 33 44 4d 55 4c 54 49 53 ndowed,D3DMULTIS 1bd0: 41 4d 50 4c 45 5f 54 59 50 45 20 4d 75 6c 74 69 AMPLE_TYPE Multi 1be0: 53 61 6d 70 6c 65 54 79 70 65 2c 44 57 4f 52 44 SampleType,DWORD 1bf0: 2a 20 70 51 75 61 6c 69 74 79 4c 65 76 65 6c 73 * pQualityLevels 1c00: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 1c10: 43 68 65 63 6b 44 65 70 74 68 53 74 65 6e 63 69 CheckDepthStenci 1c20: 6c 4d 61 74 63 68 28 20 55 49 4e 54 20 41 64 61 lMatch( UINT Ada 1c30: 70 74 65 72 2c 44 33 44 44 45 56 54 59 50 45 20 pter,D3DDEVTYPE 1c40: 44 65 76 69 63 65 54 79 70 65 2c 44 33 44 46 4f DeviceType,D3DFO 1c50: 52 4d 41 54 20 41 64 61 70 74 65 72 46 6f 72 6d RMAT AdapterForm 1c60: 61 74 2c 44 33 44 46 4f 52 4d 41 54 20 52 65 6e at,D3DFORMAT Ren 1c70: 64 65 72 54 61 72 67 65 74 46 6f 72 6d 61 74 2c derTargetFormat, 1c80: 44 33 44 46 4f 52 4d 41 54 20 44 65 70 74 68 53 D3DFORMAT DepthS 1c90: 74 65 6e 63 69 6c 46 6f 72 6d 61 74 29 3b 0d 0a tencilFormat);.. 1ca0: 20 20 20 20 48 52 45 53 55 4c 54 20 43 68 65 63 HRESULT Chec 1cb0: 6b 44 65 76 69 63 65 46 6f 72 6d 61 74 43 6f 6e kDeviceFormatCon 1cc0: 76 65 72 73 69 6f 6e 28 20 55 49 4e 54 20 41 64 version( UINT Ad 1cd0: 61 70 74 65 72 2c 44 33 44 44 45 56 54 59 50 45 apter,D3DDEVTYPE 1ce0: 20 44 65 76 69 63 65 54 79 70 65 2c 44 33 44 46 DeviceType,D3DF 1cf0: 4f 52 4d 41 54 20 53 6f 75 72 63 65 46 6f 72 6d ORMAT SourceForm 1d00: 61 74 2c 44 33 44 46 4f 52 4d 41 54 20 54 61 72 at,D3DFORMAT Tar 1d10: 67 65 74 46 6f 72 6d 61 74 29 3b 0d 0a 20 20 20 getFormat);.. 1d20: 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 76 69 HRESULT GetDevi 1d30: 63 65 43 61 70 73 28 20 55 49 4e 54 20 41 64 61 ceCaps( UINT Ada 1d40: 70 74 65 72 2c 44 33 44 44 45 56 54 59 50 45 20 pter,D3DDEVTYPE 1d50: 44 65 76 69 63 65 54 79 70 65 2c 44 33 44 43 41 DeviceType,D3DCA 1d60: 50 53 39 2a 20 70 43 61 70 73 29 3b 0d 0a 20 20 PS9* pCaps);.. 1d70: 20 20 48 4d 4f 4e 49 54 4f 52 20 47 65 74 41 64 HMONITOR GetAd 1d80: 61 70 74 65 72 4d 6f 6e 69 74 6f 72 28 55 49 4e apterMonitor(UIN 1d90: 54 20 41 64 61 70 74 65 72 29 3b 0d 0a 20 20 20 T Adapter);.. 1da0: 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 44 HRESULT CreateD 1db0: 65 76 69 63 65 28 20 55 49 4e 54 20 41 64 61 70 evice( UINT Adap 1dc0: 74 65 72 2c 44 33 44 44 45 56 54 59 50 45 20 44 ter,D3DDEVTYPE D 1dd0: 65 76 69 63 65 54 79 70 65 2c 48 57 4e 44 20 68 eviceType,HWND h 1de0: 46 6f 63 75 73 57 69 6e 64 6f 77 2c 44 57 4f 52 FocusWindow,DWOR 1df0: 44 20 42 65 68 61 76 69 6f 72 46 6c 61 67 73 2c D BehaviorFlags, 1e00: 44 33 44 50 52 45 53 45 4e 54 5f 50 41 52 41 4d D3DPRESENT_PARAM 1e10: 45 54 45 52 53 2a 20 70 50 72 65 73 65 6e 74 61 ETERS* pPresenta 1e20: 74 69 6f 6e 50 61 72 61 6d 65 74 65 72 73 2c 4c tionParameters,L 1e30: 50 44 49 52 45 43 54 33 44 44 45 56 49 43 45 39 PDIRECT3DDEVICE9 1e40: 2a 20 70 70 52 65 74 75 72 6e 65 64 44 65 76 69 * ppReturnedDevi 1e50: 63 65 49 6e 74 65 72 66 61 63 65 29 3b 0d 0a 2f ceInterface);../ 1e60: 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b 0d 0a *.. debug {.. 1e70: 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 52 20 LPCWSTR 1e80: 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 20 20 7d 0d Version;.. }. 1e90: 0a 2a 2f 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4c 50 .*/..}..alias LP 1ea0: 44 49 52 45 43 54 33 44 39 20 49 44 69 72 65 63 DIRECT3D9 IDirec 1eb0: 74 33 44 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 t3D9;....interfa 1ec0: 63 65 20 4c 50 44 49 52 45 43 54 33 44 44 45 56 ce LPDIRECT3DDEV 1ed0: 49 43 45 39 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d ICE9 : IUnknown. 1ee0: 0a 7b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 .{.. HRESULT 1ef0: 54 65 73 74 43 6f 6f 70 65 72 61 74 69 76 65 4c TestCooperativeL 1f00: 65 76 65 6c 28 29 3b 0d 0a 20 20 20 20 55 49 4e evel();.. UIN 1f10: 54 20 47 65 74 41 76 61 69 6c 61 62 6c 65 54 65 T GetAvailableTe 1f20: 78 74 75 72 65 4d 65 6d 28 29 3b 0d 0a 20 20 20 xtureMem();.. 1f30: 20 48 52 45 53 55 4c 54 20 45 76 69 63 74 4d 61 HRESULT EvictMa 1f40: 6e 61 67 65 64 52 65 73 6f 75 72 63 65 73 28 29 nagedResources() 1f50: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 1f60: 65 74 44 69 72 65 63 74 33 44 28 20 4c 50 44 49 etDirect3D( LPDI 1f70: 52 45 43 54 33 44 39 2a 20 70 70 44 33 44 39 29 RECT3D9* ppD3D9) 1f80: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 1f90: 65 74 44 65 76 69 63 65 43 61 70 73 28 20 44 33 etDeviceCaps( D3 1fa0: 44 43 41 50 53 39 2a 20 70 43 61 70 73 29 3b 0d DCAPS9* pCaps);. 1fb0: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 1fc0: 44 69 73 70 6c 61 79 4d 6f 64 65 28 20 55 49 4e DisplayMode( UIN 1fd0: 54 20 69 53 77 61 70 43 68 61 69 6e 2c 44 33 44 T iSwapChain,D3D 1fe0: 44 49 53 50 4c 41 59 4d 4f 44 45 2a 20 70 4d 6f DISPLAYMODE* pMo 1ff0: 64 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c de);.. HRESUL 2000: 54 20 47 65 74 43 72 65 61 74 69 6f 6e 50 61 72 T GetCreationPar 2010: 61 6d 65 74 65 72 73 28 20 44 33 44 44 45 56 49 ameters( D3DDEVI 2020: 43 45 5f 43 52 45 41 54 49 4f 4e 5f 50 41 52 41 CE_CREATION_PARA 2030: 4d 45 54 45 52 53 20 2a 70 50 61 72 61 6d 65 74 METERS *pParamet 2040: 65 72 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 ers);.. HRESU 2050: 4c 54 20 53 65 74 43 75 72 73 6f 72 50 72 6f 70 LT SetCursorProp 2060: 65 72 74 69 65 73 28 20 55 49 4e 54 20 58 48 6f erties( UINT XHo 2070: 74 53 70 6f 74 2c 55 49 4e 54 20 59 48 6f 74 53 tSpot,UINT YHotS 2080: 70 6f 74 2c 4c 50 44 49 52 45 43 54 33 44 53 55 pot,LPDIRECT3DSU 2090: 52 46 41 43 45 39 20 70 43 75 72 73 6f 72 42 69 RFACE9 pCursorBi 20a0: 74 6d 61 70 29 3b 0d 0a 20 20 20 20 76 6f 69 64 tmap);.. void 20b0: 20 53 65 74 43 75 72 73 6f 72 50 6f 73 69 74 69 SetCursorPositi 20c0: 6f 6e 28 69 6e 74 20 58 2c 69 6e 74 20 59 2c 44 on(int X,int Y,D 20d0: 57 4f 52 44 20 46 6c 61 67 73 29 3b 0d 0a 20 20 WORD Flags);.. 20e0: 20 20 42 4f 4f 4c 20 53 68 6f 77 43 75 72 73 6f BOOL ShowCurso 20f0: 72 28 42 4f 4f 4c 20 62 53 68 6f 77 29 3b 0d 0a r(BOOL bShow);.. 2100: 20 20 20 20 48 52 45 53 55 4c 54 20 43 72 65 61 HRESULT Crea 2110: 74 65 41 64 64 69 74 69 6f 6e 61 6c 53 77 61 70 teAdditionalSwap 2120: 43 68 61 69 6e 28 20 44 33 44 50 52 45 53 45 4e Chain( D3DPRESEN 2130: 54 5f 50 41 52 41 4d 45 54 45 52 53 2a 20 70 50 T_PARAMETERS* pP 2140: 72 65 73 65 6e 74 61 74 69 6f 6e 50 61 72 61 6d resentationParam 2150: 65 74 65 72 73 2c 4c 50 44 49 52 45 43 54 33 44 eters,LPDIRECT3D 2160: 53 57 41 50 43 48 41 49 4e 39 2a 20 70 53 77 61 SWAPCHAIN9* pSwa 2170: 70 43 68 61 69 6e 29 3b 0d 0a 20 20 20 20 48 52 pChain);.. HR 2180: 45 53 55 4c 54 20 47 65 74 53 77 61 70 43 68 61 ESULT GetSwapCha 2190: 69 6e 28 20 55 49 4e 54 20 69 53 77 61 70 43 68 in( UINT iSwapCh 21a0: 61 69 6e 2c 4c 50 44 49 52 45 43 54 33 44 53 57 ain,LPDIRECT3DSW 21b0: 41 50 43 48 41 49 4e 39 2a 20 70 53 77 61 70 43 APCHAIN9* pSwapC 21c0: 68 61 69 6e 29 3b 0d 0a 20 20 20 20 55 49 4e 54 hain);.. UINT 21d0: 20 47 65 74 4e 75 6d 62 65 72 4f 66 53 77 61 70 GetNumberOfSwap 21e0: 43 68 61 69 6e 73 28 29 3b 0d 0a 20 20 20 20 48 Chains();.. H 21f0: 52 45 53 55 4c 54 20 52 65 73 65 74 28 20 44 33 RESULT Reset( D3 2200: 44 50 52 45 53 45 4e 54 5f 50 41 52 41 4d 45 54 DPRESENT_PARAMET 2210: 45 52 53 2a 20 70 50 72 65 73 65 6e 74 61 74 69 ERS* pPresentati 2220: 6f 6e 50 61 72 61 6d 65 74 65 72 73 29 3b 0d 0a onParameters);.. 2230: 20 20 20 20 48 52 45 53 55 4c 54 20 50 72 65 73 HRESULT Pres 2240: 65 6e 74 28 52 45 43 54 2a 20 70 53 6f 75 72 63 ent(RECT* pSourc 2250: 65 52 65 63 74 2c 52 45 43 54 2a 20 70 44 65 73 eRect,RECT* pDes 2260: 74 52 65 63 74 2c 48 57 4e 44 20 68 44 65 73 74 tRect,HWND hDest 2270: 57 69 6e 64 6f 77 4f 76 65 72 72 69 64 65 2c 20 WindowOverride, 2280: 52 47 4e 44 41 54 41 2a 20 70 44 69 72 74 79 52 RGNDATA* pDirtyR 2290: 65 67 69 6f 6e 29 3b 0d 0a 20 20 20 20 48 52 45 egion);.. HRE 22a0: 53 55 4c 54 20 47 65 74 42 61 63 6b 42 75 66 66 SULT GetBackBuff 22b0: 65 72 28 20 55 49 4e 54 20 69 53 77 61 70 43 68 er( UINT iSwapCh 22c0: 61 69 6e 2c 55 49 4e 54 20 69 42 61 63 6b 42 75 ain,UINT iBackBu 22d0: 66 66 65 72 2c 44 33 44 42 41 43 4b 42 55 46 46 ffer,D3DBACKBUFF 22e0: 45 52 5f 54 59 50 45 20 54 79 70 65 2c 4c 50 44 ER_TYPE Type,LPD 22f0: 49 52 45 43 54 33 44 53 55 52 46 41 43 45 39 2a IRECT3DSURFACE9* 2300: 20 70 70 42 61 63 6b 42 75 66 66 65 72 29 3b 0d ppBackBuffer);. 2310: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 2320: 52 61 73 74 65 72 53 74 61 74 75 73 28 20 55 49 RasterStatus( UI 2330: 4e 54 20 69 53 77 61 70 43 68 61 69 6e 2c 44 33 NT iSwapChain,D3 2340: 44 52 41 53 54 45 52 5f 53 54 41 54 55 53 2a 20 DRASTER_STATUS* 2350: 70 52 61 73 74 65 72 53 74 61 74 75 73 29 3b 0d pRasterStatus);. 2360: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 . HRESULT Set 2370: 44 69 61 6c 6f 67 42 6f 78 4d 6f 64 65 28 20 42 DialogBoxMode( B 2380: 4f 4f 4c 20 62 45 6e 61 62 6c 65 44 69 61 6c 6f OOL bEnableDialo 2390: 67 73 29 3b 0d 0a 20 20 20 20 76 6f 69 64 20 53 gs);.. void S 23a0: 65 74 47 61 6d 6d 61 52 61 6d 70 28 55 49 4e 54 etGammaRamp(UINT 23b0: 20 69 53 77 61 70 43 68 61 69 6e 2c 44 57 4f 52 iSwapChain,DWOR 23c0: 44 20 46 6c 61 67 73 2c 20 44 33 44 47 41 4d 4d D Flags, D3DGAMM 23d0: 41 52 41 4d 50 2a 20 70 52 61 6d 70 29 3b 0d 0a ARAMP* pRamp);.. 23e0: 20 20 20 20 76 6f 69 64 20 47 65 74 47 61 6d 6d void GetGamm 23f0: 61 52 61 6d 70 28 55 49 4e 54 20 69 53 77 61 70 aRamp(UINT iSwap 2400: 43 68 61 69 6e 2c 44 33 44 47 41 4d 4d 41 52 41 Chain,D3DGAMMARA 2410: 4d 50 2a 20 70 52 61 6d 70 29 3b 0d 0a 20 20 20 MP* pRamp);.. 2420: 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 54 HRESULT CreateT 2430: 65 78 74 75 72 65 28 20 55 49 4e 54 20 57 69 64 exture( UINT Wid 2440: 74 68 2c 55 49 4e 54 20 48 65 69 67 68 74 2c 55 th,UINT Height,U 2450: 49 4e 54 20 4c 65 76 65 6c 73 2c 44 57 4f 52 44 INT Levels,DWORD 2460: 20 55 73 61 67 65 2c 44 33 44 46 4f 52 4d 41 54 Usage,D3DFORMAT 2470: 20 46 6f 72 6d 61 74 2c 44 33 44 50 4f 4f 4c 20 Format,D3DPOOL 2480: 50 6f 6f 6c 2c 4c 50 44 49 52 45 43 54 33 44 54 Pool,LPDIRECT3DT 2490: 45 58 54 55 52 45 39 2a 20 70 70 54 65 78 74 75 EXTURE9* ppTextu 24a0: 72 65 2c 48 41 4e 44 4c 45 2a 20 70 53 68 61 72 re,HANDLE* pShar 24b0: 65 64 48 61 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 edHandle);.. 24c0: 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 56 6f HRESULT CreateVo 24d0: 6c 75 6d 65 54 65 78 74 75 72 65 28 20 55 49 4e lumeTexture( UIN 24e0: 54 20 57 69 64 74 68 2c 55 49 4e 54 20 48 65 69 T Width,UINT Hei 24f0: 67 68 74 2c 55 49 4e 54 20 44 65 70 74 68 2c 55 ght,UINT Depth,U 2500: 49 4e 54 20 4c 65 76 65 6c 73 2c 44 57 4f 52 44 INT Levels,DWORD 2510: 20 55 73 61 67 65 2c 44 33 44 46 4f 52 4d 41 54 Usage,D3DFORMAT 2520: 20 46 6f 72 6d 61 74 2c 44 33 44 50 4f 4f 4c 20 Format,D3DPOOL 2530: 50 6f 6f 6c 2c 4c 50 44 49 52 45 43 54 33 44 56 Pool,LPDIRECT3DV 2540: 4f 4c 55 4d 45 54 45 58 54 55 52 45 39 2a 20 70 OLUMETEXTURE9* p 2550: 70 56 6f 6c 75 6d 65 54 65 78 74 75 72 65 2c 48 pVolumeTexture,H 2560: 41 4e 44 4c 45 2a 20 70 53 68 61 72 65 64 48 61 ANDLE* pSharedHa 2570: 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 ndle);.. HRES 2580: 55 4c 54 20 43 72 65 61 74 65 43 75 62 65 54 65 ULT CreateCubeTe 2590: 78 74 75 72 65 28 20 55 49 4e 54 20 45 64 67 65 xture( UINT Edge 25a0: 4c 65 6e 67 74 68 2c 55 49 4e 54 20 4c 65 76 65 Length,UINT Leve 25b0: 6c 73 2c 44 57 4f 52 44 20 55 73 61 67 65 2c 44 ls,DWORD Usage,D 25c0: 33 44 46 4f 52 4d 41 54 20 46 6f 72 6d 61 74 2c 3DFORMAT Format, 25d0: 44 33 44 50 4f 4f 4c 20 50 6f 6f 6c 2c 4c 50 44 D3DPOOL Pool,LPD 25e0: 49 52 45 43 54 33 44 43 55 42 45 54 45 58 54 55 IRECT3DCUBETEXTU 25f0: 52 45 39 2a 20 70 70 43 75 62 65 54 65 78 74 75 RE9* ppCubeTextu 2600: 72 65 2c 48 41 4e 44 4c 45 2a 20 70 53 68 61 72 re,HANDLE* pShar 2610: 65 64 48 61 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 edHandle);.. 2620: 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 56 65 HRESULT CreateVe 2630: 72 74 65 78 42 75 66 66 65 72 28 20 55 49 4e 54 rtexBuffer( UINT 2640: 20 4c 65 6e 67 74 68 2c 44 57 4f 52 44 20 55 73 Length,DWORD Us 2650: 61 67 65 2c 44 57 4f 52 44 20 46 56 46 2c 44 33 age,DWORD FVF,D3 2660: 44 50 4f 4f 4c 20 50 6f 6f 6c 2c 4c 50 44 49 52 DPOOL Pool,LPDIR 2670: 45 43 54 33 44 56 45 52 54 45 58 42 55 46 46 45 ECT3DVERTEXBUFFE 2680: 52 39 2a 20 70 70 56 65 72 74 65 78 42 75 66 66 R9* ppVertexBuff 2690: 65 72 2c 48 41 4e 44 4c 45 2a 20 70 53 68 61 72 er,HANDLE* pShar 26a0: 65 64 48 61 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 edHandle);.. 26b0: 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 49 6e HRESULT CreateIn 26c0: 64 65 78 42 75 66 66 65 72 28 20 55 49 4e 54 20 dexBuffer( UINT 26d0: 4c 65 6e 67 74 68 2c 44 57 4f 52 44 20 55 73 61 Length,DWORD Usa 26e0: 67 65 2c 44 33 44 46 4f 52 4d 41 54 20 46 6f 72 ge,D3DFORMAT For 26f0: 6d 61 74 2c 44 33 44 50 4f 4f 4c 20 50 6f 6f 6c mat,D3DPOOL Pool 2700: 2c 4c 50 44 49 52 45 43 54 33 44 49 4e 44 45 58 ,LPDIRECT3DINDEX 2710: 42 55 46 46 45 52 39 2a 20 70 70 49 6e 64 65 78 BUFFER9* ppIndex 2720: 42 75 66 66 65 72 2c 48 41 4e 44 4c 45 2a 20 70 Buffer,HANDLE* p 2730: 53 68 61 72 65 64 48 61 6e 64 6c 65 29 3b 0d 0a SharedHandle);.. 2740: 20 20 20 20 48 52 45 53 55 4c 54 20 43 72 65 61 HRESULT Crea 2750: 74 65 52 65 6e 64 65 72 54 61 72 67 65 74 28 20 teRenderTarget( 2760: 55 49 4e 54 20 57 69 64 74 68 2c 55 49 4e 54 20 UINT Width,UINT 2770: 48 65 69 67 68 74 2c 44 33 44 46 4f 52 4d 41 54 Height,D3DFORMAT 2780: 20 46 6f 72 6d 61 74 2c 44 33 44 4d 55 4c 54 49 Format,D3DMULTI 2790: 53 41 4d 50 4c 45 5f 54 59 50 45 20 4d 75 6c 74 SAMPLE_TYPE Mult 27a0: 69 53 61 6d 70 6c 65 2c 44 57 4f 52 44 20 4d 75 iSample,DWORD Mu 27b0: 6c 74 69 73 61 6d 70 6c 65 51 75 61 6c 69 74 79 ltisampleQuality 27c0: 2c 42 4f 4f 4c 20 4c 6f 63 6b 61 62 6c 65 2c 4c ,BOOL Lockable,L 27d0: 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 45 PDIRECT3DSURFACE 27e0: 39 2a 20 70 70 53 75 72 66 61 63 65 2c 48 41 4e 9* ppSurface,HAN 27f0: 44 4c 45 2a 20 70 53 68 61 72 65 64 48 61 6e 64 DLE* pSharedHand 2800: 6c 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c le);.. HRESUL 2810: 54 20 43 72 65 61 74 65 44 65 70 74 68 53 74 65 T CreateDepthSte 2820: 6e 63 69 6c 53 75 72 66 61 63 65 28 20 55 49 4e ncilSurface( UIN 2830: 54 20 57 69 64 74 68 2c 55 49 4e 54 20 48 65 69 T Width,UINT Hei 2840: 67 68 74 2c 44 33 44 46 4f 52 4d 41 54 20 46 6f ght,D3DFORMAT Fo 2850: 72 6d 61 74 2c 44 33 44 4d 55 4c 54 49 53 41 4d rmat,D3DMULTISAM 2860: 50 4c 45 5f 54 59 50 45 20 4d 75 6c 74 69 53 61 PLE_TYPE MultiSa 2870: 6d 70 6c 65 2c 44 57 4f 52 44 20 4d 75 6c 74 69 mple,DWORD Multi 2880: 73 61 6d 70 6c 65 51 75 61 6c 69 74 79 2c 42 4f sampleQuality,BO 2890: 4f 4c 20 44 69 73 63 61 72 64 2c 4c 50 44 49 52 OL Discard,LPDIR 28a0: 45 43 54 33 44 53 55 52 46 41 43 45 39 2a 20 70 ECT3DSURFACE9* p 28b0: 70 53 75 72 66 61 63 65 2c 48 41 4e 44 4c 45 2a pSurface,HANDLE* 28c0: 20 70 53 68 61 72 65 64 48 61 6e 64 6c 65 29 3b pSharedHandle); 28d0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 55 70 .. HRESULT Up 28e0: 64 61 74 65 53 75 72 66 61 63 65 28 20 4c 50 44 dateSurface( LPD 28f0: 49 52 45 43 54 33 44 53 55 52 46 41 43 45 39 20 IRECT3DSURFACE9 2900: 70 53 6f 75 72 63 65 53 75 72 66 61 63 65 2c 20 pSourceSurface, 2910: 52 45 43 54 2a 20 70 53 6f 75 72 63 65 52 65 63 RECT* pSourceRec 2920: 74 2c 4c 50 44 49 52 45 43 54 33 44 53 55 52 46 t,LPDIRECT3DSURF 2930: 41 43 45 39 20 70 44 65 73 74 69 6e 61 74 69 6f ACE9 pDestinatio 2940: 6e 53 75 72 66 61 63 65 2c 20 50 4f 49 4e 54 2a nSurface, POINT* 2950: 20 70 44 65 73 74 50 6f 69 6e 74 29 3b 0d 0a 20 pDestPoint);.. 2960: 20 20 20 48 52 45 53 55 4c 54 20 55 70 64 61 74 HRESULT Updat 2970: 65 54 65 78 74 75 72 65 28 20 4c 50 44 49 52 45 eTexture( LPDIRE 2980: 43 54 33 44 42 41 53 45 54 45 58 54 55 52 45 39 CT3DBASETEXTURE9 2990: 20 70 53 6f 75 72 63 65 54 65 78 74 75 72 65 2c pSourceTexture, 29a0: 4c 50 44 49 52 45 43 54 33 44 42 41 53 45 54 45 LPDIRECT3DBASETE 29b0: 58 54 55 52 45 39 20 70 44 65 73 74 69 6e 61 74 XTURE9 pDestinat 29c0: 69 6f 6e 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 ionTexture);.. 29d0: 20 20 48 52 45 53 55 4c 54 20 47 65 74 52 65 6e HRESULT GetRen 29e0: 64 65 72 54 61 72 67 65 74 44 61 74 61 28 20 4c derTargetData( L 29f0: 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 45 PDIRECT3DSURFACE 2a00: 39 20 70 52 65 6e 64 65 72 54 61 72 67 65 74 2c 9 pRenderTarget, 2a10: 4c 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 LPDIRECT3DSURFAC 2a20: 45 39 20 70 44 65 73 74 53 75 72 66 61 63 65 29 E9 pDestSurface) 2a30: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 2a40: 65 74 46 72 6f 6e 74 42 75 66 66 65 72 44 61 74 etFrontBufferDat 2a50: 61 28 20 55 49 4e 54 20 69 53 77 61 70 43 68 61 a( UINT iSwapCha 2a60: 69 6e 2c 4c 50 44 49 52 45 43 54 33 44 53 55 52 in,LPDIRECT3DSUR 2a70: 46 41 43 45 39 20 70 44 65 73 74 53 75 72 66 61 FACE9 pDestSurfa 2a80: 63 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c ce);.. HRESUL 2a90: 54 20 53 74 72 65 74 63 68 52 65 63 74 28 20 4c T StretchRect( L 2aa0: 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 45 PDIRECT3DSURFACE 2ab0: 39 20 70 53 6f 75 72 63 65 53 75 72 66 61 63 65 9 pSourceSurface 2ac0: 2c 20 52 45 43 54 2a 20 70 53 6f 75 72 63 65 52 , RECT* pSourceR 2ad0: 65 63 74 2c 4c 50 44 49 52 45 43 54 33 44 53 55 ect,LPDIRECT3DSU 2ae0: 52 46 41 43 45 39 20 70 44 65 73 74 53 75 72 66 RFACE9 pDestSurf 2af0: 61 63 65 2c 20 52 45 43 54 2a 20 70 44 65 73 74 ace, RECT* pDest 2b00: 52 65 63 74 2c 44 33 44 54 45 58 54 55 52 45 46 Rect,D3DTEXTUREF 2b10: 49 4c 54 45 52 54 59 50 45 20 46 69 6c 74 65 72 ILTERTYPE Filter 2b20: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 2b30: 43 6f 6c 6f 72 46 69 6c 6c 28 20 4c 50 44 49 52 ColorFill( LPDIR 2b40: 45 43 54 33 44 53 55 52 46 41 43 45 39 20 70 53 ECT3DSURFACE9 pS 2b50: 75 72 66 61 63 65 2c 20 52 45 43 54 2a 20 70 52 urface, RECT* pR 2b60: 65 63 74 2c 44 33 44 43 4f 4c 4f 52 20 63 6f 6c ect,D3DCOLOR col 2b70: 6f 72 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c or);.. HRESUL 2b80: 54 20 43 72 65 61 74 65 4f 66 66 73 63 72 65 65 T CreateOffscree 2b90: 6e 50 6c 61 69 6e 53 75 72 66 61 63 65 28 20 55 nPlainSurface( U 2ba0: 49 4e 54 20 57 69 64 74 68 2c 55 49 4e 54 20 48 INT Width,UINT H 2bb0: 65 69 67 68 74 2c 44 33 44 46 4f 52 4d 41 54 20 eight,D3DFORMAT 2bc0: 46 6f 72 6d 61 74 2c 44 33 44 50 4f 4f 4c 20 50 Format,D3DPOOL P 2bd0: 6f 6f 6c 2c 4c 50 44 49 52 45 43 54 33 44 53 55 ool,LPDIRECT3DSU 2be0: 52 46 41 43 45 39 2a 20 70 70 53 75 72 66 61 63 RFACE9* ppSurfac 2bf0: 65 2c 48 41 4e 44 4c 45 2a 20 70 53 68 61 72 65 e,HANDLE* pShare 2c00: 64 48 61 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 48 dHandle);.. H 2c10: 52 45 53 55 4c 54 20 53 65 74 52 65 6e 64 65 72 RESULT SetRender 2c20: 54 61 72 67 65 74 28 20 44 57 4f 52 44 20 52 65 Target( DWORD Re 2c30: 6e 64 65 72 54 61 72 67 65 74 49 6e 64 65 78 2c nderTargetIndex, 2c40: 4c 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 LPDIRECT3DSURFAC 2c50: 45 39 20 70 52 65 6e 64 65 72 54 61 72 67 65 74 E9 pRenderTarget 2c60: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 2c70: 47 65 74 52 65 6e 64 65 72 54 61 72 67 65 74 28 GetRenderTarget( 2c80: 20 44 57 4f 52 44 20 52 65 6e 64 65 72 54 61 72 DWORD RenderTar 2c90: 67 65 74 49 6e 64 65 78 2c 4c 50 44 49 52 45 43 getIndex,LPDIREC 2ca0: 54 33 44 53 55 52 46 41 43 45 39 2a 20 70 70 52 T3DSURFACE9* ppR 2cb0: 65 6e 64 65 72 54 61 72 67 65 74 29 3b 0d 0a 20 enderTarget);.. 2cc0: 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 44 65 HRESULT SetDe 2cd0: 70 74 68 53 74 65 6e 63 69 6c 53 75 72 66 61 63 pthStencilSurfac 2ce0: 65 28 20 4c 50 44 49 52 45 43 54 33 44 53 55 52 e( LPDIRECT3DSUR 2cf0: 46 41 43 45 39 20 70 4e 65 77 5a 53 74 65 6e 63 FACE9 pNewZStenc 2d00: 69 6c 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c il);.. HRESUL 2d10: 54 20 47 65 74 44 65 70 74 68 53 74 65 6e 63 69 T GetDepthStenci 2d20: 6c 53 75 72 66 61 63 65 28 20 4c 50 44 49 52 45 lSurface( LPDIRE 2d30: 43 54 33 44 53 55 52 46 41 43 45 39 2a 20 70 70 CT3DSURFACE9* pp 2d40: 5a 53 74 65 6e 63 69 6c 53 75 72 66 61 63 65 29 ZStencilSurface) 2d50: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 42 ;.. HRESULT B 2d60: 65 67 69 6e 53 63 65 6e 65 28 29 3b 0d 0a 20 20 eginScene();.. 2d70: 20 20 48 52 45 53 55 4c 54 20 45 6e 64 53 63 65 HRESULT EndSce 2d80: 6e 65 28 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 ne();.. HRESU 2d90: 4c 54 20 43 6c 65 61 72 28 20 44 57 4f 52 44 20 LT Clear( DWORD 2da0: 43 6f 75 6e 74 2c 20 44 33 44 52 45 43 54 2a 20 Count, D3DRECT* 2db0: 70 52 65 63 74 73 2c 44 57 4f 52 44 20 46 6c 61 pRects,DWORD Fla 2dc0: 67 73 2c 44 33 44 43 4f 4c 4f 52 20 43 6f 6c 6f gs,D3DCOLOR Colo 2dd0: 72 2c 66 6c 6f 61 74 20 5a 2c 44 57 4f 52 44 20 r,float Z,DWORD 2de0: 53 74 65 6e 63 69 6c 29 3b 0d 0a 20 20 20 20 48 Stencil);.. H 2df0: 52 45 53 55 4c 54 20 53 65 74 54 72 61 6e 73 66 RESULT SetTransf 2e00: 6f 72 6d 28 20 44 33 44 54 52 41 4e 53 46 4f 52 orm( D3DTRANSFOR 2e10: 4d 53 54 41 54 45 54 59 50 45 20 53 74 61 74 65 MSTATETYPE State 2e20: 2c 20 44 33 44 4d 41 54 52 49 58 2a 20 70 4d 61 , D3DMATRIX* pMa 2e30: 74 72 69 78 29 3b 0d 0a 20 20 20 20 48 52 45 53 trix);.. HRES 2e40: 55 4c 54 20 47 65 74 54 72 61 6e 73 66 6f 72 6d ULT GetTransform 2e50: 28 20 44 33 44 54 52 41 4e 53 46 4f 52 4d 53 54 ( D3DTRANSFORMST 2e60: 41 54 45 54 59 50 45 20 53 74 61 74 65 2c 44 33 ATETYPE State,D3 2e70: 44 4d 41 54 52 49 58 2a 20 70 4d 61 74 72 69 78 DMATRIX* pMatrix 2e80: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 2e90: 4d 75 6c 74 69 70 6c 79 54 72 61 6e 73 66 6f 72 MultiplyTransfor 2ea0: 6d 28 20 44 33 44 54 52 41 4e 53 46 4f 52 4d 53 m( D3DTRANSFORMS 2eb0: 54 41 54 45 54 59 50 45 2c 20 44 33 44 4d 41 54 TATETYPE, D3DMAT 2ec0: 52 49 58 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53 RIX*);.. HRES 2ed0: 55 4c 54 20 53 65 74 56 69 65 77 70 6f 72 74 28 ULT SetViewport( 2ee0: 20 44 33 44 56 49 45 57 50 4f 52 54 39 2a 20 70 D3DVIEWPORT9* p 2ef0: 56 69 65 77 70 6f 72 74 29 3b 0d 0a 20 20 20 20 Viewport);.. 2f00: 48 52 45 53 55 4c 54 20 47 65 74 56 69 65 77 70 HRESULT GetViewp 2f10: 6f 72 74 28 20 44 33 44 56 49 45 57 50 4f 52 54 ort( D3DVIEWPORT 2f20: 39 2a 20 70 56 69 65 77 70 6f 72 74 29 3b 0d 0a 9* pViewport);.. 2f30: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 4d HRESULT SetM 2f40: 61 74 65 72 69 61 6c 28 20 44 33 44 4d 41 54 45 aterial( D3DMATE 2f50: 52 49 41 4c 39 2a 20 70 4d 61 74 65 72 69 61 6c RIAL9* pMaterial 2f60: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 2f70: 47 65 74 4d 61 74 65 72 69 61 6c 28 20 44 33 44 GetMaterial( D3D 2f80: 4d 41 54 45 52 49 41 4c 39 2a 20 70 4d 61 74 65 MATERIAL9* pMate 2f90: 72 69 61 6c 29 3b 0d 0a 20 20 20 20 48 52 45 53 rial);.. HRES 2fa0: 55 4c 54 20 53 65 74 4c 69 67 68 74 28 20 44 57 ULT SetLight( DW 2fb0: 4f 52 44 20 49 6e 64 65 78 2c 20 44 33 44 4c 49 ORD Index, D3DLI 2fc0: 47 48 54 39 2a 29 3b 0d 0a 20 20 20 20 48 52 45 GHT9*);.. HRE 2fd0: 53 55 4c 54 20 47 65 74 4c 69 67 68 74 28 20 44 SULT GetLight( D 2fe0: 57 4f 52 44 20 49 6e 64 65 78 2c 44 33 44 4c 49 WORD Index,D3DLI 2ff0: 47 48 54 39 2a 29 3b 0d 0a 20 20 20 20 48 52 45 GHT9*);.. HRE 3000: 53 55 4c 54 20 4c 69 67 68 74 45 6e 61 62 6c 65 SULT LightEnable 3010: 28 20 44 57 4f 52 44 20 49 6e 64 65 78 2c 42 4f ( DWORD Index,BO 3020: 4f 4c 20 45 6e 61 62 6c 65 29 3b 0d 0a 20 20 20 OL Enable);.. 3030: 20 48 52 45 53 55 4c 54 20 47 65 74 4c 69 67 68 HRESULT GetLigh 3040: 74 45 6e 61 62 6c 65 28 20 44 57 4f 52 44 20 49 tEnable( DWORD I 3050: 6e 64 65 78 2c 42 4f 4f 4c 2a 20 70 45 6e 61 62 ndex,BOOL* pEnab 3060: 6c 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c le);.. HRESUL 3070: 54 20 53 65 74 43 6c 69 70 50 6c 61 6e 65 28 20 T SetClipPlane( 3080: 44 57 4f 52 44 20 49 6e 64 65 78 2c 20 66 6c 6f DWORD Index, flo 3090: 61 74 2a 20 70 50 6c 61 6e 65 29 3b 0d 0a 20 20 at* pPlane);.. 30a0: 20 20 48 52 45 53 55 4c 54 20 47 65 74 43 6c 69 HRESULT GetCli 30b0: 70 50 6c 61 6e 65 28 20 44 57 4f 52 44 20 49 6e pPlane( DWORD In 30c0: 64 65 78 2c 66 6c 6f 61 74 2a 20 70 50 6c 61 6e dex,float* pPlan 30d0: 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 e);.. HRESULT 30e0: 20 53 65 74 52 65 6e 64 65 72 53 74 61 74 65 28 SetRenderState( 30f0: 20 44 33 44 52 45 4e 44 45 52 53 54 41 54 45 54 D3DRENDERSTATET 3100: 59 50 45 20 53 74 61 74 65 2c 44 57 4f 52 44 20 YPE State,DWORD 3110: 56 61 6c 75 65 29 3b 0d 0a 20 20 20 20 48 52 45 Value);.. HRE 3120: 53 55 4c 54 20 47 65 74 52 65 6e 64 65 72 53 74 SULT GetRenderSt 3130: 61 74 65 28 20 44 33 44 52 45 4e 44 45 52 53 54 ate( D3DRENDERST 3140: 41 54 45 54 59 50 45 20 53 74 61 74 65 2c 44 57 ATETYPE State,DW 3150: 4f 52 44 2a 20 70 56 61 6c 75 65 29 3b 0d 0a 20 ORD* pValue);.. 3160: 20 20 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 HRESULT Creat 3170: 65 53 74 61 74 65 42 6c 6f 63 6b 28 20 44 33 44 eStateBlock( D3D 3180: 53 54 41 54 45 42 4c 4f 43 4b 54 59 50 45 20 54 STATEBLOCKTYPE T 3190: 79 70 65 2c 4c 50 44 49 52 45 43 54 33 44 53 54 ype,LPDIRECT3DST 31a0: 41 54 45 42 4c 4f 43 4b 39 2a 20 70 70 53 42 29 ATEBLOCK9* ppSB) 31b0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 42 ;.. HRESULT B 31c0: 65 67 69 6e 53 74 61 74 65 42 6c 6f 63 6b 28 29 eginStateBlock() 31d0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 45 ;.. HRESULT E 31e0: 6e 64 53 74 61 74 65 42 6c 6f 63 6b 28 20 4c 50 ndStateBlock( LP 31f0: 44 49 52 45 43 54 33 44 53 54 41 54 45 42 4c 4f DIRECT3DSTATEBLO 3200: 43 4b 39 2a 20 70 70 53 42 29 3b 0d 0a 20 20 20 CK9* ppSB);.. 3210: 20 48 52 45 53 55 4c 54 20 53 65 74 43 6c 69 70 HRESULT SetClip 3220: 53 74 61 74 75 73 28 20 44 33 44 43 4c 49 50 53 Status( D3DCLIPS 3230: 54 41 54 55 53 39 2a 20 70 43 6c 69 70 53 74 61 TATUS9* pClipSta 3240: 74 75 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 tus);.. HRESU 3250: 4c 54 20 47 65 74 43 6c 69 70 53 74 61 74 75 73 LT GetClipStatus 3260: 28 20 44 33 44 43 4c 49 50 53 54 41 54 55 53 39 ( D3DCLIPSTATUS9 3270: 2a 20 70 43 6c 69 70 53 74 61 74 75 73 29 3b 0d * pClipStatus);. 3280: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 3290: 54 65 78 74 75 72 65 28 20 44 57 4f 52 44 20 53 Texture( DWORD S 32a0: 74 61 67 65 2c 4c 50 44 49 52 45 43 54 33 44 42 tage,LPDIRECT3DB 32b0: 41 53 45 54 45 58 54 55 52 45 39 2a 20 70 70 54 ASETEXTURE9* ppT 32c0: 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 48 52 exture);.. HR 32d0: 45 53 55 4c 54 20 53 65 74 54 65 78 74 75 72 65 ESULT SetTexture 32e0: 28 20 44 57 4f 52 44 20 53 74 61 67 65 2c 4c 50 ( DWORD Stage,LP 32f0: 44 49 52 45 43 54 33 44 42 41 53 45 54 45 58 54 DIRECT3DBASETEXT 3300: 55 52 45 39 20 70 54 65 78 74 75 72 65 29 3b 0d URE9 pTexture);. 3310: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 3320: 54 65 78 74 75 72 65 53 74 61 67 65 53 74 61 74 TextureStageStat 3330: 65 28 20 44 57 4f 52 44 20 53 74 61 67 65 2c 44 e( DWORD Stage,D 3340: 33 44 54 45 58 54 55 52 45 53 54 41 47 45 53 54 3DTEXTURESTAGEST 3350: 41 54 45 54 59 50 45 20 54 79 70 65 2c 44 57 4f ATETYPE Type,DWO 3360: 52 44 2a 20 70 56 61 6c 75 65 29 3b 0d 0a 20 20 RD* pValue);.. 3370: 20 20 48 52 45 53 55 4c 54 20 53 65 74 54 65 78 HRESULT SetTex 3380: 74 75 72 65 53 74 61 67 65 53 74 61 74 65 28 20 tureStageState( 3390: 44 57 4f 52 44 20 53 74 61 67 65 2c 44 33 44 54 DWORD Stage,D3DT 33a0: 45 58 54 55 52 45 53 54 41 47 45 53 54 41 54 45 EXTURESTAGESTATE 33b0: 54 59 50 45 20 54 79 70 65 2c 44 57 4f 52 44 20 TYPE Type,DWORD 33c0: 56 61 6c 75 65 29 3b 0d 0a 20 20 20 20 48 52 45 Value);.. HRE 33d0: 53 55 4c 54 20 47 65 74 53 61 6d 70 6c 65 72 53 SULT GetSamplerS 33e0: 74 61 74 65 28 20 44 57 4f 52 44 20 53 61 6d 70 tate( DWORD Samp 33f0: 6c 65 72 2c 44 33 44 53 41 4d 50 4c 45 52 53 54 ler,D3DSAMPLERST 3400: 41 54 45 54 59 50 45 20 54 79 70 65 2c 44 57 4f ATETYPE Type,DWO 3410: 52 44 2a 20 70 56 61 6c 75 65 29 3b 0d 0a 20 20 RD* pValue);.. 3420: 20 20 48 52 45 53 55 4c 54 20 53 65 74 53 61 6d HRESULT SetSam 3430: 70 6c 65 72 53 74 61 74 65 28 20 44 57 4f 52 44 plerState( DWORD 3440: 20 53 61 6d 70 6c 65 72 2c 44 33 44 53 41 4d 50 Sampler,D3DSAMP 3450: 4c 45 52 53 54 41 54 45 54 59 50 45 20 54 79 70 LERSTATETYPE Typ 3460: 65 2c 44 57 4f 52 44 20 56 61 6c 75 65 29 3b 0d e,DWORD Value);. 3470: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 56 61 6c . HRESULT Val 3480: 69 64 61 74 65 44 65 76 69 63 65 28 20 44 57 4f idateDevice( DWO 3490: 52 44 2a 20 70 4e 75 6d 50 61 73 73 65 73 29 3b RD* pNumPasses); 34a0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 .. HRESULT Se 34b0: 74 50 61 6c 65 74 74 65 45 6e 74 72 69 65 73 28 tPaletteEntries( 34c0: 20 55 49 4e 54 20 50 61 6c 65 74 74 65 4e 75 6d UINT PaletteNum 34d0: 62 65 72 2c 20 50 41 4c 45 54 54 45 45 4e 54 52 ber, PALETTEENTR 34e0: 59 2a 20 70 45 6e 74 72 69 65 73 29 3b 0d 0a 20 Y* pEntries);.. 34f0: 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 50 61 HRESULT GetPa 3500: 6c 65 74 74 65 45 6e 74 72 69 65 73 28 20 55 49 letteEntries( UI 3510: 4e 54 20 50 61 6c 65 74 74 65 4e 75 6d 62 65 72 NT PaletteNumber 3520: 2c 50 41 4c 45 54 54 45 45 4e 54 52 59 2a 20 70 ,PALETTEENTRY* p 3530: 45 6e 74 72 69 65 73 29 3b 0d 0a 20 20 20 20 48 Entries);.. H 3540: 52 45 53 55 4c 54 20 53 65 74 43 75 72 72 65 6e RESULT SetCurren 3550: 74 54 65 78 74 75 72 65 50 61 6c 65 74 74 65 28 tTexturePalette( 3560: 20 55 49 4e 54 20 50 61 6c 65 74 74 65 4e 75 6d UINT PaletteNum 3570: 62 65 72 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 ber);.. HRESU 3580: 4c 54 20 47 65 74 43 75 72 72 65 6e 74 54 65 78 LT GetCurrentTex 3590: 74 75 72 65 50 61 6c 65 74 74 65 28 20 55 49 4e turePalette( UIN 35a0: 54 20 2a 50 61 6c 65 74 74 65 4e 75 6d 62 65 72 T *PaletteNumber 35b0: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 35c0: 53 65 74 53 63 69 73 73 6f 72 52 65 63 74 28 20 SetScissorRect( 35d0: 52 45 43 54 2a 20 70 52 65 63 74 29 3b 0d 0a 20 RECT* pRect);.. 35e0: 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 53 63 HRESULT GetSc 35f0: 69 73 73 6f 72 52 65 63 74 28 20 52 45 43 54 2a issorRect( RECT* 3600: 20 70 52 65 63 74 29 3b 0d 0a 20 20 20 20 48 52 pRect);.. HR 3610: 45 53 55 4c 54 20 53 65 74 53 6f 66 74 77 61 72 ESULT SetSoftwar 3620: 65 56 65 72 74 65 78 50 72 6f 63 65 73 73 69 6e eVertexProcessin 3630: 67 28 20 42 4f 4f 4c 20 62 53 6f 66 74 77 61 72 g( BOOL bSoftwar 3640: 65 29 3b 0d 0a 20 20 20 20 42 4f 4f 4c 20 47 65 e);.. BOOL Ge 3650: 74 53 6f 66 74 77 61 72 65 56 65 72 74 65 78 50 tSoftwareVertexP 3660: 72 6f 63 65 73 73 69 6e 67 28 29 3b 0d 0a 20 20 rocessing();.. 3670: 20 20 48 52 45 53 55 4c 54 20 53 65 74 4e 50 61 HRESULT SetNPa 3680: 74 63 68 4d 6f 64 65 28 20 66 6c 6f 61 74 20 6e tchMode( float n 3690: 53 65 67 6d 65 6e 74 73 29 3b 0d 0a 20 20 20 20 Segments);.. 36a0: 66 6c 6f 61 74 20 47 65 74 4e 50 61 74 63 68 4d float GetNPatchM 36b0: 6f 64 65 28 29 3b 0d 0a 20 20 20 20 48 52 45 53 ode();.. HRES 36c0: 55 4c 54 20 44 72 61 77 50 72 69 6d 69 74 69 76 ULT DrawPrimitiv 36d0: 65 28 20 44 33 44 50 52 49 4d 49 54 49 56 45 54 e( D3DPRIMITIVET 36e0: 59 50 45 20 50 72 69 6d 69 74 69 76 65 54 79 70 YPE PrimitiveTyp 36f0: 65 2c 55 49 4e 54 20 53 74 61 72 74 56 65 72 74 e,UINT StartVert 3700: 65 78 2c 55 49 4e 54 20 50 72 69 6d 69 74 69 76 ex,UINT Primitiv 3710: 65 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 52 eCount);.. HR 3720: 45 53 55 4c 54 20 44 72 61 77 49 6e 64 65 78 65 ESULT DrawIndexe 3730: 64 50 72 69 6d 69 74 69 76 65 28 20 44 33 44 50 dPrimitive( D3DP 3740: 52 49 4d 49 54 49 56 45 54 59 50 45 2c 49 4e 54 RIMITIVETYPE,INT 3750: 20 42 61 73 65 56 65 72 74 65 78 49 6e 64 65 78 BaseVertexIndex 3760: 2c 55 49 4e 54 20 4d 69 6e 56 65 72 74 65 78 49 ,UINT MinVertexI 3770: 6e 64 65 78 2c 55 49 4e 54 20 4e 75 6d 56 65 72 ndex,UINT NumVer 3780: 74 69 63 65 73 2c 55 49 4e 54 20 73 74 61 72 74 tices,UINT start 3790: 49 6e 64 65 78 2c 55 49 4e 54 20 70 72 69 6d 43 Index,UINT primC 37a0: 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 ount);.. HRES 37b0: 55 4c 54 20 44 72 61 77 50 72 69 6d 69 74 69 76 ULT DrawPrimitiv 37c0: 65 55 50 28 20 44 33 44 50 52 49 4d 49 54 49 56 eUP( D3DPRIMITIV 37d0: 45 54 59 50 45 20 50 72 69 6d 69 74 69 76 65 54 ETYPE PrimitiveT 37e0: 79 70 65 2c 55 49 4e 54 20 50 72 69 6d 69 74 69 ype,UINT Primiti 37f0: 76 65 43 6f 75 6e 74 2c 20 76 6f 69 64 2a 20 70 veCount, void* p 3800: 56 65 72 74 65 78 53 74 72 65 61 6d 5a 65 72 6f VertexStreamZero 3810: 44 61 74 61 2c 55 49 4e 54 20 56 65 72 74 65 78 Data,UINT Vertex 3820: 53 74 72 65 61 6d 5a 65 72 6f 53 74 72 69 64 65 StreamZeroStride 3830: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 3840: 44 72 61 77 49 6e 64 65 78 65 64 50 72 69 6d 69 DrawIndexedPrimi 3850: 74 69 76 65 55 50 28 20 44 33 44 50 52 49 4d 49 tiveUP( D3DPRIMI 3860: 54 49 56 45 54 59 50 45 20 50 72 69 6d 69 74 69 TIVETYPE Primiti 3870: 76 65 54 79 70 65 2c 55 49 4e 54 20 4d 69 6e 56 veType,UINT MinV 3880: 65 72 74 65 78 49 6e 64 65 78 2c 55 49 4e 54 20 ertexIndex,UINT 3890: 4e 75 6d 56 65 72 74 69 63 65 73 2c 55 49 4e 54 NumVertices,UINT 38a0: 20 50 72 69 6d 69 74 69 76 65 43 6f 75 6e 74 2c PrimitiveCount, 38b0: 20 76 6f 69 64 2a 20 70 49 6e 64 65 78 44 61 74 void* pIndexDat 38c0: 61 2c 44 33 44 46 4f 52 4d 41 54 20 49 6e 64 65 a,D3DFORMAT Inde 38d0: 78 44 61 74 61 46 6f 72 6d 61 74 2c 20 76 6f 69 xDataFormat, voi 38e0: 64 2a 20 70 56 65 72 74 65 78 53 74 72 65 61 6d d* pVertexStream 38f0: 5a 65 72 6f 44 61 74 61 2c 55 49 4e 54 20 56 65 ZeroData,UINT Ve 3900: 72 74 65 78 53 74 72 65 61 6d 5a 65 72 6f 53 74 rtexStreamZeroSt 3910: 72 69 64 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 ride);.. HRES 3920: 55 4c 54 20 50 72 6f 63 65 73 73 56 65 72 74 69 ULT ProcessVerti 3930: 63 65 73 28 20 55 49 4e 54 20 53 72 63 53 74 61 ces( UINT SrcSta 3940: 72 74 49 6e 64 65 78 2c 55 49 4e 54 20 44 65 73 rtIndex,UINT Des 3950: 74 49 6e 64 65 78 2c 55 49 4e 54 20 56 65 72 74 tIndex,UINT Vert 3960: 65 78 43 6f 75 6e 74 2c 4c 50 44 49 52 45 43 54 exCount,LPDIRECT 3970: 33 44 56 45 52 54 45 58 42 55 46 46 45 52 39 20 3DVERTEXBUFFER9 3980: 70 44 65 73 74 42 75 66 66 65 72 2c 4c 50 44 49 pDestBuffer,LPDI 3990: 52 45 43 54 33 44 56 45 52 54 45 58 44 45 43 4c RECT3DVERTEXDECL 39a0: 41 52 41 54 49 4f 4e 39 20 70 56 65 72 74 65 78 ARATION9 pVertex 39b0: 44 65 63 6c 2c 44 57 4f 52 44 20 46 6c 61 67 73 Decl,DWORD Flags 39c0: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 39d0: 43 72 65 61 74 65 56 65 72 74 65 78 44 65 63 6c CreateVertexDecl 39e0: 61 72 61 74 69 6f 6e 28 20 44 33 44 56 45 52 54 aration( D3DVERT 39f0: 45 58 45 4c 45 4d 45 4e 54 39 2a 20 70 56 65 72 EXELEMENT9* pVer 3a00: 74 65 78 45 6c 65 6d 65 6e 74 73 2c 4c 50 44 49 texElements,LPDI 3a10: 52 45 43 54 33 44 56 45 52 54 45 58 44 45 43 4c RECT3DVERTEXDECL 3a20: 41 52 41 54 49 4f 4e 39 2a 20 70 70 44 65 63 6c ARATION9* ppDecl 3a30: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 3a40: 53 65 74 56 65 72 74 65 78 44 65 63 6c 61 72 61 SetVertexDeclara 3a50: 74 69 6f 6e 28 4c 50 44 49 52 45 43 54 33 44 56 tion(LPDIRECT3DV 3a60: 45 52 54 45 58 44 45 43 4c 41 52 41 54 49 4f 4e ERTEXDECLARATION 3a70: 39 20 70 44 65 63 6c 29 3b 0d 0a 20 20 20 20 48 9 pDecl);.. H 3a80: 52 45 53 55 4c 54 20 47 65 74 56 65 72 74 65 78 RESULT GetVertex 3a90: 44 65 63 6c 61 72 61 74 69 6f 6e 28 4c 50 44 49 Declaration(LPDI 3aa0: 52 45 43 54 33 44 56 45 52 54 45 58 44 45 43 4c RECT3DVERTEXDECL 3ab0: 41 52 41 54 49 4f 4e 39 2a 20 70 70 44 65 63 6c ARATION9* ppDecl 3ac0: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 3ad0: 53 65 74 46 56 46 28 20 44 57 4f 52 44 20 46 56 SetFVF( DWORD FV 3ae0: 46 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 F);.. HRESULT 3af0: 20 47 65 74 46 56 46 28 20 44 57 4f 52 44 2a 20 GetFVF( DWORD* 3b00: 70 46 56 46 29 3b 0d 0a 20 20 20 20 48 52 45 53 pFVF);.. HRES 3b10: 55 4c 54 20 43 72 65 61 74 65 56 65 72 74 65 78 ULT CreateVertex 3b20: 53 68 61 64 65 72 28 20 44 57 4f 52 44 2a 20 70 Shader( DWORD* p 3b30: 46 75 6e 63 74 69 6f 6e 2c 4c 50 44 49 52 45 43 Function,LPDIREC 3b40: 54 33 44 56 45 52 54 45 58 53 48 41 44 45 52 39 T3DVERTEXSHADER9 3b50: 2a 20 70 70 53 68 61 64 65 72 29 3b 0d 0a 20 20 * ppShader);.. 3b60: 20 20 48 52 45 53 55 4c 54 20 53 65 74 56 65 72 HRESULT SetVer 3b70: 74 65 78 53 68 61 64 65 72 28 20 4c 50 44 49 52 texShader( LPDIR 3b80: 45 43 54 33 44 56 45 52 54 45 58 53 48 41 44 45 ECT3DVERTEXSHADE 3b90: 52 39 20 70 53 68 61 64 65 72 29 3b 0d 0a 20 20 R9 pShader);.. 3ba0: 20 20 48 52 45 53 55 4c 54 20 47 65 74 56 65 72 HRESULT GetVer 3bb0: 74 65 78 53 68 61 64 65 72 28 20 4c 50 44 49 52 texShader( LPDIR 3bc0: 45 43 54 33 44 56 45 52 54 45 58 53 48 41 44 45 ECT3DVERTEXSHADE 3bd0: 52 39 2a 20 70 70 53 68 61 64 65 72 29 3b 0d 0a R9* ppShader);.. 3be0: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 56 HRESULT SetV 3bf0: 65 72 74 65 78 53 68 61 64 65 72 43 6f 6e 73 74 ertexShaderConst 3c00: 61 6e 74 46 28 20 55 49 4e 54 20 53 74 61 72 74 antF( UINT Start 3c10: 52 65 67 69 73 74 65 72 2c 20 66 6c 6f 61 74 2a Register, float* 3c20: 20 70 43 6f 6e 73 74 61 6e 74 44 61 74 61 2c 55 pConstantData,U 3c30: 49 4e 54 20 56 65 63 74 6f 72 34 66 43 6f 75 6e INT Vector4fCoun 3c40: 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 t);.. HRESULT 3c50: 20 47 65 74 56 65 72 74 65 78 53 68 61 64 65 72 GetVertexShader 3c60: 43 6f 6e 73 74 61 6e 74 46 28 20 55 49 4e 54 20 ConstantF( UINT 3c70: 53 74 61 72 74 52 65 67 69 73 74 65 72 2c 66 6c StartRegister,fl 3c80: 6f 61 74 2a 20 70 43 6f 6e 73 74 61 6e 74 44 61 oat* pConstantDa 3c90: 74 61 2c 55 49 4e 54 20 56 65 63 74 6f 72 34 66 ta,UINT Vector4f 3ca0: 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 52 45 Count);.. HRE 3cb0: 53 55 4c 54 20 53 65 74 56 65 72 74 65 78 53 68 SULT SetVertexSh 3cc0: 61 64 65 72 43 6f 6e 73 74 61 6e 74 49 28 20 55 aderConstantI( U 3cd0: 49 4e 54 20 53 74 61 72 74 52 65 67 69 73 74 65 INT StartRegiste 3ce0: 72 2c 20 69 6e 74 2a 20 70 43 6f 6e 73 74 61 6e r, int* pConstan 3cf0: 74 44 61 74 61 2c 55 49 4e 54 20 56 65 63 74 6f tData,UINT Vecto 3d00: 72 34 69 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 r4iCount);.. 3d10: 48 52 45 53 55 4c 54 20 47 65 74 56 65 72 74 65 HRESULT GetVerte 3d20: 78 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 49 xShaderConstantI 3d30: 28 20 55 49 4e 54 20 53 74 61 72 74 52 65 67 69 ( UINT StartRegi 3d40: 73 74 65 72 2c 69 6e 74 2a 20 70 43 6f 6e 73 74 ster,int* pConst 3d50: 61 6e 74 44 61 74 61 2c 55 49 4e 54 20 56 65 63 antData,UINT Vec 3d60: 74 6f 72 34 69 43 6f 75 6e 74 29 3b 0d 0a 20 20 tor4iCount);.. 3d70: 20 20 48 52 45 53 55 4c 54 20 53 65 74 56 65 72 HRESULT SetVer 3d80: 74 65 78 53 68 61 64 65 72 43 6f 6e 73 74 61 6e texShaderConstan 3d90: 74 42 28 20 55 49 4e 54 20 53 74 61 72 74 52 65 tB( UINT StartRe 3da0: 67 69 73 74 65 72 2c 20 42 4f 4f 4c 2a 20 70 43 gister, BOOL* pC 3db0: 6f 6e 73 74 61 6e 74 44 61 74 61 2c 55 49 4e 54 onstantData,UINT 3dc0: 20 20 42 6f 6f 6c 43 6f 75 6e 74 29 3b 0d 0a 20 BoolCount);.. 3dd0: 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 56 65 HRESULT GetVe 3de0: 72 74 65 78 53 68 61 64 65 72 43 6f 6e 73 74 61 rtexShaderConsta 3df0: 6e 74 42 28 20 55 49 4e 54 20 53 74 61 72 74 52 ntB( UINT StartR 3e00: 65 67 69 73 74 65 72 2c 42 4f 4f 4c 2a 20 70 43 egister,BOOL* pC 3e10: 6f 6e 73 74 61 6e 74 44 61 74 61 2c 55 49 4e 54 onstantData,UINT 3e20: 20 42 6f 6f 6c 43 6f 75 6e 74 29 3b 0d 0a 20 20 BoolCount);.. 3e30: 20 20 48 52 45 53 55 4c 54 20 53 65 74 53 74 72 HRESULT SetStr 3e40: 65 61 6d 53 6f 75 72 63 65 28 20 55 49 4e 54 20 eamSource( UINT 3e50: 53 74 72 65 61 6d 4e 75 6d 62 65 72 2c 4c 50 44 StreamNumber,LPD 3e60: 49 52 45 43 54 33 44 56 45 52 54 45 58 42 55 46 IRECT3DVERTEXBUF 3e70: 46 45 52 39 20 70 53 74 72 65 61 6d 44 61 74 61 FER9 pStreamData 3e80: 2c 55 49 4e 54 20 4f 66 66 73 65 74 49 6e 42 79 ,UINT OffsetInBy 3e90: 74 65 73 2c 55 49 4e 54 20 53 74 72 69 64 65 29 tes,UINT Stride) 3ea0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 3eb0: 65 74 53 74 72 65 61 6d 53 6f 75 72 63 65 28 20 etStreamSource( 3ec0: 55 49 4e 54 20 53 74 72 65 61 6d 4e 75 6d 62 65 UINT StreamNumbe 3ed0: 72 2c 4c 50 44 49 52 45 43 54 33 44 56 45 52 54 r,LPDIRECT3DVERT 3ee0: 45 58 42 55 46 46 45 52 39 2a 20 70 70 53 74 72 EXBUFFER9* ppStr 3ef0: 65 61 6d 44 61 74 61 2c 55 49 4e 54 2a 20 70 4f eamData,UINT* pO 3f00: 66 66 73 65 74 49 6e 42 79 74 65 73 2c 55 49 4e ffsetInBytes,UIN 3f10: 54 2a 20 70 53 74 72 69 64 65 29 3b 0d 0a 20 20 T* pStride);.. 3f20: 20 20 48 52 45 53 55 4c 54 20 53 65 74 53 74 72 HRESULT SetStr 3f30: 65 61 6d 53 6f 75 72 63 65 46 72 65 71 28 20 55 eamSourceFreq( U 3f40: 49 4e 54 20 53 74 72 65 61 6d 4e 75 6d 62 65 72 INT StreamNumber 3f50: 2c 55 49 4e 54 20 53 65 74 74 69 6e 67 29 3b 0d ,UINT Setting);. 3f60: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 3f70: 53 74 72 65 61 6d 53 6f 75 72 63 65 46 72 65 71 StreamSourceFreq 3f80: 28 20 55 49 4e 54 20 53 74 72 65 61 6d 4e 75 6d ( UINT StreamNum 3f90: 62 65 72 2c 55 49 4e 54 2a 20 70 53 65 74 74 69 ber,UINT* pSetti 3fa0: 6e 67 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c ng);.. HRESUL 3fb0: 54 20 53 65 74 49 6e 64 69 63 65 73 28 20 4c 50 T SetIndices( LP 3fc0: 44 49 52 45 43 54 33 44 49 4e 44 45 58 42 55 46 DIRECT3DINDEXBUF 3fd0: 46 45 52 39 20 70 49 6e 64 65 78 44 61 74 61 29 FER9 pIndexData) 3fe0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 3ff0: 65 74 49 6e 64 69 63 65 73 28 20 4c 50 44 49 52 etIndices( LPDIR 4000: 45 43 54 33 44 49 4e 44 45 58 42 55 46 46 45 52 ECT3DINDEXBUFFER 4010: 39 2a 20 70 70 49 6e 64 65 78 44 61 74 61 29 3b 9* ppIndexData); 4020: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 72 .. HRESULT Cr 4030: 65 61 74 65 50 69 78 65 6c 53 68 61 64 65 72 28 eatePixelShader( 4040: 20 44 57 4f 52 44 2a 20 70 46 75 6e 63 74 69 6f DWORD* pFunctio 4050: 6e 2c 4c 50 44 49 52 45 43 54 33 44 50 49 58 45 n,LPDIRECT3DPIXE 4060: 4c 53 48 41 44 45 52 39 2a 20 70 70 53 68 61 64 LSHADER9* ppShad 4070: 65 72 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c er);.. HRESUL 4080: 54 20 53 65 74 50 69 78 65 6c 53 68 61 64 65 72 T SetPixelShader 4090: 28 4c 50 44 49 52 45 43 54 33 44 50 49 58 45 4c (LPDIRECT3DPIXEL 40a0: 53 48 41 44 45 52 39 20 70 53 68 61 64 65 72 29 SHADER9 pShader) 40b0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 40c0: 65 74 50 69 78 65 6c 53 68 61 64 65 72 28 4c 50 etPixelShader(LP 40d0: 44 49 52 45 43 54 33 44 50 49 58 45 4c 53 48 41 DIRECT3DPIXELSHA 40e0: 44 45 52 39 2a 20 70 70 53 68 61 64 65 72 29 3b DER9* ppShader); 40f0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 .. HRESULT Se 4100: 74 50 69 78 65 6c 53 68 61 64 65 72 43 6f 6e 73 tPixelShaderCons 4110: 74 61 6e 74 46 28 20 55 49 4e 54 20 53 74 61 72 tantF( UINT Star 4120: 74 52 65 67 69 73 74 65 72 2c 20 66 6c 6f 61 74 tRegister, float 4130: 2a 20 70 43 6f 6e 73 74 61 6e 74 44 61 74 61 2c * pConstantData, 4140: 55 49 4e 54 20 56 65 63 74 6f 72 34 66 43 6f 75 UINT Vector4fCou 4150: 6e 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c nt);.. HRESUL 4160: 54 20 47 65 74 50 69 78 65 6c 53 68 61 64 65 72 T GetPixelShader 4170: 43 6f 6e 73 74 61 6e 74 46 28 20 55 49 4e 54 20 ConstantF( UINT 4180: 53 74 61 72 74 52 65 67 69 73 74 65 72 2c 66 6c StartRegister,fl 4190: 6f 61 74 2a 20 70 43 6f 6e 73 74 61 6e 74 44 61 oat* pConstantDa 41a0: 74 61 2c 55 49 4e 54 20 56 65 63 74 6f 72 34 66 ta,UINT Vector4f 41b0: 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 52 45 Count);.. HRE 41c0: 53 55 4c 54 20 53 65 74 50 69 78 65 6c 53 68 61 SULT SetPixelSha 41d0: 64 65 72 43 6f 6e 73 74 61 6e 74 49 28 20 55 49 derConstantI( UI 41e0: 4e 54 20 53 74 61 72 74 52 65 67 69 73 74 65 72 NT StartRegister 41f0: 2c 20 69 6e 74 2a 20 70 43 6f 6e 73 74 61 6e 74 , int* pConstant 4200: 44 61 74 61 2c 55 49 4e 54 20 56 65 63 74 6f 72 Data,UINT Vector 4210: 34 69 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 4iCount);.. H 4220: 52 45 53 55 4c 54 20 47 65 74 50 69 78 65 6c 53 RESULT GetPixelS 4230: 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 49 28 20 haderConstantI( 4240: 55 49 4e 54 20 53 74 61 72 74 52 65 67 69 73 74 UINT StartRegist 4250: 65 72 2c 69 6e 74 2a 20 70 43 6f 6e 73 74 61 6e er,int* pConstan 4260: 74 44 61 74 61 2c 55 49 4e 54 20 56 65 63 74 6f tData,UINT Vecto 4270: 72 34 69 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 r4iCount);.. 4280: 48 52 45 53 55 4c 54 20 53 65 74 50 69 78 65 6c HRESULT SetPixel 4290: 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 42 28 ShaderConstantB( 42a0: 20 55 49 4e 54 20 53 74 61 72 74 52 65 67 69 73 UINT StartRegis 42b0: 74 65 72 2c 20 42 4f 4f 4c 2a 20 70 43 6f 6e 73 ter, BOOL* pCons 42c0: 74 61 6e 74 44 61 74 61 2c 55 49 4e 54 20 20 42 tantData,UINT B 42d0: 6f 6f 6c 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 oolCount);.. 42e0: 48 52 45 53 55 4c 54 20 47 65 74 50 69 78 65 6c HRESULT GetPixel 42f0: 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 42 28 ShaderConstantB( 4300: 20 55 49 4e 54 20 53 74 61 72 74 52 65 67 69 73 UINT StartRegis 4310: 74 65 72 2c 42 4f 4f 4c 2a 20 70 43 6f 6e 73 74 ter,BOOL* pConst 4320: 61 6e 74 44 61 74 61 2c 55 49 4e 54 20 42 6f 6f antData,UINT Boo 4330: 6c 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 48 52 lCount);.. HR 4340: 45 53 55 4c 54 20 44 72 61 77 52 65 63 74 50 61 ESULT DrawRectPa 4350: 74 63 68 28 20 55 49 4e 54 20 48 61 6e 64 6c 65 tch( UINT Handle 4360: 2c 20 66 6c 6f 61 74 2a 20 70 4e 75 6d 53 65 67 , float* pNumSeg 4370: 73 2c 20 44 33 44 52 45 43 54 50 41 54 43 48 5f s, D3DRECTPATCH_ 4380: 49 4e 46 4f 2a 20 70 52 65 63 74 50 61 74 63 68 INFO* pRectPatch 4390: 49 6e 66 6f 29 3b 0d 0a 20 20 20 20 48 52 45 53 Info);.. HRES 43a0: 55 4c 54 20 44 72 61 77 54 72 69 50 61 74 63 68 ULT DrawTriPatch 43b0: 28 20 55 49 4e 54 20 48 61 6e 64 6c 65 2c 20 66 ( UINT Handle, f 43c0: 6c 6f 61 74 2a 20 70 4e 75 6d 53 65 67 73 2c 20 loat* pNumSegs, 43d0: 44 33 44 54 52 49 50 41 54 43 48 5f 49 4e 46 4f D3DTRIPATCH_INFO 43e0: 2a 20 70 54 72 69 50 61 74 63 68 49 6e 66 6f 29 * pTriPatchInfo) 43f0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44 ;.. HRESULT D 4400: 65 6c 65 74 65 50 61 74 63 68 28 20 55 49 4e 54 eletePatch( UINT 4410: 20 48 61 6e 64 6c 65 29 3b 0d 0a 20 20 20 20 48 Handle);.. H 4420: 52 45 53 55 4c 54 20 43 72 65 61 74 65 51 75 65 RESULT CreateQue 4430: 72 79 28 20 44 33 44 51 55 45 52 59 54 59 50 45 ry( D3DQUERYTYPE 4440: 20 54 79 70 65 2c 4c 50 44 49 52 45 43 54 33 44 Type,LPDIRECT3D 4450: 51 55 45 52 59 39 2a 20 70 70 51 75 65 72 79 29 QUERY9* ppQuery) 4460: 3b 0d 0a 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 ;../*.. debug 4470: 20 7b 0d 0a 20 20 20 20 20 20 20 20 44 33 44 44 {.. D3DD 4480: 45 56 49 43 45 5f 43 52 45 41 54 49 4f 4e 5f 50 EVICE_CREATION_P 4490: 41 52 41 4d 45 54 45 52 53 20 43 72 65 61 74 69 ARAMETERS Creati 44a0: 6f 6e 50 61 72 61 6d 65 74 65 72 73 3b 0d 0a 20 onParameters;.. 44b0: 20 20 20 20 20 20 20 44 33 44 50 52 45 53 45 4e D3DPRESEN 44c0: 54 5f 50 41 52 41 4d 45 54 45 52 53 20 50 72 65 T_PARAMETERS Pre 44d0: 73 65 6e 74 50 61 72 61 6d 65 74 65 72 73 3b 0d sentParameters;. 44e0: 0a 20 20 20 20 20 20 20 20 44 33 44 44 49 53 50 . D3DDISP 44f0: 4c 41 59 4d 4f 44 45 20 44 69 73 70 6c 61 79 4d LAYMODE DisplayM 4500: 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 44 33 ode;.. D3 4510: 44 43 41 50 53 39 20 43 61 70 73 3b 0d 0a 0d 0a DCAPS9 Caps;.... 4520: 20 20 20 20 20 20 20 20 55 49 4e 54 20 41 76 61 UINT Ava 4530: 69 6c 61 62 6c 65 54 65 78 74 75 72 65 4d 65 6d ilableTextureMem 4540: 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 20 ;.. UINT 4550: 53 77 61 70 43 68 61 69 6e 73 3b 0d 0a 20 20 20 SwapChains;.. 4560: 20 20 20 20 20 55 49 4e 54 20 54 65 78 74 75 72 UINT Textur 4570: 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e es;.. UIN 4580: 54 20 56 65 72 74 65 78 42 75 66 66 65 72 73 3b T VertexBuffers; 4590: 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 20 49 .. UINT I 45a0: 6e 64 65 78 42 75 66 66 65 72 73 3b 0d 0a 20 20 ndexBuffers;.. 45b0: 20 20 20 20 20 20 55 49 4e 54 20 56 65 72 74 65 UINT Verte 45c0: 78 53 68 61 64 65 72 73 3b 0d 0a 20 20 20 20 20 xShaders;.. 45d0: 20 20 20 55 49 4e 54 20 50 69 78 65 6c 53 68 61 UINT PixelSha 45e0: 64 65 72 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ders;.... 45f0: 20 44 33 44 56 49 45 57 50 4f 52 54 39 20 56 69 D3DVIEWPORT9 Vi 4600: 65 77 70 6f 72 74 3b 0d 0a 20 20 20 20 20 20 20 ewport;.. 4610: 20 44 33 44 4d 41 54 52 49 58 20 50 72 6f 6a 65 D3DMATRIX Proje 4620: 63 74 69 6f 6e 4d 61 74 72 69 78 3b 0d 0a 20 20 ctionMatrix;.. 4630: 20 20 20 20 20 20 44 33 44 4d 41 54 52 49 58 20 D3DMATRIX 4640: 56 69 65 77 4d 61 74 72 69 78 3b 0d 0a 20 20 20 ViewMatrix;.. 4650: 20 20 20 20 20 44 33 44 4d 41 54 52 49 58 20 57 D3DMATRIX W 4660: 6f 72 6c 64 4d 61 74 72 69 78 3b 0d 0a 20 20 20 orldMatrix;.. 4670: 20 20 20 20 20 44 33 44 4d 41 54 52 49 58 5b 38 D3DMATRIX[8 4680: 5d 20 54 65 78 74 75 72 65 4d 61 74 72 69 63 65 ] TextureMatrice 4690: 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 44 57 s;.... DW 46a0: 4f 52 44 20 46 56 46 3b 0d 0a 20 20 20 20 20 20 ORD FVF;.. 46b0: 20 20 55 49 4e 54 20 56 65 72 74 65 78 53 69 7a UINT VertexSiz 46c0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52 e;.. DWOR 46d0: 44 20 56 65 72 74 65 78 53 68 61 64 65 72 56 65 D VertexShaderVe 46e0: 72 73 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 rsion;.. 46f0: 44 57 4f 52 44 20 50 69 78 65 6c 53 68 61 64 65 DWORD PixelShade 4700: 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 20 20 20 rVersion;.. 4710: 20 20 20 42 4f 4f 4c 20 53 6f 66 74 77 61 72 65 BOOL Software 4720: 56 65 72 74 65 78 50 72 6f 63 65 73 73 69 6e 67 VertexProcessing 4730: 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 44 33 44 ;.... D3D 4740: 4d 41 54 45 52 49 41 4c 39 20 4d 61 74 65 72 69 MATERIAL9 Materi 4750: 61 6c 3b 0d 0a 20 20 20 20 20 20 20 20 44 33 44 al;.. D3D 4760: 4c 49 47 48 54 39 5b 31 36 5d 20 4c 69 67 68 74 LIGHT9[16] Light 4770: 73 3b 0d 0a 20 20 20 20 20 20 20 20 42 4f 4f 4c s;.. BOOL 4780: 5b 31 36 5d 20 4c 69 67 68 74 73 45 6e 61 62 6c [16] LightsEnabl 4790: 65 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 44 ed;.... D 47a0: 33 44 47 41 4d 4d 41 52 41 4d 50 20 47 61 6d 6d 3DGAMMARAMP Gamm 47b0: 61 52 61 6d 70 3b 0d 0a 20 20 20 20 20 20 20 20 aRamp;.. 47c0: 52 45 43 54 20 53 63 69 73 73 6f 72 52 65 63 74 RECT ScissorRect 47d0: 3b 0d 0a 20 20 20 20 20 20 20 20 42 4f 4f 4c 20 ;.. BOOL 47e0: 44 69 61 6c 6f 67 42 6f 78 4d 6f 64 65 3b 0d 0a DialogBoxMode;.. 47f0: 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a 0d 0a }..*/..}.... 4800: 61 6c 69 61 73 20 4c 50 44 49 52 45 43 54 33 44 alias LPDIRECT3D 4810: 44 45 56 49 43 45 39 20 49 44 69 72 65 63 74 33 DEVICE9 IDirect3 4820: 44 44 65 76 69 63 65 39 3b 0d 0a 0d 0a 0d 0a 69 DDevice9;......i 4830: 6e 74 65 72 66 61 63 65 20 4c 50 44 49 52 45 43 nterface LPDIREC 4840: 54 33 44 53 54 41 54 45 42 4c 4f 43 4b 39 20 3a T3DSTATEBLOCK9 : 4850: 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 IUnknown..{.. 4860: 20 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 76 HRESULT GetDev 4870: 69 63 65 28 4c 50 44 49 52 45 43 54 33 44 44 45 ice(LPDIRECT3DDE 4880: 56 49 43 45 39 2a 20 70 70 44 65 76 69 63 65 29 VICE9* ppDevice) 4890: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 ;.. HRESULT C 48a0: 61 70 74 75 72 65 28 29 3b 0d 0a 20 20 20 20 48 apture();.. H 48b0: 52 45 53 55 4c 54 20 41 70 70 6c 79 28 29 3b 0d RESULT Apply();. 48c0: 0a 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b ./*.. debug { 48d0: 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 .. LPCWST 48e0: 52 20 43 72 65 61 74 69 6f 6e 43 61 6c 6c 53 74 R CreationCallSt 48f0: 61 63 6b 3b 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d ack;.. }..*/. 4900: 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 .}....alias LPDI 4910: 52 45 43 54 33 44 53 54 41 54 45 42 4c 4f 43 4b RECT3DSTATEBLOCK 4920: 39 20 49 44 69 72 65 63 74 33 44 53 74 61 74 65 9 IDirect3DState 4930: 42 6c 6f 63 6b 39 3b 0d 0a 0d 0a 69 6e 74 65 72 Block9;....inter 4940: 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 53 face LPDIRECT3DS 4950: 57 41 50 43 48 41 49 4e 39 20 3a 20 49 55 6e 6b WAPCHAIN9 : IUnk 4960: 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 nown..{.. HRE 4970: 53 55 4c 54 20 50 72 65 73 65 6e 74 28 20 52 45 SULT Present( RE 4980: 43 54 2a 20 70 53 6f 75 72 63 65 52 65 63 74 2c CT* pSourceRect, 4990: 20 52 45 43 54 2a 20 70 44 65 73 74 52 65 63 74 RECT* pDestRect 49a0: 2c 48 57 4e 44 20 68 44 65 73 74 57 69 6e 64 6f ,HWND hDestWindo 49b0: 77 4f 76 65 72 72 69 64 65 2c 20 52 47 4e 44 41 wOverride, RGNDA 49c0: 54 41 2a 20 70 44 69 72 74 79 52 65 67 69 6f 6e TA* pDirtyRegion 49d0: 2c 44 57 4f 52 44 20 64 77 46 6c 61 67 73 29 3b ,DWORD dwFlags); 49e0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 .. HRESULT Ge 49f0: 74 46 72 6f 6e 74 42 75 66 66 65 72 44 61 74 61 tFrontBufferData 4a00: 28 20 4c 50 44 49 52 45 43 54 33 44 53 55 52 46 ( LPDIRECT3DSURF 4a10: 41 43 45 39 20 70 44 65 73 74 53 75 72 66 61 63 ACE9 pDestSurfac 4a20: 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 e);.. HRESULT 4a30: 20 47 65 74 42 61 63 6b 42 75 66 66 65 72 28 20 GetBackBuffer( 4a40: 55 49 4e 54 20 69 42 61 63 6b 42 75 66 66 65 72 UINT iBackBuffer 4a50: 2c 44 33 44 42 41 43 4b 42 55 46 46 45 52 5f 54 ,D3DBACKBUFFER_T 4a60: 59 50 45 20 54 79 70 65 2c 4c 50 44 49 52 45 43 YPE Type,LPDIREC 4a70: 54 33 44 53 55 52 46 41 43 45 39 2a 20 70 70 42 T3DSURFACE9* ppB 4a80: 61 63 6b 42 75 66 66 65 72 29 3b 0d 0a 20 20 20 ackBuffer);.. 4a90: 20 48 52 45 53 55 4c 54 20 47 65 74 52 61 73 74 HRESULT GetRast 4aa0: 65 72 53 74 61 74 75 73 28 20 44 33 44 52 41 53 erStatus( D3DRAS 4ab0: 54 45 52 5f 53 54 41 54 55 53 2a 20 70 52 61 73 TER_STATUS* pRas 4ac0: 74 65 72 53 74 61 74 75 73 29 3b 0d 0a 20 20 20 terStatus);.. 4ad0: 20 48 52 45 53 55 4c 54 20 47 65 74 44 69 73 70 HRESULT GetDisp 4ae0: 6c 61 79 4d 6f 64 65 28 20 44 33 44 44 49 53 50 layMode( D3DDISP 4af0: 4c 41 59 4d 4f 44 45 2a 20 70 4d 6f 64 65 29 3b LAYMODE* pMode); 4b00: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 .. HRESULT Ge 4b10: 74 44 65 76 69 63 65 28 20 4c 50 44 49 52 45 43 tDevice( LPDIREC 4b20: 54 33 44 44 45 56 49 43 45 39 20 2a 20 70 70 44 T3DDEVICE9 * ppD 4b30: 65 76 69 63 65 29 3b 0d 0a 20 20 20 20 48 52 45 evice);.. HRE 4b40: 53 55 4c 54 20 47 65 74 50 72 65 73 65 6e 74 50 SULT GetPresentP 4b50: 61 72 61 6d 65 74 65 72 73 28 20 44 33 44 50 52 arameters( D3DPR 4b60: 45 53 45 4e 54 5f 50 41 52 41 4d 45 54 45 52 53 ESENT_PARAMETERS 4b70: 2a 20 70 50 72 65 73 65 6e 74 61 74 69 6f 6e 50 * pPresentationP 4b80: 61 72 61 6d 65 74 65 72 73 29 3b 0d 0a 2f 2a 0d arameters);../*. 4b90: 0a 20 20 20 20 64 65 62 75 67 20 7b 0d 0a 20 20 . debug {.. 4ba0: 20 20 20 20 20 20 44 33 44 50 52 45 53 45 4e 54 D3DPRESENT 4bb0: 5f 50 41 52 41 4d 45 54 45 52 53 20 50 72 65 73 _PARAMETERS Pres 4bc0: 65 6e 74 50 61 72 61 6d 65 74 65 72 73 3b 0d 0a entParameters;.. 4bd0: 20 20 20 20 20 20 20 20 44 33 44 44 49 53 50 4c D3DDISPL 4be0: 41 59 4d 4f 44 45 20 44 69 73 70 6c 61 79 4d 6f AYMODE DisplayMo 4bf0: 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 de;.. LPC 4c00: 57 53 54 52 20 43 72 65 61 74 69 6f 6e 43 61 6c WSTR CreationCal 4c10: 6c 53 74 61 63 6b 3b 0d 0a 20 20 20 20 7d 0d 0a lStack;.. }.. 4c20: 2a 2f 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c */..}....alias L 4c30: 50 44 49 52 45 43 54 33 44 53 57 41 50 43 48 41 PDIRECT3DSWAPCHA 4c40: 49 4e 39 20 49 44 69 72 65 63 74 33 44 53 77 61 IN9 IDirect3DSwa 4c50: 70 43 68 61 69 6e 39 3b 0d 0a 0d 0a 69 6e 74 65 pChain9;....inte 4c60: 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 rface LPDIRECT3D 4c70: 52 45 53 4f 55 52 43 45 39 20 3a 20 49 55 6e 6b RESOURCE9 : IUnk 4c80: 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 nown..{.. HRE 4c90: 53 55 4c 54 20 47 65 74 44 65 76 69 63 65 28 20 SULT GetDevice( 4ca0: 4c 50 44 49 52 45 43 54 33 44 44 45 56 49 43 45 LPDIRECT3DDEVICE 4cb0: 39 2a 20 70 70 44 65 76 69 63 65 29 3b 0d 0a 20 9* ppDevice);.. 4cc0: 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 50 72 HRESULT SetPr 4cd0: 69 76 61 74 65 44 61 74 61 28 20 52 45 46 47 55 ivateData( REFGU 4ce0: 49 44 20 72 65 66 67 75 69 64 2c 20 76 6f 69 64 ID refguid, void 4cf0: 2a 20 70 44 61 74 61 2c 44 57 4f 52 44 20 53 69 * pData,DWORD Si 4d00: 7a 65 4f 66 44 61 74 61 2c 44 57 4f 52 44 20 46 zeOfData,DWORD F 4d10: 6c 61 67 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 lags);.. HRES 4d20: 55 4c 54 20 47 65 74 50 72 69 76 61 74 65 44 61 ULT GetPrivateDa 4d30: 74 61 28 20 52 45 46 47 55 49 44 20 72 65 66 67 ta( REFGUID refg 4d40: 75 69 64 2c 76 6f 69 64 2a 20 70 44 61 74 61 2c uid,void* pData, 4d50: 44 57 4f 52 44 2a 20 70 53 69 7a 65 4f 66 44 61 DWORD* pSizeOfDa 4d60: 74 61 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c ta);.. HRESUL 4d70: 54 20 46 72 65 65 50 72 69 76 61 74 65 44 61 74 T FreePrivateDat 4d80: 61 28 20 52 45 46 47 55 49 44 20 72 65 66 67 75 a( REFGUID refgu 4d90: 69 64 29 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 id);.. DWORD 4da0: 53 65 74 50 72 69 6f 72 69 74 79 28 44 57 4f 52 SetPriority(DWOR 4db0: 44 20 50 72 69 6f 72 69 74 79 4e 65 77 29 3b 0d D PriorityNew);. 4dc0: 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74 50 72 . DWORD GetPr 4dd0: 69 6f 72 69 74 79 28 29 3b 0d 0a 20 20 20 20 76 iority();.. v 4de0: 6f 69 64 20 50 72 65 4c 6f 61 64 28 29 3b 0d 0a oid PreLoad();.. 4df0: 20 20 20 20 44 33 44 52 45 53 4f 55 52 43 45 54 D3DRESOURCET 4e00: 59 50 45 20 47 65 74 54 79 70 65 28 29 3b 0d 0a YPE GetType();.. 4e10: 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 }....alias LPDIR 4e20: 45 43 54 33 44 52 45 53 4f 55 52 43 45 39 20 49 ECT3DRESOURCE9 I 4e30: 44 69 72 65 63 74 33 44 52 65 73 6f 75 72 63 65 Direct3DResource 4e40: 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 9;....interface 4e50: 4c 50 44 49 52 45 43 54 33 44 56 45 52 54 45 58 LPDIRECT3DVERTEX 4e60: 44 45 43 4c 41 52 41 54 49 4f 4e 39 20 3a 20 49 DECLARATION9 : I 4e70: 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 Unknown..{.. 4e80: 48 52 45 53 55 4c 54 20 47 65 74 44 65 76 69 63 HRESULT GetDevic 4e90: 65 28 20 4c 50 44 49 52 45 43 54 33 44 44 45 56 e( LPDIRECT3DDEV 4ea0: 49 43 45 39 2a 20 70 70 44 65 76 69 63 65 29 3b ICE9* ppDevice); 4eb0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 .. HRESULT Ge 4ec0: 74 44 65 63 6c 61 72 61 74 69 6f 6e 28 20 44 33 tDeclaration( D3 4ed0: 44 56 45 52 54 45 58 45 4c 45 4d 45 4e 54 39 2a DVERTEXELEMENT9* 4ee0: 20 70 45 6c 65 6d 65 6e 74 2c 55 49 4e 54 2a 20 pElement,UINT* 4ef0: 70 4e 75 6d 45 6c 65 6d 65 6e 74 73 29 3b 0d 0a pNumElements);.. 4f00: 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b 0d /*.. debug {. 4f10: 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 52 . LPCWSTR 4f20: 20 43 72 65 61 74 69 6f 6e 43 61 6c 6c 53 74 61 CreationCallSta 4f30: 63 6b 3b 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a ck;.. }..*/.. 4f40: 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 }....alias LPDIR 4f50: 45 43 54 33 44 56 45 52 54 45 58 44 45 43 4c 41 ECT3DVERTEXDECLA 4f60: 52 41 54 49 4f 4e 39 20 49 44 69 72 65 63 74 33 RATION9 IDirect3 4f70: 44 56 65 72 74 65 78 44 65 63 6c 61 72 61 74 69 DVertexDeclarati 4f80: 6f 6e 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 on9;....interfac 4f90: 65 20 4c 50 44 49 52 45 43 54 33 44 56 45 52 54 e LPDIRECT3DVERT 4fa0: 45 58 53 48 41 44 45 52 39 20 3a 20 49 55 6e 6b EXSHADER9 : IUnk 4fb0: 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 nown..{.. HRE 4fc0: 53 55 4c 54 20 47 65 74 44 65 76 69 63 65 28 20 SULT GetDevice( 4fd0: 4c 50 44 49 52 45 43 54 33 44 44 45 56 49 43 45 LPDIRECT3DDEVICE 4fe0: 39 20 2a 20 70 70 44 65 76 69 63 65 29 3b 0d 0a 9 * ppDevice);.. 4ff0: 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 46 HRESULT GetF 5000: 75 6e 63 74 69 6f 6e 28 20 76 6f 69 64 2a 2c 55 unction( void*,U 5010: 49 4e 54 2a 20 70 53 69 7a 65 4f 66 44 61 74 61 INT* pSizeOfData 5020: 29 3b 0d 0a 2f 2a 0d 0a 20 20 20 20 64 65 62 75 );../*.. debu 5030: 67 20 7b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f g {.. DWO 5040: 52 44 20 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 20 RD Version;.. 5050: 20 20 20 20 20 4c 50 43 57 53 54 52 20 43 72 65 LPCWSTR Cre 5060: 61 74 69 6f 6e 43 61 6c 6c 53 74 61 63 6b 3b 0d ationCallStack;. 5070: 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a 0d . }..*/..}... 5080: 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 43 54 33 .alias LPDIRECT3 5090: 44 56 45 52 54 45 58 53 48 41 44 45 52 39 20 49 DVERTEXSHADER9 I 50a0: 44 69 72 65 63 74 33 44 56 65 72 74 65 78 53 68 Direct3DVertexSh 50b0: 61 64 65 72 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 ader9;....interf 50c0: 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 50 49 ace LPDIRECT3DPI 50d0: 58 45 4c 53 48 41 44 45 52 39 20 3a 20 49 55 6e XELSHADER9 : IUn 50e0: 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 known..{.. HR 50f0: 45 53 55 4c 54 20 47 65 74 44 65 76 69 63 65 28 ESULT GetDevice( 5100: 20 4c 50 44 49 52 45 43 54 33 44 44 45 56 49 43 LPDIRECT3DDEVIC 5110: 45 39 20 2a 20 70 70 44 65 76 69 63 65 29 3b 0d E9 * ppDevice);. 5120: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 5130: 46 75 6e 63 74 69 6f 6e 28 20 76 6f 69 64 2a 2c Function( void*, 5140: 55 49 4e 54 2a 20 70 53 69 7a 65 4f 66 44 61 74 UINT* pSizeOfDat 5150: 61 29 3b 0d 0a 2f 2a 0d 0a 20 20 20 20 64 65 62 a);../*.. deb 5160: 75 67 20 7b 0d 0a 20 20 20 20 20 20 20 20 44 57 ug {.. DW 5170: 4f 52 44 20 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 ORD Version;.. 5180: 20 20 20 20 20 20 4c 50 43 57 53 54 52 20 43 72 LPCWSTR Cr 5190: 65 61 74 69 6f 6e 43 61 6c 6c 53 74 61 63 6b 3b eationCallStack; 51a0: 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a .. }..*/..}.. 51b0: 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 43 54 ..alias LPDIRECT 51c0: 33 44 50 49 58 45 4c 53 48 41 44 45 52 39 20 49 3DPIXELSHADER9 I 51d0: 44 69 72 65 63 74 33 44 50 69 78 65 6c 53 68 61 Direct3DPixelSha 51e0: 64 65 72 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 der9;....interfa 51f0: 63 65 20 4c 50 44 49 52 45 43 54 33 44 42 41 53 ce LPDIRECT3DBAS 5200: 45 54 45 58 54 55 52 45 39 20 3a 20 4c 50 44 49 ETEXTURE9 : LPDI 5210: 52 45 43 54 33 44 52 45 53 4f 55 52 43 45 39 0d RECT3DRESOURCE9. 5220: 0a 7b 0d 0a 20 20 20 20 44 57 4f 52 44 20 53 65 .{.. DWORD Se 5230: 74 4c 4f 44 28 44 57 4f 52 44 20 4c 4f 44 4e 65 tLOD(DWORD LODNe 5240: 77 29 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 w);.. DWORD G 5250: 65 74 4c 4f 44 28 29 3b 0d 0a 20 20 20 20 44 57 etLOD();.. DW 5260: 4f 52 44 20 47 65 74 4c 65 76 65 6c 43 6f 75 6e ORD GetLevelCoun 5270: 74 28 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c t();.. HRESUL 5280: 54 20 53 65 74 41 75 74 6f 47 65 6e 46 69 6c 74 T SetAutoGenFilt 5290: 65 72 54 79 70 65 28 20 44 33 44 54 45 58 54 55 erType( D3DTEXTU 52a0: 52 45 46 49 4c 54 45 52 54 59 50 45 20 46 69 6c REFILTERTYPE Fil 52b0: 74 65 72 54 79 70 65 29 3b 0d 0a 20 20 20 20 44 terType);.. D 52c0: 33 44 54 45 58 54 55 52 45 46 49 4c 54 45 52 54 3DTEXTUREFILTERT 52d0: 59 50 45 20 47 65 74 41 75 74 6f 47 65 6e 46 69 YPE GetAutoGenFi 52e0: 6c 74 65 72 54 79 70 65 28 29 3b 0d 0a 20 20 20 lterType();.. 52f0: 20 76 6f 69 64 20 47 65 6e 65 72 61 74 65 4d 69 void GenerateMi 5300: 70 53 75 62 4c 65 76 65 6c 73 28 29 3b 0d 0a 7d pSubLevels();..} 5310: 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 ....alias LPDIRE 5320: 43 54 33 44 42 41 53 45 54 45 58 54 55 52 45 39 CT3DBASETEXTURE9 5330: 20 49 44 69 72 65 63 74 33 44 42 61 73 65 54 65 IDirect3DBaseTe 5340: 78 74 75 72 65 39 3b 0d 0a 0d 0a 69 6e 74 65 72 xture9;....inter 5350: 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 54 face LPDIRECT3DT 5360: 45 58 54 55 52 45 39 20 3a 20 4c 50 44 49 52 45 EXTURE9 : LPDIRE 5370: 43 54 33 44 42 41 53 45 54 45 58 54 55 52 45 39 CT3DBASETEXTURE9 5380: 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 ..{.. HRESULT 5390: 20 47 65 74 4c 65 76 65 6c 44 65 73 63 28 20 55 GetLevelDesc( U 53a0: 49 4e 54 20 4c 65 76 65 6c 2c 44 33 44 53 55 52 INT Level,D3DSUR 53b0: 46 41 43 45 5f 44 45 53 43 20 2a 70 44 65 73 63 FACE_DESC *pDesc 53c0: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 53d0: 47 65 74 53 75 72 66 61 63 65 4c 65 76 65 6c 28 GetSurfaceLevel( 53e0: 20 55 49 4e 54 20 4c 65 76 65 6c 2c 4c 50 44 49 UINT Level,LPDI 53f0: 52 45 43 54 33 44 53 55 52 46 41 43 45 39 2a 20 RECT3DSURFACE9* 5400: 70 70 53 75 72 66 61 63 65 4c 65 76 65 6c 29 3b ppSurfaceLevel); 5410: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4c 6f .. HRESULT Lo 5420: 63 6b 52 65 63 74 28 20 55 49 4e 54 20 4c 65 76 ckRect( UINT Lev 5430: 65 6c 2c 44 33 44 4c 4f 43 4b 45 44 5f 52 45 43 el,D3DLOCKED_REC 5440: 54 2a 20 70 4c 6f 63 6b 65 64 52 65 63 74 2c 52 T* pLockedRect,R 5450: 45 43 54 2a 20 70 52 65 63 74 2c 44 57 4f 52 44 ECT* pRect,DWORD 5460: 20 46 6c 61 67 73 29 3b 0d 0a 20 20 20 20 48 52 Flags);.. HR 5470: 45 53 55 4c 54 20 55 6e 6c 6f 63 6b 52 65 63 74 ESULT UnlockRect 5480: 28 20 55 49 4e 54 20 4c 65 76 65 6c 29 3b 0d 0a ( UINT Level);.. 5490: 20 20 20 20 48 52 45 53 55 4c 54 20 41 64 64 44 HRESULT AddD 54a0: 69 72 74 79 52 65 63 74 28 52 45 43 54 2a 20 70 irtyRect(RECT* p 54b0: 44 69 72 74 79 52 65 63 74 29 3b 0d 0a 2f 2a 0d DirtyRect);../*. 54c0: 0a 20 20 20 20 64 65 62 75 67 20 7b 0d 0a 20 20 . debug {.. 54d0: 20 20 20 20 20 20 4c 50 43 57 53 54 52 20 4e 61 LPCWSTR Na 54e0: 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e me;.. UIN 54f0: 54 20 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 T Width;.. 5500: 20 20 55 49 4e 54 20 48 65 69 67 68 74 3b 0d 0a UINT Height;.. 5510: 20 20 20 20 20 20 20 20 55 49 4e 54 20 4c 65 76 UINT Lev 5520: 65 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 els;.. DW 5530: 4f 52 44 20 55 73 61 67 65 3b 0d 0a 20 20 20 20 ORD Usage;.. 5540: 20 20 20 20 44 33 44 46 4f 52 4d 41 54 20 46 6f D3DFORMAT Fo 5550: 72 6d 61 74 3b 0d 0a 20 20 20 20 20 20 20 20 44 rmat;.. D 5560: 33 44 50 4f 4f 4c 20 50 6f 6f 6c 3b 0d 0a 20 20 3DPOOL Pool;.. 5570: 20 20 20 20 20 20 44 57 4f 52 44 20 50 72 69 6f DWORD Prio 5580: 72 69 74 79 3b 0d 0a 20 20 20 20 20 20 20 20 44 rity;.. D 5590: 57 4f 52 44 20 4c 4f 44 3b 0d 0a 20 20 20 20 20 WORD LOD;.. 55a0: 20 20 20 44 33 44 54 45 58 54 55 52 45 46 49 4c D3DTEXTUREFIL 55b0: 54 45 52 54 59 50 45 20 46 69 6c 74 65 72 54 79 TERTYPE FilterTy 55c0: 70 65 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e pe;.. UIN 55d0: 54 20 4c 6f 63 6b 43 6f 75 6e 74 3b 0d 0a 20 20 T LockCount;.. 55e0: 20 20 20 20 20 20 4c 50 43 57 53 54 52 20 43 72 LPCWSTR Cr 55f0: 65 61 74 69 6f 6e 43 61 6c 6c 53 74 61 63 6b 3b eationCallStack; 5600: 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a .. }..*/..}.. 5610: 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 43 54 ..alias LPDIRECT 5620: 33 44 54 45 58 54 55 52 45 39 20 49 44 69 72 65 3DTEXTURE9 IDire 5630: 63 74 33 44 54 65 78 74 75 72 65 39 3b 0d 0a 0d ct3DTexture9;... 5640: 0a 69 6e 74 65 72 66 61 63 65 20 4c 50 44 49 52 .interface LPDIR 5650: 45 43 54 33 44 56 4f 4c 55 4d 45 54 45 58 54 55 ECT3DVOLUMETEXTU 5660: 52 45 39 20 3a 20 4c 50 44 49 52 45 43 54 33 44 RE9 : LPDIRECT3D 5670: 42 41 53 45 54 45 58 54 55 52 45 39 0d 0a 7b 0d BASETEXTURE9..{. 5680: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 5690: 4c 65 76 65 6c 44 65 73 63 28 20 55 49 4e 54 20 LevelDesc( UINT 56a0: 4c 65 76 65 6c 2c 44 33 44 56 4f 4c 55 4d 45 5f Level,D3DVOLUME_ 56b0: 44 45 53 43 20 2a 70 44 65 73 63 29 3b 0d 0a 20 DESC *pDesc);.. 56c0: 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 56 6f HRESULT GetVo 56d0: 6c 75 6d 65 4c 65 76 65 6c 28 20 55 49 4e 54 20 lumeLevel( UINT 56e0: 4c 65 76 65 6c 2c 4c 50 44 49 52 45 43 54 33 44 Level,LPDIRECT3D 56f0: 56 4f 4c 55 4d 45 39 2a 20 70 70 56 6f 6c 75 6d VOLUME9* ppVolum 5700: 65 4c 65 76 65 6c 29 3b 0d 0a 20 20 20 20 48 52 eLevel);.. HR 5710: 45 53 55 4c 54 20 4c 6f 63 6b 42 6f 78 28 20 55 ESULT LockBox( U 5720: 49 4e 54 20 4c 65 76 65 6c 2c 44 33 44 4c 4f 43 INT Level,D3DLOC 5730: 4b 45 44 5f 42 4f 58 2a 20 70 4c 6f 63 6b 65 64 KED_BOX* pLocked 5740: 56 6f 6c 75 6d 65 2c 20 44 33 44 42 4f 58 2a 20 Volume, D3DBOX* 5750: 70 42 6f 78 2c 44 57 4f 52 44 20 46 6c 61 67 73 pBox,DWORD Flags 5760: 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 );.. HRESULT 5770: 55 6e 6c 6f 63 6b 42 6f 78 28 20 55 49 4e 54 20 UnlockBox( UINT 5780: 4c 65 76 65 6c 29 3b 0d 0a 20 20 20 20 48 52 45 Level);.. HRE 5790: 53 55 4c 54 20 41 64 64 44 69 72 74 79 42 6f 78 SULT AddDirtyBox 57a0: 28 20 44 33 44 42 4f 58 2a 20 70 44 69 72 74 79 ( D3DBOX* pDirty 57b0: 42 6f 78 29 3b 0d 0a 2f 2a 0d 0a 20 20 20 20 64 Box);../*.. d 57c0: 65 62 75 67 20 7b 0d 0a 20 20 20 20 20 20 20 20 ebug {.. 57d0: 4c 50 43 57 53 54 52 20 4e 61 6d 65 3b 0d 0a 20 LPCWSTR Name;.. 57e0: 20 20 20 20 20 20 20 55 49 4e 54 20 57 69 64 74 UINT Widt 57f0: 68 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 h;.. UINT 5800: 20 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 Height;.. 5810: 20 20 55 49 4e 54 20 44 65 70 74 68 3b 0d 0a 20 UINT Depth;.. 5820: 20 20 20 20 20 20 20 55 49 4e 54 20 4c 65 76 65 UINT Leve 5830: 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f ls;.. DWO 5840: 52 44 20 55 73 61 67 65 3b 0d 0a 20 20 20 20 20 RD Usage;.. 5850: 20 20 20 44 33 44 46 4f 52 4d 41 54 20 46 6f 72 D3DFORMAT For 5860: 6d 61 74 3b 0d 0a 20 20 20 20 20 20 20 20 44 33 mat;.. D3 5870: 44 50 4f 4f 4c 20 50 6f 6f 6c 3b 0d 0a 20 20 20 DPOOL Pool;.. 5880: 20 20 20 20 20 44 57 4f 52 44 20 50 72 69 6f 72 DWORD Prior 5890: 69 74 79 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 ity;.. DW 58a0: 4f 52 44 20 4c 4f 44 3b 0d 0a 20 20 20 20 20 20 ORD LOD;.. 58b0: 20 20 44 33 44 54 45 58 54 55 52 45 46 49 4c 54 D3DTEXTUREFILT 58c0: 45 52 54 59 50 45 20 46 69 6c 74 65 72 54 79 70 ERTYPE FilterTyp 58d0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 e;.. UINT 58e0: 20 4c 6f 63 6b 43 6f 75 6e 74 3b 0d 0a 20 20 20 LockCount;.. 58f0: 20 20 20 20 20 4c 50 43 57 53 54 52 20 43 72 65 LPCWSTR Cre 5900: 61 74 69 6f 6e 43 61 6c 6c 53 74 61 63 6b 3b 0d ationCallStack;. 5910: 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a 0d . }..*/..}... 5920: 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 43 54 33 .alias LPDIRECT3 5930: 44 56 4f 4c 55 4d 45 54 45 58 54 55 52 45 39 20 DVOLUMETEXTURE9 5940: 49 44 69 72 65 63 74 33 44 56 6f 6c 75 6d 65 54 IDirect3DVolumeT 5950: 65 78 74 75 72 65 39 3b 0d 0a 0d 0a 69 6e 74 65 exture9;....inte 5960: 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 rface LPDIRECT3D 5970: 43 55 42 45 54 45 58 54 55 52 45 39 20 3a 20 4c CUBETEXTURE9 : L 5980: 50 44 49 52 45 43 54 33 44 42 41 53 45 54 45 58 PDIRECT3DBASETEX 5990: 54 55 52 45 39 0d 0a 7b 0d 0a 20 20 20 20 48 52 TURE9..{.. HR 59a0: 45 53 55 4c 54 20 47 65 74 4c 65 76 65 6c 44 65 ESULT GetLevelDe 59b0: 73 63 28 20 55 49 4e 54 20 4c 65 76 65 6c 2c 44 sc( UINT Level,D 59c0: 33 44 53 55 52 46 41 43 45 5f 44 45 53 43 20 2a 3DSURFACE_DESC * 59d0: 70 44 65 73 63 29 3b 0d 0a 20 20 20 20 48 52 45 pDesc);.. HRE 59e0: 53 55 4c 54 20 47 65 74 43 75 62 65 4d 61 70 53 SULT GetCubeMapS 59f0: 75 72 66 61 63 65 28 20 44 33 44 43 55 42 45 4d urface( D3DCUBEM 5a00: 41 50 5f 46 41 43 45 53 20 46 61 63 65 54 79 70 AP_FACES FaceTyp 5a10: 65 2c 55 49 4e 54 20 4c 65 76 65 6c 2c 4c 50 44 e,UINT Level,LPD 5a20: 49 52 45 43 54 33 44 53 55 52 46 41 43 45 39 2a IRECT3DSURFACE9* 5a30: 20 70 70 43 75 62 65 4d 61 70 53 75 72 66 61 63 ppCubeMapSurfac 5a40: 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 e);.. HRESULT 5a50: 20 4c 6f 63 6b 52 65 63 74 28 20 44 33 44 43 55 LockRect( D3DCU 5a60: 42 45 4d 41 50 5f 46 41 43 45 53 20 46 61 63 65 BEMAP_FACES Face 5a70: 54 79 70 65 2c 55 49 4e 54 20 4c 65 76 65 6c 2c Type,UINT Level, 5a80: 44 33 44 4c 4f 43 4b 45 44 5f 52 45 43 54 2a 20 D3DLOCKED_RECT* 5a90: 70 4c 6f 63 6b 65 64 52 65 63 74 2c 20 52 45 43 pLockedRect, REC 5aa0: 54 2a 20 70 52 65 63 74 2c 44 57 4f 52 44 20 46 T* pRect,DWORD F 5ab0: 6c 61 67 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 lags);.. HRES 5ac0: 55 4c 54 20 55 6e 6c 6f 63 6b 52 65 63 74 28 20 ULT UnlockRect( 5ad0: 44 33 44 43 55 42 45 4d 41 50 5f 46 41 43 45 53 D3DCUBEMAP_FACES 5ae0: 20 46 61 63 65 54 79 70 65 2c 55 49 4e 54 20 4c FaceType,UINT L 5af0: 65 76 65 6c 29 3b 0d 0a 20 20 20 20 48 52 45 53 evel);.. HRES 5b00: 55 4c 54 20 41 64 64 44 69 72 74 79 52 65 63 74 ULT AddDirtyRect 5b10: 28 20 44 33 44 43 55 42 45 4d 41 50 5f 46 41 43 ( D3DCUBEMAP_FAC 5b20: 45 53 20 46 61 63 65 54 79 70 65 2c 20 52 45 43 ES FaceType, REC 5b30: 54 2a 20 70 44 69 72 74 79 52 65 63 74 29 3b 0d T* pDirtyRect);. 5b40: 0a 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b ./*.. debug { 5b50: 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 .. LPCWST 5b60: 52 20 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 R Name;.. 5b70: 20 55 49 4e 54 20 57 69 64 74 68 3b 0d 0a 20 20 UINT Width;.. 5b80: 20 20 20 20 20 20 55 49 4e 54 20 48 65 69 67 68 UINT Heigh 5b90: 74 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 t;.. UINT 5ba0: 20 4c 65 76 65 6c 73 3b 0d 0a 20 20 20 20 20 20 Levels;.. 5bb0: 20 20 44 57 4f 52 44 20 55 73 61 67 65 3b 0d 0a DWORD Usage;.. 5bc0: 20 20 20 20 20 20 20 20 44 33 44 46 4f 52 4d 41 D3DFORMA 5bd0: 54 20 46 6f 72 6d 61 74 3b 0d 0a 20 20 20 20 20 T Format;.. 5be0: 20 20 20 44 33 44 50 4f 4f 4c 20 50 6f 6f 6c 3b D3DPOOL Pool; 5bf0: 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 .. DWORD 5c00: 50 72 69 6f 72 69 74 79 3b 0d 0a 20 20 20 20 20 Priority;.. 5c10: 20 20 20 44 57 4f 52 44 20 4c 4f 44 3b 0d 0a 20 DWORD LOD;.. 5c20: 20 20 20 20 20 20 20 44 33 44 54 45 58 54 55 52 D3DTEXTUR 5c30: 45 46 49 4c 54 45 52 54 59 50 45 20 46 69 6c 74 EFILTERTYPE Filt 5c40: 65 72 54 79 70 65 3b 0d 0a 20 20 20 20 20 20 20 erType;.. 5c50: 20 55 49 4e 54 20 4c 6f 63 6b 43 6f 75 6e 74 3b UINT LockCount; 5c60: 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 .. LPCWST 5c70: 52 20 43 72 65 61 74 69 6f 6e 43 61 6c 6c 53 74 R CreationCallSt 5c80: 61 63 6b 3b 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d ack;.. }..*/. 5c90: 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 .}....alias LPDI 5ca0: 52 45 43 54 33 44 43 55 42 45 54 45 58 54 55 52 RECT3DCUBETEXTUR 5cb0: 45 39 20 49 44 69 72 65 63 74 33 44 43 75 62 65 E9 IDirect3DCube 5cc0: 54 65 78 74 75 72 65 39 3b 0d 0a 0d 0a 69 6e 74 Texture9;....int 5cd0: 65 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 erface LPDIRECT3 5ce0: 44 56 45 52 54 45 58 42 55 46 46 45 52 39 20 3a DVERTEXBUFFER9 : 5cf0: 20 4c 50 44 49 52 45 43 54 33 44 52 45 53 4f 55 LPDIRECT3DRESOU 5d00: 52 43 45 39 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 RCE9..{.. HRE 5d10: 53 55 4c 54 20 4c 6f 63 6b 28 20 55 49 4e 54 20 SULT Lock( UINT 5d20: 4f 66 66 73 65 74 54 6f 4c 6f 63 6b 2c 55 49 4e OffsetToLock,UIN 5d30: 54 20 53 69 7a 65 54 6f 4c 6f 63 6b 2c 76 6f 69 T SizeToLock,voi 5d40: 64 2a 2a 20 70 70 62 44 61 74 61 2c 44 57 4f 52 d** ppbData,DWOR 5d50: 44 20 46 6c 61 67 73 29 3b 0d 0a 20 20 20 20 48 D Flags);.. H 5d60: 52 45 53 55 4c 54 20 55 6e 6c 6f 63 6b 28 29 3b RESULT Unlock(); 5d70: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 .. HRESULT Ge 5d80: 74 44 65 73 63 28 20 44 33 44 56 45 52 54 45 58 tDesc( D3DVERTEX 5d90: 42 55 46 46 45 52 5f 44 45 53 43 20 2a 70 44 65 BUFFER_DESC *pDe 5da0: 73 63 29 3b 0d 0a 2f 2a 0d 0a 20 20 20 20 64 65 sc);../*.. de 5db0: 62 75 67 20 7b 0d 0a 20 20 20 20 20 20 20 20 4c bug {.. L 5dc0: 50 43 57 53 54 52 20 4e 61 6d 65 3b 0d 0a 20 20 PCWSTR Name;.. 5dd0: 20 20 20 20 20 20 55 49 4e 54 20 4c 65 6e 67 74 UINT Lengt 5de0: 68 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52 h;.. DWOR 5df0: 44 20 55 73 61 67 65 3b 0d 0a 20 20 20 20 20 20 D Usage;.. 5e00: 20 20 44 57 4f 52 44 20 46 56 46 3b 0d 0a 20 20 DWORD FVF;.. 5e10: 20 20 20 20 20 20 44 33 44 50 4f 4f 4c 20 50 6f D3DPOOL Po 5e20: 6f 6c 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f ol;.. DWO 5e30: 52 44 20 50 72 69 6f 72 69 74 79 3b 0d 0a 20 20 RD Priority;.. 5e40: 20 20 20 20 20 20 55 49 4e 54 20 4c 6f 63 6b 43 UINT LockC 5e50: 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 4c ount;.. L 5e60: 50 43 57 53 54 52 20 43 72 65 61 74 69 6f 6e 43 PCWSTR CreationC 5e70: 61 6c 6c 53 74 61 63 6b 3b 0d 0a 20 20 20 20 7d allStack;.. } 5e80: 0d 0a 2a 2f 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 ..*/..}....alias 5e90: 20 4c 50 44 49 52 45 43 54 33 44 56 45 52 54 45 LPDIRECT3DVERTE 5ea0: 58 42 55 46 46 45 52 39 20 49 44 69 72 65 63 74 XBUFFER9 IDirect 5eb0: 33 44 56 65 72 74 65 78 42 75 66 66 65 72 39 3b 3DVertexBuffer9; 5ec0: 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 4c 50 ....interface LP 5ed0: 44 49 52 45 43 54 33 44 49 4e 44 45 58 42 55 46 DIRECT3DINDEXBUF 5ee0: 46 45 52 39 20 3a 20 4c 50 44 49 52 45 43 54 33 FER9 : LPDIRECT3 5ef0: 44 52 45 53 4f 55 52 43 45 39 0d 0a 7b 0d 0a 20 DRESOURCE9..{.. 5f00: 20 20 20 48 52 45 53 55 4c 54 20 4c 6f 63 6b 28 HRESULT Lock( 5f10: 20 55 49 4e 54 20 4f 66 66 73 65 74 54 6f 4c 6f UINT OffsetToLo 5f20: 63 6b 2c 55 49 4e 54 20 53 69 7a 65 54 6f 4c 6f ck,UINT SizeToLo 5f30: 63 6b 2c 76 6f 69 64 2a 2a 20 70 70 62 44 61 74 ck,void** ppbDat 5f40: 61 2c 44 57 4f 52 44 20 46 6c 61 67 73 29 3b 0d a,DWORD Flags);. 5f50: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 55 6e 6c . HRESULT Unl 5f60: 6f 63 6b 28 29 3b 0d 0a 20 20 20 20 48 52 45 53 ock();.. HRES 5f70: 55 4c 54 20 47 65 74 44 65 73 63 28 20 44 33 44 ULT GetDesc( D3D 5f80: 49 4e 44 45 58 42 55 46 46 45 52 5f 44 45 53 43 INDEXBUFFER_DESC 5f90: 20 2a 70 44 65 73 63 29 3b 0d 0a 2f 2a 0d 0a 20 *pDesc);../*.. 5fa0: 20 20 20 64 65 62 75 67 20 7b 0d 0a 20 20 20 20 debug {.. 5fb0: 20 20 20 20 4c 50 43 57 53 54 52 20 4e 61 6d 65 LPCWSTR Name 5fc0: 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 20 ;.. UINT 5fd0: 4c 65 6e 67 74 68 3b 0d 0a 20 20 20 20 20 20 20 Length;.. 5fe0: 20 44 57 4f 52 44 20 55 73 61 67 65 3b 0d 0a 20 DWORD Usage;.. 5ff0: 20 20 20 20 20 20 20 44 33 44 46 4f 52 4d 41 54 D3DFORMAT 6000: 20 46 6f 72 6d 61 74 3b 0d 0a 20 20 20 20 20 20 Format;.. 6010: 20 20 44 33 44 50 4f 4f 4c 20 50 6f 6f 6c 3b 0d D3DPOOL Pool;. 6020: 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 50 . DWORD P 6030: 72 69 6f 72 69 74 79 3b 0d 0a 20 20 20 20 20 20 riority;.. 6040: 20 20 55 49 4e 54 20 4c 6f 63 6b 43 6f 75 6e 74 UINT LockCount 6050: 3b 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 ;.. LPCWS 6060: 54 52 20 43 72 65 61 74 69 6f 6e 43 61 6c 6c 53 TR CreationCallS 6070: 74 61 63 6b 3b 0d 0a 20 20 20 20 7d 0d 0a 2a 2f tack;.. }..*/ 6080: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 ..}....alias LPD 6090: 49 52 45 43 54 33 44 49 4e 44 45 58 42 55 46 46 IRECT3DINDEXBUFF 60a0: 45 52 39 20 49 44 69 72 65 63 74 33 44 49 6e 64 ER9 IDirect3DInd 60b0: 65 78 42 75 66 66 65 72 39 3b 0d 0a 0d 0a 69 6e exBuffer9;....in 60c0: 74 65 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 terface LPDIRECT 60d0: 33 44 53 55 52 46 41 43 45 39 20 3a 20 4c 50 44 3DSURFACE9 : LPD 60e0: 49 52 45 43 54 33 44 52 45 53 4f 55 52 43 45 39 IRECT3DRESOURCE9 60f0: 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 ..{.. HRESULT 6100: 20 47 65 74 43 6f 6e 74 61 69 6e 65 72 28 20 52 GetContainer( R 6110: 45 46 49 49 44 20 72 69 69 64 2c 76 6f 69 64 2a EFIID riid,void* 6120: 2a 20 70 70 43 6f 6e 74 61 69 6e 65 72 29 3b 0d * ppContainer);. 6130: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 . HRESULT Get 6140: 44 65 73 63 28 20 44 33 44 53 55 52 46 41 43 45 Desc( D3DSURFACE 6150: 5f 44 45 53 43 20 2a 70 44 65 73 63 29 3b 0d 0a _DESC *pDesc);.. 6160: 20 20 20 20 48 52 45 53 55 4c 54 20 4c 6f 63 6b HRESULT Lock 6170: 52 65 63 74 28 20 44 33 44 4c 4f 43 4b 45 44 5f Rect( D3DLOCKED_ 6180: 52 45 43 54 2a 20 70 4c 6f 63 6b 65 64 52 65 63 RECT* pLockedRec 6190: 74 2c 20 52 45 43 54 2a 20 70 52 65 63 74 2c 44 t, RECT* pRect,D 61a0: 57 4f 52 44 20 46 6c 61 67 73 29 3b 0d 0a 20 20 WORD Flags);.. 61b0: 20 20 48 52 45 53 55 4c 54 20 55 6e 6c 6f 63 6b HRESULT Unlock 61c0: 52 65 63 74 28 29 3b 0d 0a 20 20 20 20 48 52 45 Rect();.. HRE 61d0: 53 55 4c 54 20 47 65 74 44 43 28 20 48 44 43 20 SULT GetDC( HDC 61e0: 2a 70 68 64 63 29 3b 0d 0a 20 20 20 20 48 52 45 *phdc);.. HRE 61f0: 53 55 4c 54 20 52 65 6c 65 61 73 65 44 43 28 20 SULT ReleaseDC( 6200: 48 44 43 20 68 64 63 29 3b 0d 0a 2f 2a 0d 0a 20 HDC hdc);../*.. 6210: 20 20 20 64 65 62 75 67 20 7b 0d 0a 20 20 20 20 debug {.. 6220: 20 20 20 20 4c 50 43 57 53 54 52 20 4e 61 6d 65 LPCWSTR Name 6230: 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 20 ;.. UINT 6240: 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 Width;.. 6250: 55 49 4e 54 20 48 65 69 67 68 74 3b 0d 0a 20 20 UINT Height;.. 6260: 20 20 20 20 20 20 44 57 4f 52 44 20 55 73 61 67 DWORD Usag 6270: 65 3b 0d 0a 20 20 20 20 20 20 20 20 44 33 44 46 e;.. D3DF 6280: 4f 52 4d 41 54 20 46 6f 72 6d 61 74 3b 0d 0a 20 ORMAT Format;.. 6290: 20 20 20 20 20 20 20 44 33 44 50 4f 4f 4c 20 50 D3DPOOL P 62a0: 6f 6f 6c 3b 0d 0a 20 20 20 20 20 20 20 20 44 33 ool;.. D3 62b0: 44 4d 55 4c 54 49 53 41 4d 50 4c 45 5f 54 59 50 DMULTISAMPLE_TYP 62c0: 45 20 4d 75 6c 74 69 53 61 6d 70 6c 65 54 79 70 E MultiSampleTyp 62d0: 65 3b 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52 e;.. DWOR 62e0: 44 20 4d 75 6c 74 69 53 61 6d 70 6c 65 51 75 61 D MultiSampleQua 62f0: 6c 69 74 79 3b 0d 0a 20 20 20 20 20 20 20 20 44 lity;.. D 6300: 57 4f 52 44 20 50 72 69 6f 72 69 74 79 3b 0d 0a WORD Priority;.. 6310: 20 20 20 20 20 20 20 20 55 49 4e 54 20 4c 6f 63 UINT Loc 6320: 6b 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 kCount;.. 6330: 20 55 49 4e 54 20 44 43 43 6f 75 6e 74 3b 0d 0a UINT DCCount;.. 6340: 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 52 20 LPCWSTR 6350: 43 72 65 61 74 69 6f 6e 43 61 6c 6c 53 74 61 63 CreationCallStac 6360: 6b 3b 0d 0a 20 20 20 20 7d 0d 0a 2a 2f 0d 0a 7d k;.. }..*/..} 6370: 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 49 52 45 ....alias LPDIRE 6380: 43 54 33 44 53 55 52 46 41 43 45 39 20 49 44 69 CT3DSURFACE9 IDi 6390: 72 65 63 74 33 44 53 75 72 66 61 63 65 39 3b 0d rect3DSurface9;. 63a0: 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 4c 50 44 ...interface LPD 63b0: 49 52 45 43 54 33 44 56 4f 4c 55 4d 45 39 20 3a IRECT3DVOLUME9 : 63c0: 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 IUnknown..{.. 63d0: 20 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 76 HRESULT GetDev 63e0: 69 63 65 28 20 4c 50 44 49 52 45 43 54 33 44 44 ice( LPDIRECT3DD 63f0: 45 56 49 43 45 39 20 2a 20 70 70 44 65 76 69 63 EVICE9 * ppDevic 6400: 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 e);.. HRESULT 6410: 20 53 65 74 50 72 69 76 61 74 65 44 61 74 61 28 SetPrivateData( 6420: 20 52 45 46 47 55 49 44 20 72 65 66 67 75 69 64 REFGUID refguid 6430: 2c 20 76 6f 69 64 2a 20 70 44 61 74 61 2c 44 57 , void* pData,DW 6440: 4f 52 44 20 53 69 7a 65 4f 66 44 61 74 61 2c 44 ORD SizeOfData,D 6450: 57 4f 52 44 20 46 6c 61 67 73 29 3b 0d 0a 20 20 WORD Flags);.. 6460: 20 20 48 52 45 53 55 4c 54 20 47 65 74 50 72 69 HRESULT GetPri 6470: 76 61 74 65 44 61 74 61 28 20 52 45 46 47 55 49 vateData( REFGUI 6480: 44 20 72 65 66 67 75 69 64 2c 76 6f 69 64 2a 20 D refguid,void* 6490: 70 44 61 74 61 2c 44 57 4f 52 44 2a 20 70 53 69 pData,DWORD* pSi 64a0: 7a 65 4f 66 44 61 74 61 29 3b 0d 0a 20 20 20 20 zeOfData);.. 64b0: 48 52 45 53 55 4c 54 20 46 72 65 65 50 72 69 76 HRESULT FreePriv 64c0: 61 74 65 44 61 74 61 28 20 52 45 46 47 55 49 44 ateData( REFGUID 64d0: 20 72 65 66 67 75 69 64 29 3b 0d 0a 20 20 20 20 refguid);.. 64e0: 48 52 45 53 55 4c 54 20 47 65 74 43 6f 6e 74 61 HRESULT GetConta 64f0: 69 6e 65 72 28 20 52 45 46 49 49 44 20 72 69 69 iner( REFIID rii 6500: 64 2c 76 6f 69 64 2a 2a 20 70 70 43 6f 6e 74 61 d,void** ppConta 6510: 69 6e 65 72 29 3b 0d 0a 20 20 20 20 48 52 45 53 iner);.. HRES 6520: 55 4c 54 20 47 65 74 44 65 73 63 28 20 44 33 44 ULT GetDesc( D3D 6530: 56 4f 4c 55 4d 45 5f 44 45 53 43 20 2a 70 44 65 VOLUME_DESC *pDe 6540: 73 63 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c sc);.. HRESUL 6550: 54 20 4c 6f 63 6b 42 6f 78 28 20 44 33 44 4c 4f T LockBox( D3DLO 6560: 43 4b 45 44 5f 42 4f 58 20 2a 20 70 4c 6f 63 6b CKED_BOX * pLock 6570: 65 64 56 6f 6c 75 6d 65 2c 20 44 33 44 42 4f 58 edVolume, D3DBOX 6580: 2a 20 70 42 6f 78 2c 44 57 4f 52 44 20 46 6c 61 * pBox,DWORD Fla 6590: 67 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c gs);.. HRESUL 65a0: 54 20 55 6e 6c 6f 63 6b 42 6f 78 28 29 3b 0d 0a T UnlockBox();.. 65b0: 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b 0d /*.. debug {. 65c0: 0a 20 20 20 20 20 20 20 20 4c 50 43 57 53 54 52 . LPCWSTR 65d0: 20 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 Name;.. 65e0: 55 49 4e 54 20 57 69 64 74 68 3b 0d 0a 20 20 20 UINT Width;.. 65f0: 20 20 20 20 20 55 49 4e 54 20 48 65 69 67 68 74 UINT Height 6600: 3b 0d 0a 20 20 20 20 20 20 20 20 55 49 4e 54 20 ;.. UINT 6610: 44 65 70 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 Depth;.. 6620: 44 57 4f 52 44 20 55 73 61 67 65 3b 0d 0a 20 20 DWORD Usage;.. 6630: 20 20 20 20 20 20 44 33 44 46 4f 52 4d 41 54 20 D3DFORMAT 6640: 46 6f 72 6d 61 74 3b 0d 0a 20 20 20 20 20 20 20 Format;.. 6650: 20 44 33 44 50 4f 4f 4c 20 50 6f 6f 6c 3b 0d 0a D3DPOOL Pool;.. 6660: 20 20 20 20 20 20 20 20 55 49 4e 54 20 4c 6f 63 UINT Loc 6670: 6b 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 kCount;.. 6680: 20 4c 50 43 57 53 54 52 20 43 72 65 61 74 69 6f LPCWSTR Creatio 6690: 6e 43 61 6c 6c 53 74 61 63 6b 3b 0d 0a 20 20 20 nCallStack;.. 66a0: 20 7d 0d 0a 2a 2f 0d 0a 7d 0d 0a 0d 0a 61 6c 69 }..*/..}....ali 66b0: 61 73 20 4c 50 44 49 52 45 43 54 33 44 56 4f 4c as LPDIRECT3DVOL 66c0: 55 4d 45 39 20 49 44 69 72 65 63 74 33 44 56 6f UME9 IDirect3DVo 66d0: 6c 75 6d 65 39 3b 0d 0a 0d 0a 69 6e 74 65 72 66 lume9;....interf 66e0: 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 51 55 ace LPDIRECT3DQU 66f0: 45 52 59 39 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d ERY9 : IUnknown. 6700: 0a 7b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 .{.. HRESULT 6710: 47 65 74 44 65 76 69 63 65 28 20 4c 50 44 49 52 GetDevice( LPDIR 6720: 45 43 54 33 44 44 45 56 49 43 45 39 2a 20 70 70 ECT3DDEVICE9* pp 6730: 44 65 76 69 63 65 29 3b 0d 0a 20 20 20 20 44 33 Device);.. D3 6740: 44 51 55 45 52 59 54 59 50 45 20 47 65 74 54 79 DQUERYTYPE GetTy 6750: 70 65 28 29 3b 0d 0a 20 20 20 20 44 57 4f 52 44 pe();.. DWORD 6760: 20 47 65 74 44 61 74 61 53 69 7a 65 28 29 3b 0d GetDataSize();. 6770: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 49 73 73 . HRESULT Iss 6780: 75 65 28 20 44 57 4f 52 44 20 64 77 49 73 73 75 ue( DWORD dwIssu 6790: 65 46 6c 61 67 73 29 3b 0d 0a 20 20 20 20 48 52 eFlags);.. HR 67a0: 45 53 55 4c 54 20 47 65 74 44 61 74 61 28 20 76 ESULT GetData( v 67b0: 6f 69 64 2a 20 70 44 61 74 61 2c 44 57 4f 52 44 oid* pData,DWORD 67c0: 20 64 77 53 69 7a 65 2c 44 57 4f 52 44 20 64 77 dwSize,DWORD dw 67d0: 47 65 74 44 61 74 61 46 6c 61 67 73 29 3b 0d 0a GetDataFlags);.. 67e0: 2f 2a 0d 0a 20 20 20 20 64 65 62 75 67 20 7b 0d /*.. debug {. 67f0: 0a 20 20 20 20 20 20 20 20 44 33 44 51 55 45 52 . D3DQUER 6800: 59 54 59 50 45 20 54 79 70 65 3b 0d 0a 20 20 20 YTYPE Type;.. 6810: 20 20 20 20 20 44 57 4f 52 44 20 44 61 74 61 53 DWORD DataS 6820: 69 7a 65 3b 0d 0a 20 20 20 20 20 20 20 20 4c 50 ize;.. LP 6830: 43 57 53 54 52 20 43 72 65 61 74 69 6f 6e 43 61 CWSTR CreationCa 6840: 6c 6c 53 74 61 63 6b 3b 0d 0a 20 20 20 20 7d 0d llStack;.. }. 6850: 0a 2a 2f 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 .*/..}....alias 6860: 4c 50 44 49 52 45 43 54 33 44 51 55 45 52 59 39 LPDIRECT3DQUERY9 6870: 20 49 44 69 72 65 63 74 33 44 51 75 65 72 79 39 IDirect3DQuery9 6880: 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ;..../********** 6890: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 68a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 68b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 68c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 68d0: 2a 2a 0d 0a 20 2a 20 46 6c 61 67 73 20 66 6f 72 **.. * Flags for 68e0: 20 53 65 74 50 72 69 76 61 74 65 44 61 74 61 20 SetPrivateData 68f0: 6d 65 74 68 6f 64 20 6f 6e 20 61 6c 6c 20 44 33 method on all D3 6900: 44 39 20 69 6e 74 65 72 66 61 63 65 73 0d 0a 20 D9 interfaces.. 6910: 2a 0d 0a 20 2a 20 54 68 65 20 70 61 73 73 65 64 *.. * The passed 6920: 20 70 6f 69 6e 74 65 72 20 69 73 20 61 6e 20 49 pointer is an I 6930: 55 6e 6b 6e 6f 77 6e 20 70 74 72 2e 20 54 68 65 Unknown ptr. The 6940: 20 53 69 7a 65 4f 66 44 61 74 61 20 61 72 67 75 SizeOfData argu 6950: 6d 65 6e 74 20 74 6f 20 53 65 74 50 72 69 76 61 ment to SetPriva 6960: 74 65 44 61 74 61 0d 0a 20 2a 20 6d 75 73 74 20 teData.. * must 6970: 62 65 20 73 65 74 20 74 6f 20 73 69 7a 65 6f 66 be set to sizeof 6980: 28 49 55 6e 6b 6e 6f 77 6e 2a 29 2e 20 44 69 72 (IUnknown*). Dir 6990: 65 63 74 33 44 20 77 69 6c 6c 20 63 61 6c 6c 20 ect3D will call 69a0: 41 64 64 52 65 66 20 74 68 72 6f 75 67 68 20 74 AddRef through t 69b0: 68 69 73 0d 0a 20 2a 20 70 6f 69 6e 74 65 72 20 his.. * pointer 69c0: 61 6e 64 20 52 65 6c 65 61 73 65 20 77 68 65 6e and Release when 69d0: 20 74 68 65 20 70 72 69 76 61 74 65 20 64 61 74 the private dat 69e0: 61 20 69 73 20 64 65 73 74 72 6f 79 65 64 2e 20 a is destroyed. 69f0: 54 68 65 20 64 61 74 61 20 77 69 6c 6c 20 62 65 The data will be 6a00: 0d 0a 20 2a 20 64 65 73 74 72 6f 79 65 64 20 77 .. * destroyed w 6a10: 68 65 6e 20 61 6e 6f 74 68 65 72 20 53 65 74 50 hen another SetP 6a20: 72 69 76 61 74 65 44 61 74 61 20 77 69 74 68 20 rivateData with 6a30: 74 68 65 20 73 61 6d 65 20 47 55 49 44 20 69 73 the same GUID is 6a40: 20 73 65 74 2c 20 77 68 65 6e 0d 0a 20 2a 20 46 set, when.. * F 6a50: 72 65 65 50 72 69 76 61 74 65 44 61 74 61 20 69 reePrivateData i 6a60: 73 20 63 61 6c 6c 65 64 2c 20 6f 72 20 77 68 65 s called, or whe 6a70: 6e 20 74 68 65 20 44 33 44 39 20 6f 62 6a 65 63 n the D3D9 objec 6a80: 74 20 69 73 20 66 72 65 65 64 2e 0d 0a 20 2a 2a t is freed... ** 6a90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6aa0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6ab0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6ac0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6ad0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 63 6f 6e **********/..con 6ae0: 73 74 20 44 33 44 53 50 44 5f 49 55 4e 4b 4e 4f st D3DSPD_IUNKNO 6af0: 57 4e 20 3d 20 30 78 30 30 30 30 30 30 30 31 4c WN = 0x00000001L 6b00: 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ;..../********** 6b10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6b20: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6b30: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6b40: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6b50: 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 46 6c 61 67 73 **.. *.. * Flags 6b60: 20 66 6f 72 20 49 44 69 72 65 63 74 33 44 39 3a for IDirect3D9: 6b70: 3a 43 72 65 61 74 65 44 65 76 69 63 65 27 73 20 :CreateDevice's 6b80: 42 65 68 61 76 69 6f 72 46 6c 61 67 73 0d 0a 20 BehaviorFlags.. 6b90: 2a 0d 0a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a *.. ************ 6ba0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6bb0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6bc0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6bd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 6be0: 2f 0d 0a 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 /....const D3DCR 6bf0: 45 41 54 45 5f 46 50 55 5f 50 52 45 53 45 52 56 EATE_FPU_PRESERV 6c00: 45 20 3d 20 30 78 30 30 30 30 30 30 30 32 4c 3b E = 0x00000002L; 6c10: 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 41 54 ..const D3DCREAT 6c20: 45 5f 4d 55 4c 54 49 54 48 52 45 41 44 45 44 20 E_MULTITHREADED 6c30: 3d 20 30 78 30 30 30 30 30 30 30 34 4c 3b 0d 0a = 0x00000004L;.. 6c40: 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 41 54 ..const D3DCREAT 6c50: 45 5f 50 55 52 45 44 45 56 49 43 45 20 3d 20 30 E_PUREDEVICE = 0 6c60: 78 30 30 30 30 30 30 31 30 4c 3b 0d 0a 63 6f 6e x00000010L;..con 6c70: 73 74 20 44 33 44 43 52 45 41 54 45 5f 53 4f 46 st D3DCREATE_SOF 6c80: 54 57 41 52 45 5f 56 45 52 54 45 58 50 52 4f 43 TWARE_VERTEXPROC 6c90: 45 53 53 49 4e 47 20 3d 20 30 78 30 30 30 30 30 ESSING = 0x00000 6ca0: 30 32 30 4c 3b 0d 0a 63 6f 6e 73 74 20 44 33 44 020L;..const D3D 6cb0: 43 52 45 41 54 45 5f 48 41 52 44 57 41 52 45 5f CREATE_HARDWARE_ 6cc0: 56 45 52 54 45 58 50 52 4f 43 45 53 53 49 4e 47 VERTEXPROCESSING 6cd0: 20 3d 20 30 78 30 30 30 30 30 30 34 30 4c 3b 0d = 0x00000040L;. 6ce0: 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 41 54 45 .const D3DCREATE 6cf0: 5f 4d 49 58 45 44 5f 56 45 52 54 45 58 50 52 4f _MIXED_VERTEXPRO 6d00: 43 45 53 53 49 4e 47 20 3d 20 30 78 30 30 30 30 CESSING = 0x0000 6d10: 30 30 38 30 4c 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 0080L;....const 6d20: 44 33 44 43 52 45 41 54 45 5f 44 49 53 41 42 4c D3DCREATE_DISABL 6d30: 45 5f 44 52 49 56 45 52 5f 4d 41 4e 41 47 45 4d E_DRIVER_MANAGEM 6d40: 45 4e 54 20 3d 20 30 78 30 30 30 30 30 31 30 30 ENT = 0x00000100 6d50: 4c 3b 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 L;..const D3DCRE 6d60: 41 54 45 5f 41 44 41 50 54 45 52 47 52 4f 55 50 ATE_ADAPTERGROUP 6d70: 5f 44 45 56 49 43 45 20 3d 20 30 78 30 30 30 30 _DEVICE = 0x0000 6d80: 30 32 30 30 4c 3b 0d 0a 63 6f 6e 73 74 20 44 33 0200L;..const D3 6d90: 44 43 52 45 41 54 45 5f 44 49 53 41 42 4c 45 5f DCREATE_DISABLE_ 6da0: 44 52 49 56 45 52 5f 4d 41 4e 41 47 45 4d 45 4e DRIVER_MANAGEMEN 6db0: 54 5f 45 58 20 3d 20 30 78 30 30 30 30 30 34 30 T_EX = 0x0000040 6dc0: 30 4c 3b 0d 0a 0d 0a 2f 2f 20 54 68 69 73 20 66 0L;....// This f 6dd0: 6c 61 67 20 63 61 75 73 65 73 20 74 68 65 20 44 lag causes the D 6de0: 33 44 20 72 75 6e 74 69 6d 65 20 6e 6f 74 20 74 3D runtime not t 6df0: 6f 20 61 6c 74 65 72 20 74 68 65 20 66 6f 63 75 o alter the focu 6e00: 73 0d 0a 2f 2f 20 77 69 6e 64 6f 77 20 69 6e 20 s..// window in 6e10: 61 6e 79 20 77 61 79 2e 20 55 73 65 20 77 69 74 any way. Use wit 6e20: 68 20 63 61 75 74 69 6f 6e 2d 20 74 68 65 20 62 h caution- the b 6e30: 75 72 64 65 6e 20 6f 66 20 73 75 70 70 6f 72 74 urden of support 6e40: 69 6e 67 0d 0a 2f 2f 20 66 6f 63 75 73 20 6d 61 ing..// focus ma 6e50: 6e 61 67 65 6d 65 6e 74 20 65 76 65 6e 74 73 20 nagement events 6e60: 28 61 6c 74 2d 74 61 62 2c 20 65 74 63 2e 29 20 (alt-tab, etc.) 6e70: 66 61 6c 6c 73 20 6f 6e 20 74 68 65 0d 0a 2f 2f falls on the..// 6e80: 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 61 6e application, an 6e90: 64 20 61 70 70 72 6f 70 72 69 61 74 65 20 72 65 d appropriate re 6ea0: 73 70 6f 6e 73 65 73 20 28 73 77 69 74 63 68 69 sponses (switchi 6eb0: 6e 67 20 64 69 73 70 6c 61 79 0d 0a 2f 2f 20 6d ng display..// m 6ec0: 6f 64 65 2c 20 65 74 63 2e 29 20 73 68 6f 75 6c ode, etc.) shoul 6ed0: 64 20 62 65 20 63 6f 64 65 64 2e 0d 0a 63 6f 6e d be coded...con 6ee0: 73 74 20 44 33 44 43 52 45 41 54 45 5f 4e 4f 57 st D3DCREATE_NOW 6ef0: 49 4e 44 4f 57 43 48 41 4e 47 45 53 20 3d 20 30 INDOWCHANGES = 0 6f00: 78 30 30 30 30 30 38 30 30 4c 3b 0d 0a 0d 0a 2f x00000800L;..../ 6f10: 2f 20 44 69 73 61 62 6c 65 20 6d 75 6c 74 69 74 / Disable multit 6f20: 68 72 65 61 64 69 6e 67 20 66 6f 72 20 73 6f 66 hreading for sof 6f30: 74 77 61 72 65 20 76 65 72 74 65 78 20 70 72 6f tware vertex pro 6f40: 63 65 73 73 69 6e 67 0d 0a 63 6f 6e 73 74 20 44 cessing..const D 6f50: 33 44 43 52 45 41 54 45 5f 44 49 53 41 42 4c 45 3DCREATE_DISABLE 6f60: 5f 50 53 47 50 5f 54 48 52 45 41 44 49 4e 47 20 _PSGP_THREADING 6f70: 3d 20 30 78 30 30 30 30 32 30 30 30 4c 3b 0d 0a = 0x00002000L;.. 6f80: 2f 2f 20 54 68 69 73 20 66 6c 61 67 20 65 6e 61 // This flag ena 6f90: 62 6c 65 73 20 70 72 65 73 65 6e 74 20 73 74 61 bles present sta 6fa0: 74 69 73 74 69 63 73 20 6f 6e 20 64 65 76 69 63 tistics on devic 6fb0: 65 2e 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 e...const D3DCRE 6fc0: 41 54 45 5f 45 4e 41 42 4c 45 5f 50 52 45 53 45 ATE_ENABLE_PRESE 6fd0: 4e 54 53 54 41 54 53 20 3d 20 30 78 30 30 30 30 NTSTATS = 0x0000 6fe0: 34 30 30 30 4c 3b 0d 0a 2f 2f 20 54 68 69 73 20 4000L;..// This 6ff0: 66 6c 61 67 20 64 69 73 61 62 6c 65 73 20 70 72 flag disables pr 7000: 69 6e 74 73 63 72 65 65 6e 20 73 75 70 70 6f 72 intscreen suppor 7010: 74 20 69 6e 20 74 68 65 20 72 75 6e 74 69 6d 65 t in the runtime 7020: 20 66 6f 72 20 74 68 69 73 20 64 65 76 69 63 65 for this device 7030: 0d 0a 63 6f 6e 73 74 20 44 33 44 43 52 45 41 54 ..const D3DCREAT 7040: 45 5f 44 49 53 41 42 4c 45 5f 50 52 49 4e 54 53 E_DISABLE_PRINTS 7050: 43 52 45 45 4e 20 3d 20 30 78 30 30 30 30 38 30 CREEN = 0x000080 7060: 30 30 4c 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 33 00L;....const D3 7070: 44 43 52 45 41 54 45 5f 53 43 52 45 45 4e 53 41 DCREATE_SCREENSA 7080: 56 45 52 20 3d 20 30 78 31 30 30 30 30 30 30 30 VER = 0x10000000 7090: 4c 3b 0d 0a 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a L;....../******* 70a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 70b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 70c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 70d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 70e0: 2a 2a 2a 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 50 61 *****.. *.. * Pa 70f0: 72 61 6d 65 74 65 72 20 66 6f 72 20 49 44 69 72 rameter for IDir 7100: 65 63 74 33 44 39 3a 3a 43 72 65 61 74 65 44 65 ect3D9::CreateDe 7110: 76 69 63 65 27 73 20 41 64 61 70 74 65 72 20 61 vice's Adapter a 7120: 72 67 75 6d 65 6e 74 0d 0a 20 2a 0d 0a 20 2a 2a rgument.. *.. ** 7130: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7140: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7150: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7160: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7170: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a 63 **********/....c 7180: 6f 6e 73 74 20 44 33 44 41 44 41 50 54 45 52 5f onst D3DADAPTER_ 7190: 44 45 46 41 55 4c 54 20 3d 20 30 3b 0d 0a 0d 0a DEFAULT = 0;.... 71a0: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /*************** 71b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 71c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 71d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 71e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 *************.. 71f0: 2a 0d 0a 20 2a 20 46 6c 61 67 73 20 66 6f 72 20 *.. * Flags for 7200: 49 44 69 72 65 63 74 33 44 39 3a 3a 45 6e 75 6d IDirect3D9::Enum 7210: 41 64 61 70 74 65 72 73 0d 0a 20 2a 0d 0a 20 2a Adapters.. *.. * 7220: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7230: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7240: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7250: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a ***********/.... 7270: 2f 2a 0d 0a 20 2a 20 54 68 65 20 44 33 44 45 4e /*.. * The D3DEN 7280: 55 4d 5f 57 48 51 4c 5f 4c 45 56 45 4c 20 76 61 UM_WHQL_LEVEL va 7290: 6c 75 65 20 68 61 73 20 62 65 65 6e 20 72 65 74 lue has been ret 72a0: 69 72 65 64 20 66 6f 72 20 39 45 78 20 61 6e 64 ired for 9Ex and 72b0: 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 73 future versions 72c0: 2c 0d 0a 20 2a 20 62 75 74 20 69 74 20 6e 65 65 ,.. * but it nee 72d0: 64 73 20 74 6f 20 62 65 20 64 65 66 69 6e 65 64 ds to be defined 72e0: 20 68 65 72 65 20 66 6f 72 20 63 6f 6d 70 61 74 here for compat 72f0: 69 62 69 6c 69 74 79 20 77 69 74 68 20 44 58 39 ibility with DX9 7300: 20 61 6e 64 20 65 61 72 6c 69 65 72 20 76 65 72 and earlier ver 7310: 73 69 6f 6e 73 2e 0d 0a 20 2a 20 53 65 65 20 74 sions... * See t 7320: 68 65 20 44 69 72 65 63 74 58 20 53 44 4b 20 66 he DirectX SDK f 7330: 6f 72 20 73 61 6d 70 6c 65 20 63 6f 64 65 20 6f or sample code o 7340: 6e 20 64 69 73 63 6f 76 65 72 69 6e 67 20 64 72 n discovering dr 7350: 69 76 65 72 20 73 69 67 6e 61 74 75 72 65 73 2e iver signatures. 7360: 0d 0a 20 2a 2f 0d 0a 63 6f 6e 73 74 20 44 33 44 .. */..const D3D 7370: 45 4e 55 4d 5f 57 48 51 4c 5f 4c 45 56 45 4c 20 ENUM_WHQL_LEVEL 7380: 3d 20 30 78 30 30 30 30 30 30 30 32 4c 3b 0d 0a = 0x00000002L;.. 7390: 0d 0a 2f 2a 20 4e 4f 5f 44 52 49 56 45 52 56 45 ../* NO_DRIVERVE 73a0: 52 53 49 4f 4e 20 77 69 6c 6c 20 6e 6f 74 20 66 RSION will not f 73b0: 69 6c 6c 20 6f 75 74 20 74 68 65 20 44 72 69 76 ill out the Driv 73c0: 65 72 56 65 72 73 69 6f 6e 20 66 69 65 6c 64 2c erVersion field, 73d0: 20 6e 6f 72 20 77 69 6c 6c 20 74 68 65 0d 0a 20 nor will the.. 73e0: 20 20 44 72 69 76 65 72 56 65 72 73 69 6f 6e 20 DriverVersion 73f0: 62 65 20 69 6e 63 6f 72 70 6f 72 61 74 65 64 20 be incorporated 7400: 69 6e 74 6f 20 74 68 65 20 44 65 76 69 63 65 49 into the DeviceI 7410: 64 65 6e 74 69 66 69 65 72 20 47 55 49 44 2e 20 dentifier GUID. 7420: 57 49 4e 4e 54 20 6f 6e 6c 79 20 2a 2f 0d 0a 63 WINNT only */..c 7430: 6f 6e 73 74 20 44 33 44 45 4e 55 4d 5f 4e 4f 5f onst D3DENUM_NO_ 7440: 44 52 49 56 45 52 56 45 52 53 49 4f 4e 20 3d 20 DRIVERVERSION = 7450: 30 78 30 30 30 30 30 30 30 34 4c 3b 0d 0a 0d 0a 0x00000004L;.... 7460: 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ../************* 7470: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7480: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7490: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 74a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d ***************. 74b0: 0a 20 2a 0d 0a 20 2a 20 4d 61 78 69 6d 75 6d 20 . *.. * Maximum 74c0: 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b 2d 62 number of back-b 74d0: 75 66 66 65 72 73 20 73 75 70 70 6f 72 74 65 64 uffers supported 74e0: 20 69 6e 20 44 58 39 0d 0a 20 2a 0d 0a 20 2a 2a in DX9.. *.. ** 74f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7500: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7510: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7520: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7530: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a 63 **********/....c 7540: 6f 6e 73 74 20 44 33 44 50 52 45 53 45 4e 54 5f onst D3DPRESENT_ 7550: 42 41 43 4b 5f 42 55 46 46 45 52 53 5f 4d 41 58 BACK_BUFFERS_MAX 7560: 20 3d 20 33 4c 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a = 3L;..../***** 7570: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7580: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7590: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 75a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 75b0: 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 *******.. *.. * 75c0: 4d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f Maximum number o 75d0: 66 20 62 61 63 6b 2d 62 75 66 66 65 72 73 20 73 f back-buffers s 75e0: 75 70 70 6f 72 74 65 64 20 77 68 65 6e 20 61 70 upported when ap 75f0: 70 73 20 75 73 65 20 43 72 65 61 74 65 44 65 76 ps use CreateDev 7600: 69 63 65 45 78 0d 0a 20 2a 0d 0a 20 2a 2a 2a 2a iceEx.. *.. **** 7610: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7620: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7630: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7640: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7650: 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 63 6f 6e 73 74 ********/..const 7660: 20 44 33 44 50 52 45 53 45 4e 54 5f 42 41 43 4b D3DPRESENT_BACK 7670: 5f 42 55 46 46 45 52 53 5f 4d 41 58 5f 45 58 20 _BUFFERS_MAX_EX 7680: 3d 20 33 30 4c 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a = 30L;..../***** 7690: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 76a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 76b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 76c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 76d0: 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 *******.. *.. * 76e0: 46 6c 61 67 73 20 66 6f 72 20 49 44 69 72 65 63 Flags for IDirec 76f0: 74 33 44 44 65 76 69 63 65 39 3a 3a 53 65 74 47 t3DDevice9::SetG 7700: 61 6d 6d 61 52 61 6d 70 0d 0a 20 2a 0d 0a 20 2a ammaRamp.. *.. * 7710: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7720: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7730: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7740: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7750: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a ***********/.... 7760: 63 6f 6e 73 74 20 44 33 44 53 47 52 5f 4e 4f 5f const D3DSGR_NO_ 7770: 43 41 4c 49 42 52 41 54 49 4f 4e 20 3d 20 30 78 CALIBRATION = 0x 7780: 30 30 30 30 30 30 30 30 4c 3b 0d 0a 63 6f 6e 73 00000000L;..cons 7790: 74 20 44 33 44 53 47 52 5f 43 41 4c 49 42 52 41 t D3DSGR_CALIBRA 77a0: 54 45 20 3d 20 30 78 30 30 30 30 30 30 30 31 4c TE = 0x00000001L 77b0: 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ;..../********** 77c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 77d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 77e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 77f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7800: 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 46 6c 61 67 73 **.. *.. * Flags 7810: 20 66 6f 72 20 49 44 69 72 65 63 74 33 44 44 65 for IDirect3DDe 7820: 76 69 63 65 39 3a 3a 53 65 74 43 75 72 73 6f 72 vice9::SetCursor 7830: 50 6f 73 69 74 69 6f 6e 0d 0a 20 2a 0d 0a 20 2a Position.. *.. * 7840: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7850: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7860: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7870: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7880: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a ***********/.... 7890: 63 6f 6e 73 74 20 44 33 44 43 55 52 53 4f 52 5f const D3DCURSOR_ 78a0: 49 4d 4d 45 44 49 41 54 45 5f 55 50 44 41 54 45 IMMEDIATE_UPDATE 78b0: 20 3d 20 30 78 30 30 30 30 30 30 30 31 4c 3b 0d = 0x00000001L;. 78c0: 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a .../************ 78d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 78e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 78f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7900: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7910: 0d 0a 20 2a 0d 0a 20 2a 20 46 6c 61 67 73 20 66 .. *.. * Flags f 7920: 6f 72 20 49 44 69 72 65 63 74 33 44 53 77 61 70 or IDirect3DSwap 7930: 43 68 61 69 6e 39 3a 3a 50 72 65 73 65 6e 74 0d Chain9::Present. 7940: 0a 20 2a 0d 0a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a . *.. ********** 7950: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7960: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7970: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7980: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7990: 2a 2a 2f 0d 0a 0d 0a 63 6f 6e 73 74 20 44 33 44 **/....const D3D 79a0: 50 52 45 53 45 4e 54 5f 44 4f 4e 4f 54 57 41 49 PRESENT_DONOTWAI 79b0: 54 20 3d 20 30 78 30 30 30 30 30 30 30 31 4c 3b T = 0x00000001L; 79c0: 0d 0a 63 6f 6e 73 74 20 44 33 44 50 52 45 53 45 ..const D3DPRESE 79d0: 4e 54 5f 4c 49 4e 45 41 52 5f 43 4f 4e 54 45 4e NT_LINEAR_CONTEN 79e0: 54 20 3d 20 30 78 30 30 30 30 30 30 30 32 4c 3b T = 0x00000002L; 79f0: 0d 0a 63 6f 6e 73 74 20 44 33 44 50 52 45 53 45 ..const D3DPRESE 7a00: 4e 54 5f 44 4f 4e 4f 54 46 4c 49 50 20 3d 20 30 NT_DONOTFLIP = 0 7a10: 78 30 30 30 30 30 30 30 34 4c 3b 0d 0a 63 6f 6e x00000004L;..con 7a20: 73 74 20 44 33 44 50 52 45 53 45 4e 54 5f 46 4c st D3DPRESENT_FL 7a30: 49 50 52 45 53 54 41 52 54 20 3d 20 30 78 30 30 IPRESTART = 0x00 7a40: 30 30 30 30 30 38 4c 3b 0d 0a 63 6f 6e 73 74 20 000008L;..const 7a50: 44 33 44 50 52 45 53 45 4e 54 5f 56 49 44 45 4f D3DPRESENT_VIDEO 7a60: 5f 52 45 53 54 52 49 43 54 5f 54 4f 5f 4d 4f 4e _RESTRICT_TO_MON 7a70: 49 54 4f 52 20 3d 20 30 78 30 30 30 30 30 30 31 ITOR = 0x0000001 7a80: 30 4c 3b 0d 0a 0d 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 0L;..../******** 7a90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7aa0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7ab0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7ac0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7ad0: 2a 2a 2a 2a 0d 0a 20 2a 0d 0a 20 2a 20 46 6c 61 ****.. *.. * Fla 7ae0: 67 73 20 66 6f 72 20 44 72 61 77 50 72 69 6d 69 gs for DrawPrimi 7af0: 74 69 76 65 2f 44 72 61 77 49 6e 64 65 78 65 64 tive/DrawIndexed 7b00: 50 72 69 6d 69 74 69 76 65 0d 0a 20 2a 20 20 20 Primitive.. * 7b10: 41 6c 73 6f 20 76 61 6c 69 64 20 66 6f 72 20 42 Also valid for B 7b20: 65 67 69 6e 2f 42 65 67 69 6e 49 6e 64 65 78 65 egin/BeginIndexe 7b30: 64 0d 0a 20 2a 20 20 20 41 6c 73 6f 20 76 61 6c d.. * Also val 7b40: 69 64 20 66 6f 72 20 56 65 72 74 65 78 42 75 66 id for VertexBuf 7b50: 66 65 72 3a 3a 43 72 65 61 74 65 56 65 72 74 65 fer::CreateVerte 7b60: 78 42 75 66 66 65 72 0d 0a 20 2a 2a 2a 2a 2a 2a xBuffer.. ****** 7b70: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7b80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7b90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7ba0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 7bb0: 2a 2a 2a 2a 2a 2a 2f 0d 0a 0d 0a 0d 0a 2f 2a 0d ******/....../*. 7bc0: 0a 20 2a 20 20 44 69 72 65 63 74 44 72 61 77 20 . * DirectDraw 7bd0: 65 72 72 6f 72 20 63 6f 64 65 73 0d 0a 20 2a 2f error codes.. */ 7be0: 0d 0a 63 6f 6e 73 74 20 5f 46 41 43 44 33 44 20 ..const _FACD3D 7bf0: 3d 20 30 78 38 37 36 3b 0d 0a 48 52 45 53 55 4c = 0x876;..HRESUL 7c00: 54 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c T MAKE_D3DHRESUL 7c10: 54 28 54 29 28 54 20 63 6f 64 65 29 20 7b 20 72 T(T)(T code) { r 7c20: 65 74 75 72 6e 20 4d 41 4b 45 5f 48 52 45 53 55 eturn MAKE_HRESU 7c30: 4c 54 28 20 31 2c 20 5f 46 41 43 44 33 44 2c 20 LT( 1, _FACD3D, 7c40: 63 6f 64 65 20 29 3b 20 7d 0d 0a 48 52 45 53 55 code ); }..HRESU 7c50: 4c 54 20 4d 41 4b 45 5f 44 33 44 53 54 41 54 55 LT MAKE_D3DSTATU 7c60: 53 28 54 29 28 54 20 63 6f 64 65 29 20 7b 20 72 S(T)(T code) { r 7c70: 65 74 75 72 6e 20 4d 41 4b 45 5f 48 52 45 53 55 eturn MAKE_HRESU 7c80: 4c 54 28 20 30 2c 20 5f 46 41 43 44 33 44 2c 20 LT( 0, _FACD3D, 7c90: 63 6f 64 65 20 29 3b 20 7d 0d 0a 0d 0a 2f 2a 0d code ); }..../*. 7ca0: 0a 20 2a 20 44 69 72 65 63 74 33 44 20 45 72 72 . * Direct3D Err 7cb0: 6f 72 73 0d 0a 20 2a 2f 0d 0a 63 6f 6e 73 74 20 ors.. */..const 7cc0: 48 52 45 53 55 4c 54 20 44 33 44 5f 4f 4b 20 3d HRESULT D3D_OK = 7cd0: 20 53 5f 4f 4b 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 S_OK;....const 7ce0: 48 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f 57 HRESULT D3DERR_W 7cf0: 52 4f 4e 47 54 45 58 54 55 52 45 46 4f 52 4d 41 RONGTEXTUREFORMA 7d00: 54 20 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 T = MAKE_D3DHRES 7d10: 55 4c 54 28 32 30 37 32 29 3b 0d 0a 63 6f 6e 73 ULT(2072);..cons 7d20: 74 20 48 52 45 53 55 4c 54 20 44 33 44 45 52 52 t HRESULT D3DERR 7d30: 5f 55 4e 53 55 50 50 4f 52 54 45 44 43 4f 4c 4f _UNSUPPORTEDCOLO 7d40: 52 4f 50 45 52 41 54 49 4f 4e 20 3d 20 4d 41 4b ROPERATION = MAK 7d50: 45 5f 44 33 44 48 52 45 53 55 4c 54 28 32 30 37 E_D3DHRESULT(207 7d60: 33 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 3);..const HRESU 7d70: 4c 54 20 44 33 44 45 52 52 5f 55 4e 53 55 50 50 LT D3DERR_UNSUPP 7d80: 4f 52 54 45 44 43 4f 4c 4f 52 41 52 47 20 3d 20 ORTEDCOLORARG = 7d90: 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 28 MAKE_D3DHRESULT( 7da0: 32 30 37 34 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 2074);..const HR 7db0: 45 53 55 4c 54 20 44 33 44 45 52 52 5f 55 4e 53 ESULT D3DERR_UNS 7dc0: 55 50 50 4f 52 54 45 44 41 4c 50 48 41 4f 50 45 UPPORTEDALPHAOPE 7dd0: 52 41 54 49 4f 4e 20 3d 20 4d 41 4b 45 5f 44 33 RATION = MAKE_D3 7de0: 44 48 52 45 53 55 4c 54 28 32 30 37 35 29 3b 0d DHRESULT(2075);. 7df0: 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 .const HRESULT D 7e00: 33 44 45 52 52 5f 55 4e 53 55 50 50 4f 52 54 45 3DERR_UNSUPPORTE 7e10: 44 41 4c 50 48 41 41 52 47 20 3d 20 4d 41 4b 45 DALPHAARG = MAKE 7e20: 5f 44 33 44 48 52 45 53 55 4c 54 28 32 30 37 36 _D3DHRESULT(2076 7e30: 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c );..const HRESUL 7e40: 54 20 44 33 44 45 52 52 5f 54 4f 4f 4d 41 4e 59 T D3DERR_TOOMANY 7e50: 4f 50 45 52 41 54 49 4f 4e 53 20 3d 20 4d 41 4b OPERATIONS = MAK 7e60: 45 5f 44 33 44 48 52 45 53 55 4c 54 28 32 30 37 E_D3DHRESULT(207 7e70: 37 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 7);..const HRESU 7e80: 4c 54 20 44 33 44 45 52 52 5f 43 4f 4e 46 4c 49 LT D3DERR_CONFLI 7e90: 43 54 49 4e 47 54 45 58 54 55 52 45 46 49 4c 54 CTINGTEXTUREFILT 7ea0: 45 52 20 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 ER = MAKE_D3DHRE 7eb0: 53 55 4c 54 28 32 30 37 38 29 3b 0d 0a 63 6f 6e SULT(2078);..con 7ec0: 73 74 20 48 52 45 53 55 4c 54 20 44 33 44 45 52 st HRESULT D3DER 7ed0: 52 5f 55 4e 53 55 50 50 4f 52 54 45 44 46 41 43 R_UNSUPPORTEDFAC 7ee0: 54 4f 52 56 41 4c 55 45 20 3d 20 4d 41 4b 45 5f TORVALUE = MAKE_ 7ef0: 44 33 44 48 52 45 53 55 4c 54 28 32 30 37 39 29 D3DHRESULT(2079) 7f00: 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 ;..const HRESULT 7f10: 20 44 33 44 45 52 52 5f 43 4f 4e 46 4c 49 43 54 D3DERR_CONFLICT 7f20: 49 4e 47 52 45 4e 44 45 52 53 54 41 54 45 20 3d INGRENDERSTATE = 7f30: 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 MAKE_D3DHRESULT 7f40: 28 32 30 38 31 29 3b 0d 0a 63 6f 6e 73 74 20 48 (2081);..const H 7f50: 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f 55 4e RESULT D3DERR_UN 7f60: 53 55 50 50 4f 52 54 45 44 54 45 58 54 55 52 45 SUPPORTEDTEXTURE 7f70: 46 49 4c 54 45 52 20 3d 20 4d 41 4b 45 5f 44 33 FILTER = MAKE_D3 7f80: 44 48 52 45 53 55 4c 54 28 32 30 38 32 29 3b 0d DHRESULT(2082);. 7f90: 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 .const HRESULT D 7fa0: 33 44 45 52 52 5f 43 4f 4e 46 4c 49 43 54 49 4e 3DERR_CONFLICTIN 7fb0: 47 54 45 58 54 55 52 45 50 41 4c 45 54 54 45 20 GTEXTUREPALETTE 7fc0: 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c = MAKE_D3DHRESUL 7fd0: 54 28 32 30 38 36 29 3b 0d 0a 63 6f 6e 73 74 20 T(2086);..const 7fe0: 48 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f 44 HRESULT D3DERR_D 7ff0: 52 49 56 45 52 49 4e 54 45 52 4e 41 4c 45 52 52 RIVERINTERNALERR 8000: 4f 52 20 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 OR = MAKE_D3DHRE 8010: 53 55 4c 54 28 32 30 38 37 29 3b 0d 0a 0d 0a 63 SULT(2087);....c 8020: 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 33 44 onst HRESULT D3D 8030: 45 52 52 5f 4e 4f 54 46 4f 55 4e 44 20 3d 20 4d ERR_NOTFOUND = M 8040: 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 28 32 AKE_D3DHRESULT(2 8050: 31 35 30 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 150);..const HRE 8060: 53 55 4c 54 20 44 33 44 45 52 52 5f 4d 4f 52 45 SULT D3DERR_MORE 8070: 44 41 54 41 20 3d 20 4d 41 4b 45 5f 44 33 44 48 DATA = MAKE_D3DH 8080: 52 45 53 55 4c 54 28 32 31 35 31 29 3b 0d 0a 63 RESULT(2151);..c 8090: 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 33 44 onst HRESULT D3D 80a0: 45 52 52 5f 44 45 56 49 43 45 4c 4f 53 54 20 3d ERR_DEVICELOST = 80b0: 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 MAKE_D3DHRESULT 80c0: 28 32 31 35 32 29 3b 0d 0a 63 6f 6e 73 74 20 48 (2152);..const H 80d0: 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f 44 45 RESULT D3DERR_DE 80e0: 56 49 43 45 4e 4f 54 52 45 53 45 54 20 3d 20 4d VICENOTRESET = M 80f0: 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 28 32 AKE_D3DHRESULT(2 8100: 31 35 33 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 153);..const HRE 8110: 53 55 4c 54 20 44 33 44 45 52 52 5f 4e 4f 54 41 SULT D3DERR_NOTA 8120: 56 41 49 4c 41 42 4c 45 20 3d 20 4d 41 4b 45 5f VAILABLE = MAKE_ 8130: 44 33 44 48 52 45 53 55 4c 54 28 32 31 35 34 29 D3DHRESULT(2154) 8140: 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 ;..const HRESULT 8150: 20 44 33 44 45 52 52 5f 4f 55 54 4f 46 56 49 44 D3DERR_OUTOFVID 8160: 45 4f 4d 45 4d 4f 52 59 20 3d 20 4d 41 4b 45 5f EOMEMORY = MAKE_ 8170: 44 33 44 48 52 45 53 55 4c 54 28 33 38 30 29 3b D3DHRESULT(380); 8180: 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 ..const HRESULT 8190: 44 33 44 45 52 52 5f 49 4e 56 41 4c 49 44 44 45 D3DERR_INVALIDDE 81a0: 56 49 43 45 20 3d 20 4d 41 4b 45 5f 44 33 44 48 VICE = MAKE_D3DH 81b0: 52 45 53 55 4c 54 28 32 31 35 35 29 3b 0d 0a 63 RESULT(2155);..c 81c0: 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 33 44 onst HRESULT D3D 81d0: 45 52 52 5f 49 4e 56 41 4c 49 44 43 41 4c 4c 20 ERR_INVALIDCALL 81e0: 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c = MAKE_D3DHRESUL 81f0: 54 28 32 31 35 36 29 3b 0d 0a 63 6f 6e 73 74 20 T(2156);..const 8200: 48 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f 44 HRESULT D3DERR_D 8210: 52 49 56 45 52 49 4e 56 41 4c 49 44 43 41 4c 4c RIVERINVALIDCALL 8220: 20 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 = MAKE_D3DHRESU 8230: 4c 54 28 32 31 35 37 29 3b 0d 0a 63 6f 6e 73 74 LT(2157);..const 8240: 20 48 52 45 53 55 4c 54 20 44 33 44 45 52 52 5f HRESULT D3DERR_ 8250: 57 41 53 53 54 49 4c 4c 44 52 41 57 49 4e 47 20 WASSTILLDRAWING 8260: 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c = MAKE_D3DHRESUL 8270: 54 28 35 34 30 29 3b 0d 0a 63 6f 6e 73 74 20 48 T(540);..const H 8280: 52 45 53 55 4c 54 20 44 33 44 4f 4b 5f 4e 4f 41 RESULT D3DOK_NOA 8290: 55 54 4f 47 45 4e 20 3d 20 4d 41 4b 45 5f 44 33 UTOGEN = MAKE_D3 82a0: 44 53 54 41 54 55 53 28 32 31 35 39 29 3b 0d 0a DSTATUS(2159);.. 82b0: 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 20 44 33 const HRESULT D3 82c0: 44 45 52 52 5f 44 45 56 49 43 45 52 45 4d 4f 56 DERR_DEVICEREMOV 82d0: 45 44 20 3d 20 4d 41 4b 45 5f 44 33 44 48 52 45 ED = MAKE_D3DHRE 82e0: 53 55 4c 54 28 32 31 36 30 29 3b 0d 0a 63 6f 6e SULT(2160);..con 82f0: 73 74 20 48 52 45 53 55 4c 54 20 53 5f 4e 4f 54 st HRESULT S_NOT 8300: 5f 52 45 53 49 44 45 4e 54 20 3d 20 4d 41 4b 45 _RESIDENT = MAKE 8310: 5f 44 33 44 53 54 41 54 55 53 28 32 31 36 35 29 _D3DSTATUS(2165) 8320: 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c 54 ;..const HRESULT 8330: 20 53 5f 52 45 53 49 44 45 4e 54 5f 49 4e 5f 53 S_RESIDENT_IN_S 8340: 48 41 52 45 44 5f 4d 45 4d 4f 52 59 20 3d 20 4d HARED_MEMORY = M 8350: 41 4b 45 5f 44 33 44 53 54 41 54 55 53 28 32 31 AKE_D3DSTATUS(21 8360: 36 36 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 66);..const HRES 8370: 55 4c 54 20 53 5f 50 52 45 53 45 4e 54 5f 4d 4f ULT S_PRESENT_MO 8380: 44 45 5f 43 48 41 4e 47 45 44 20 3d 20 4d 41 4b DE_CHANGED = MAK 8390: 45 5f 44 33 44 53 54 41 54 55 53 28 32 31 36 37 E_D3DSTATUS(2167 83a0: 29 3b 0d 0a 63 6f 6e 73 74 20 48 52 45 53 55 4c );..const HRESUL 83b0: 54 20 53 5f 50 52 45 53 45 4e 54 5f 4f 43 43 4c T S_PRESENT_OCCL 83c0: 55 44 45 44 20 3d 20 4d 41 4b 45 5f 44 33 44 53 UDED = MAKE_D3DS 83d0: 54 41 54 55 53 28 32 31 36 38 29 3b 0d 0a 63 6f TATUS(2168);..co 83e0: 6e 73 74 20 48 52 45 53 55 4c 54 20 44 33 44 45 nst HRESULT D3DE 83f0: 52 52 5f 44 45 56 49 43 45 48 55 4e 47 20 3d 20 RR_DEVICEHUNG = 8400: 4d 41 4b 45 5f 44 33 44 48 52 45 53 55 4c 54 28 MAKE_D3DHRESULT( 8410: 32 31 36 34 29 3b 0d 0a 0d 0a 0d 0a 2f 2a 2a 2a 2164);....../*** 8420: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 8430: 2a 2a 0d 0a 2f 2a 20 44 33 44 39 45 78 20 69 6e **../* D3D9Ex in 8440: 74 65 72 66 61 63 65 73 0d 0a 2f 2a 2a 2a 2a 2a terfaces../***** 8450: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 8460: 2f 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 57 69 6e /....extern (Win 8470: 64 6f 77 73 29 20 48 52 45 53 55 4c 54 20 44 69 dows) HRESULT Di 8480: 72 65 63 74 33 44 43 72 65 61 74 65 39 45 78 28 rect3DCreate9Ex( 8490: 55 49 4e 54 20 53 44 4b 56 65 72 73 69 6f 6e 2c UINT SDKVersion, 84a0: 20 4c 50 44 49 52 45 43 54 33 44 39 45 58 2a 29 LPDIRECT3D9EX*) 84b0: 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 4c ;....interface L 84c0: 50 44 49 52 45 43 54 33 44 39 45 58 20 3a 20 4c PDIRECT3D9EX : L 84d0: 50 44 49 52 45 43 54 33 44 39 0d 0a 7b 0d 0a 20 PDIRECT3D9..{.. 84e0: 20 20 20 55 49 4e 54 20 47 65 74 41 64 61 70 74 UINT GetAdapt 84f0: 65 72 4d 6f 64 65 43 6f 75 6e 74 45 78 28 55 49 erModeCountEx(UI 8500: 4e 54 20 41 64 61 70 74 65 72 2c 20 44 33 44 44 NT Adapter, D3DD 8510: 49 53 50 4c 41 59 4d 4f 44 45 46 49 4c 54 45 52 ISPLAYMODEFILTER 8520: 2a 20 70 46 69 6c 74 65 72 20 29 3b 0d 0a 20 20 * pFilter );.. 8530: 20 20 48 52 45 53 55 4c 54 20 45 6e 75 6d 41 64 HRESULT EnumAd 8540: 61 70 74 65 72 4d 6f 64 65 73 45 78 28 20 55 49 apterModesEx( UI 8550: 4e 54 20 41 64 61 70 74 65 72 2c 20 44 33 44 44 NT Adapter, D3DD 8560: 49 53 50 4c 41 59 4d 4f 44 45 46 49 4c 54 45 52 ISPLAYMODEFILTER 8570: 2a 20 70 46 69 6c 74 65 72 2c 55 49 4e 54 20 4d * pFilter,UINT M 8580: 6f 64 65 2c 44 33 44 44 49 53 50 4c 41 59 4d 4f ode,D3DDISPLAYMO 8590: 44 45 45 58 2a 20 70 4d 6f 64 65 29 3b 0d 0a 20 DEEX* pMode);.. 85a0: 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 41 64 HRESULT GetAd 85b0: 61 70 74 65 72 44 69 73 70 6c 61 79 4d 6f 64 65 apterDisplayMode 85c0: 45 78 28 20 55 49 4e 54 20 41 64 61 70 74 65 72 Ex( UINT Adapter 85d0: 2c 44 33 44 44 49 53 50 4c 41 59 4d 4f 44 45 45 ,D3DDISPLAYMODEE 85e0: 58 2a 20 70 4d 6f 64 65 2c 44 33 44 44 49 53 50 X* pMode,D3DDISP 85f0: 4c 41 59 52 4f 54 41 54 49 4f 4e 2a 20 70 52 6f LAYROTATION* pRo 8600: 74 61 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 48 52 tation);.. HR 8610: 45 53 55 4c 54 20 43 72 65 61 74 65 44 65 76 69 ESULT CreateDevi 8620: 63 65 45 78 28 20 55 49 4e 54 20 41 64 61 70 74 ceEx( UINT Adapt 8630: 65 72 2c 44 33 44 44 45 56 54 59 50 45 20 44 65 er,D3DDEVTYPE De 8640: 76 69 63 65 54 79 70 65 2c 48 57 4e 44 20 68 46 viceType,HWND hF 8650: 6f 63 75 73 57 69 6e 64 6f 77 2c 44 57 4f 52 44 ocusWindow,DWORD 8660: 20 42 65 68 61 76 69 6f 72 46 6c 61 67 73 2c 44 BehaviorFlags,D 8670: 33 44 50 52 45 53 45 4e 54 5f 50 41 52 41 4d 45 3DPRESENT_PARAME 8680: 54 45 52 53 2a 20 70 50 72 65 73 65 6e 74 61 74 TERS* pPresentat 8690: 69 6f 6e 50 61 72 61 6d 65 74 65 72 73 2c 44 33 ionParameters,D3 86a0: 44 44 49 53 50 4c 41 59 4d 4f 44 45 45 58 2a 20 DDISPLAYMODEEX* 86b0: 70 46 75 6c 6c 73 63 72 65 65 6e 44 69 73 70 6c pFullscreenDispl 86c0: 61 79 4d 6f 64 65 2c 4c 50 44 49 52 45 43 54 33 ayMode,LPDIRECT3 86d0: 44 44 45 56 49 43 45 39 45 58 2a 20 70 70 52 65 DDEVICE9EX* ppRe 86e0: 74 75 72 6e 65 64 44 65 76 69 63 65 49 6e 74 65 turnedDeviceInte 86f0: 72 66 61 63 65 29 3b 0d 0a 20 20 20 20 48 52 45 rface);.. HRE 8700: 53 55 4c 54 20 47 65 74 41 64 61 70 74 65 72 4c SULT GetAdapterL 8710: 55 49 44 28 20 55 49 4e 54 20 41 64 61 70 74 65 UID( UINT Adapte 8720: 72 2c 4c 55 49 44 20 2a 20 70 4c 55 49 44 29 3b r,LUID * pLUID); 8730: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 50 44 ..}....alias LPD 8740: 49 52 45 43 54 33 44 39 45 58 20 49 44 69 72 65 IRECT3D9EX IDire 8750: 63 74 33 44 39 45 78 3b 0d 0a 0d 0a 69 6e 74 65 ct3D9Ex;....inte 8760: 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 44 rface LPDIRECT3D 8770: 44 45 56 49 43 45 39 45 58 20 3a 20 4c 50 44 49 DEVICE9EX : LPDI 8780: 52 45 43 54 33 44 44 45 56 49 43 45 39 0d 0a 7b RECT3DDEVICE9..{ 8790: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 .. HRESULT Se 87a0: 74 43 6f 6e 76 6f 6c 75 74 69 6f 6e 4d 6f 6e 6f tConvolutionMono 87b0: 4b 65 72 6e 65 6c 28 20 55 49 4e 54 20 77 69 64 Kernel( UINT wid 87c0: 74 68 2c 55 49 4e 54 20 68 65 69 67 68 74 2c 66 th,UINT height,f 87d0: 6c 6f 61 74 2a 20 72 6f 77 73 2c 66 6c 6f 61 74 loat* rows,float 87e0: 2a 20 63 6f 6c 75 6d 6e 73 29 3b 0d 0a 20 20 20 * columns);.. 87f0: 20 48 52 45 53 55 4c 54 20 43 6f 6d 70 6f 73 65 HRESULT Compose 8800: 52 65 63 74 73 28 20 4c 50 44 49 52 45 43 54 33 Rects( LPDIRECT3 8810: 44 53 55 52 46 41 43 45 39 20 70 53 72 63 2c 4c DSURFACE9 pSrc,L 8820: 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 45 PDIRECT3DSURFACE 8830: 39 20 70 44 73 74 2c 4c 50 44 49 52 45 43 54 33 9 pDst,LPDIRECT3 8840: 44 56 45 52 54 45 58 42 55 46 46 45 52 39 20 70 DVERTEXBUFFER9 p 8850: 53 72 63 52 65 63 74 44 65 73 63 73 2c 55 49 4e SrcRectDescs,UIN 8860: 54 20 4e 75 6d 52 65 63 74 73 2c 4c 50 44 49 52 T NumRects,LPDIR 8870: 45 43 54 33 44 56 45 52 54 45 58 42 55 46 46 45 ECT3DVERTEXBUFFE 8880: 52 39 20 70 44 73 74 52 65 63 74 44 65 73 63 73 R9 pDstRectDescs 8890: 2c 44 33 44 43 4f 4d 50 4f 53 45 52 45 43 54 53 ,D3DCOMPOSERECTS 88a0: 4f 50 20 4f 70 65 72 61 74 69 6f 6e 2c 69 6e 74 OP Operation,int 88b0: 20 58 6f 66 66 73 65 74 2c 69 6e 74 20 59 6f 66 Xoffset,int Yof 88c0: 66 73 65 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 fset);.. HRES 88d0: 55 4c 54 20 50 72 65 73 65 6e 74 45 78 28 20 52 ULT PresentEx( R 88e0: 45 43 54 2a 20 70 53 6f 75 72 63 65 52 65 63 74 ECT* pSourceRect 88f0: 2c 20 52 45 43 54 2a 20 70 44 65 73 74 52 65 63 , RECT* pDestRec 8900: 74 2c 48 57 4e 44 20 68 44 65 73 74 57 69 6e 64 t,HWND hDestWind 8910: 6f 77 4f 76 65 72 72 69 64 65 2c 20 52 47 4e 44 owOverride, RGND 8920: 41 54 41 2a 20 70 44 69 72 74 79 52 65 67 69 6f ATA* pDirtyRegio 8930: 6e 2c 44 57 4f 52 44 20 64 77 46 6c 61 67 73 29 n,DWORD dwFlags) 8940: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 ;.. HRESULT G 8950: 65 74 47 50 55 54 68 72 65 61 64 50 72 69 6f 72 etGPUThreadPrior 8960: 69 74 79 28 20 49 4e 54 2a 20 70 50 72 69 6f 72 ity( INT* pPrior 8970: 69 74 79 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 ity);.. HRESU 8980: 4c 54 20 53 65 74 47 50 55 54 68 72 65 61 64 50 LT SetGPUThreadP 8990: 72 69 6f 72 69 74 79 28 20 49 4e 54 20 50 72 69 riority( INT Pri 89a0: 6f 72 69 74 79 29 3b 0d 0a 20 20 20 20 48 52 45 ority);.. HRE 89b0: 53 55 4c 54 20 57 61 69 74 46 6f 72 56 42 6c 61 SULT WaitForVBla 89c0: 6e 6b 28 20 55 49 4e 54 20 69 53 77 61 70 43 68 nk( UINT iSwapCh 89d0: 61 69 6e 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 ain);.. HRESU 89e0: 4c 54 20 43 68 65 63 6b 52 65 73 6f 75 72 63 65 LT CheckResource 89f0: 52 65 73 69 64 65 6e 63 79 28 20 4c 50 44 49 52 Residency( LPDIR 8a00: 45 43 54 33 44 52 45 53 4f 55 52 43 45 39 2a 20 ECT3DRESOURCE9* 8a10: 70 52 65 73 6f 75 72 63 65 41 72 72 61 79 2c 55 pResourceArray,U 8a20: 49 4e 54 33 32 20 4e 75 6d 52 65 73 6f 75 72 63 INT32 NumResourc 8a30: 65 73 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c es);.. HRESUL 8a40: 54 20 53 65 74 4d 61 78 69 6d 75 6d 46 72 61 6d T SetMaximumFram 8a50: 65 4c 61 74 65 6e 63 79 28 20 55 49 4e 54 20 4d eLatency( UINT M 8a60: 61 78 4c 61 74 65 6e 63 79 29 3b 0d 0a 20 20 20 axLatency);.. 8a70: 20 48 52 45 53 55 4c 54 20 47 65 74 4d 61 78 69 HRESULT GetMaxi 8a80: 6d 75 6d 46 72 61 6d 65 4c 61 74 65 6e 63 79 28 mumFrameLatency( 8a90: 20 55 49 4e 54 2a 20 70 4d 61 78 4c 61 74 65 6e UINT* pMaxLaten 8aa0: 63 79 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c cy);.. HRESUL 8ab0: 54 20 43 68 65 63 6b 44 65 76 69 63 65 53 74 61 T CheckDeviceSta 8ac0: 74 65 28 20 48 57 4e 44 20 68 44 65 73 74 69 6e te( HWND hDestin 8ad0: 61 74 69 6f 6e 57 69 6e 64 6f 77 29 3b 0d 0a 20 ationWindow);.. 8ae0: 20 20 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 HRESULT Creat 8af0: 65 52 65 6e 64 65 72 54 61 72 67 65 74 45 78 28 eRenderTargetEx( 8b00: 20 55 49 4e 54 20 57 69 64 74 68 2c 55 49 4e 54 UINT Width,UINT 8b10: 20 48 65 69 67 68 74 2c 44 33 44 46 4f 52 4d 41 Height,D3DFORMA 8b20: 54 20 46 6f 72 6d 61 74 2c 44 33 44 4d 55 4c 54 T Format,D3DMULT 8b30: 49 53 41 4d 50 4c 45 5f 54 59 50 45 20 4d 75 6c ISAMPLE_TYPE Mul 8b40: 74 69 53 61 6d 70 6c 65 2c 44 57 4f 52 44 20 4d tiSample,DWORD M 8b50: 75 6c 74 69 73 61 6d 70 6c 65 51 75 61 6c 69 74 ultisampleQualit 8b60: 79 2c 42 4f 4f 4c 20 4c 6f 63 6b 61 62 6c 65 2c y,BOOL Lockable, 8b70: 4c 50 44 49 52 45 43 54 33 44 53 55 52 46 41 43 LPDIRECT3DSURFAC 8b80: 45 39 2a 20 70 70 53 75 72 66 61 63 65 2c 48 41 E9* ppSurface,HA 8b90: 4e 44 4c 45 2a 20 70 53 68 61 72 65 64 48 61 6e NDLE* pSharedHan 8ba0: 64 6c 65 2c 44 57 4f 52 44 20 55 73 61 67 65 29 dle,DWORD Usage) 8bb0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 ;.. HRESULT C 8bc0: 72 65 61 74 65 4f 66 66 73 63 72 65 65 6e 50 6c reateOffscreenPl 8bd0: 61 69 6e 53 75 72 66 61 63 65 45 78 28 20 55 49 ainSurfaceEx( UI 8be0: 4e 54 20 57 69 64 74 68 2c 55 49 4e 54 20 48 65 NT Width,UINT He 8bf0: 69 67 68 74 2c 44 33 44 46 4f 52 4d 41 54 20 46 ight,D3DFORMAT F 8c00: 6f 72 6d 61 74 2c 44 33 44 50 4f 4f 4c 20 50 6f ormat,D3DPOOL Po 8c10: 6f 6c 2c 4c 50 44 49 52 45 43 54 33 44 53 55 52 ol,LPDIRECT3DSUR 8c20: 46 41 43 45 39 2a 20 70 70 53 75 72 66 61 63 65 FACE9* ppSurface 8c30: 2c 48 41 4e 44 4c 45 2a 20 70 53 68 61 72 65 64 ,HANDLE* pShared 8c40: 48 61 6e 64 6c 65 2c 44 57 4f 52 44 20 55 73 61 Handle,DWORD Usa 8c50: 67 65 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c ge);.. HRESUL 8c60: 54 20 43 72 65 61 74 65 44 65 70 74 68 53 74 65 T CreateDepthSte 8c70: 6e 63 69 6c 53 75 72 66 61 63 65 45 78 28 20 55 ncilSurfaceEx( U 8c80: 49 4e 54 20 57 69 64 74 68 2c 55 49 4e 54 20 48 INT Width,UINT H 8c90: 65 69 67 68 74 2c 44 33 44 46 4f 52 4d 41 54 20 eight,D3DFORMAT 8ca0: 46 6f 72 6d 61 74 2c 44 33 44 4d 55 4c 54 49 53 Format,D3DMULTIS 8cb0: 41 4d 50 4c 45 5f 54 59 50 45 20 4d 75 6c 74 69 AMPLE_TYPE Multi 8cc0: 53 61 6d 70 6c 65 2c 44 57 4f 52 44 20 4d 75 6c Sample,DWORD Mul 8cd0: 74 69 73 61 6d 70 6c 65 51 75 61 6c 69 74 79 2c tisampleQuality, 8ce0: 42 4f 4f 4c 20 44 69 73 63 61 72 64 2c 4c 50 44 BOOL Discard,LPD 8cf0: 49 52 45 43 54 33 44 53 55 52 46 41 43 45 39 2a IRECT3DSURFACE9* 8d00: 20 70 70 53 75 72 66 61 63 65 2c 48 41 4e 44 4c ppSurface,HANDL 8d10: 45 2a 20 70 53 68 61 72 65 64 48 61 6e 64 6c 65 E* pSharedHandle 8d20: 2c 44 57 4f 52 44 20 55 73 61 67 65 29 3b 0d 0a ,DWORD Usage);.. 8d30: 20 20 20 20 48 52 45 53 55 4c 54 20 52 65 73 65 HRESULT Rese 8d40: 74 45 78 28 20 44 33 44 50 52 45 53 45 4e 54 5f tEx( D3DPRESENT_ 8d50: 50 41 52 41 4d 45 54 45 52 53 2a 20 70 50 72 65 PARAMETERS* pPre 8d60: 73 65 6e 74 61 74 69 6f 6e 50 61 72 61 6d 65 74 sentationParamet 8d70: 65 72 73 2c 44 33 44 44 49 53 50 4c 41 59 4d 4f ers,D3DDISPLAYMO 8d80: 44 45 45 58 20 2a 70 46 75 6c 6c 73 63 72 65 65 DEEX *pFullscree 8d90: 6e 44 69 73 70 6c 61 79 4d 6f 64 65 29 3b 0d 0a nDisplayMode);.. 8da0: 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 44 HRESULT GetD 8db0: 69 73 70 6c 61 79 4d 6f 64 65 45 78 28 20 55 49 isplayModeEx( UI 8dc0: 4e 54 20 69 53 77 61 70 43 68 61 69 6e 2c 44 33 NT iSwapChain,D3 8dd0: 44 44 49 53 50 4c 41 59 4d 4f 44 45 45 58 2a 20 DDISPLAYMODEEX* 8de0: 70 4d 6f 64 65 2c 44 33 44 44 49 53 50 4c 41 59 pMode,D3DDISPLAY 8df0: 52 4f 54 41 54 49 4f 4e 2a 20 70 52 6f 74 61 74 ROTATION* pRotat 8e00: 69 6f 6e 29 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 ion);..}....alia 8e10: 73 20 4c 50 44 49 52 45 43 54 33 44 44 45 56 49 s LPDIRECT3DDEVI 8e20: 43 45 39 45 58 20 49 44 69 72 65 63 74 33 44 44 CE9EX IDirect3DD 8e30: 65 76 69 63 65 39 45 78 3b 0d 0a 0d 0a 69 6e 74 evice9Ex;....int 8e40: 65 72 66 61 63 65 20 4c 50 44 49 52 45 43 54 33 erface LPDIRECT3 8e50: 44 53 57 41 50 43 48 41 49 4e 39 45 58 20 3a 20 DSWAPCHAIN9EX : 8e60: 4c 50 44 49 52 45 43 54 33 44 53 57 41 50 43 48 LPDIRECT3DSWAPCH 8e70: 41 49 4e 39 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 AIN9..{.. HRE 8e80: 53 55 4c 54 20 47 65 74 4c 61 73 74 50 72 65 73 SULT GetLastPres 8e90: 65 6e 74 43 6f 75 6e 74 28 20 55 49 4e 54 2a 20 entCount( UINT* 8ea0: 70 4c 61 73 74 50 72 65 73 65 6e 74 43 6f 75 6e pLastPresentCoun 8eb0: 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 t);.. HRESULT 8ec0: 20 47 65 74 50 72 65 73 65 6e 74 53 74 61 74 73 GetPresentStats 8ed0: 28 20 44 33 44 50 52 45 53 45 4e 54 53 54 41 54 ( D3DPRESENTSTAT 8ee0: 53 2a 20 70 50 72 65 73 65 6e 74 61 74 69 6f 6e S* pPresentation 8ef0: 53 74 61 74 69 73 74 69 63 73 29 3b 0d 0a 20 20 Statistics);.. 8f00: 20 20 48 52 45 53 55 4c 54 20 47 65 74 44 69 73 HRESULT GetDis 8f10: 70 6c 61 79 4d 6f 64 65 45 78 28 20 44 33 44 44 playModeEx( D3DD 8f20: 49 53 50 4c 41 59 4d 4f 44 45 45 58 2a 20 70 4d ISPLAYMODEEX* pM 8f30: 6f 64 65 2c 44 33 44 44 49 53 50 4c 41 59 52 4f ode,D3DDISPLAYRO 8f40: 54 41 54 49 4f 4e 2a 20 70 52 6f 74 61 74 69 6f TATION* pRotatio 8f50: 6e 29 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 n);..}....alias 8f60: 4c 50 44 49 52 45 43 54 33 44 53 57 41 50 43 48 LPDIRECT3DSWAPCH 8f70: 41 49 4e 39 45 58 20 49 44 69 72 65 63 74 33 44 AIN9EX IDirect3D 8f80: 53 77 61 70 43 68 61 69 6e 39 45 78 3b 0d 0a SwapChain9Ex;..