30 #if !defined(CPPPARSER) && !defined(LINK_ALL_STATIC) && !defined(BUILDING_PANDADX)
31 #error Buildsystem error: BUILDING_PANDADX not defined
34 DToolConfigure(config_dxgsg9);
35 NotifyCategoryDef(dxgsg9,
":display:gsg");
36 NotifyCategoryDef(wdxdisplay9,
"display");
42 (
"dx-show-transforms",
false);
47 (
"dx-no-vertex-fog",
false);
52 (
"dx-show-cursor-watermark",
63 (
"dx-use-triangle-mipgen-filter",
false);
66 (
"dx-broken-max-index",
false,
67 PRC_DESC(
"Configure this true if you have a buggy graphics driver that "
68 "doesn't correctly implement the third parameter, NumVertices, "
69 "of DrawIndexedPrimitive(). In particular, the NVIDIA Quadro "
70 "driver version 6.14.10.7184 seems to treat this as a maximum "
71 "vertex index, rather than a delta between the maximum and "
72 "minimum vertex index. Turn this on if you are seeing stray "
73 "triangles, or you are not seeing all of your triangles. Enabling "
74 "this should work around this bug, at the cost of some additional "
75 "rendering overhead on the GPU."));
78 (
"dx-broken-depth-bias",
true,
79 PRC_DESC(
"Configure this true if your graphics driver claims to support "
80 "D3DPRASTERCAPS_DEPTHBIAS, but doesn't appear to do anything "
81 "useful when you set it. In fact, there's not much reason not "
82 "to just leave this set, since the workaround seems to be "
83 "sufficient for all cases."));
86 (
"dx-depth-bias-scale", 0.000001,
87 PRC_DESC(
"If depth bias is not directly supported by the graphics driver "
88 "(or if dx-broken-depth-bias is set true), this configures the "
89 "amount by which we slide the viewport back to achieve the effect "
90 "of a depth bias. It should generally be a small number."));
93 (
"dx-count-all-cards-memory",
true,
94 PRC_DESC(
"Set this to false to skip the counting of extra cards memory "
101 (
"dx-force-backface-culling", 0);
105 (
"dx-mipmap-everything",
false);
107 (
"dx-ignore-mipmaps",
false);
112 (
"dx-use-rangebased-fog",
false);
114 (
"dx-no-dithering",
false);
116 (
"dx-force-16bpp-zbuffer",
false);
118 (
"do-vidmemsize-check",
true);
126 (
"dx-preserve-fpu-state",
true);
129 (
"dx-preferred-device-id", -1);
132 (
"dx-intel-compressed-texture-bug",
true,
133 PRC_DESC(
"Set this true to work around a bug in the Intel driver "
134 "igdumd32.dll, for at least the 965 Express chipset family, "
135 "which breaks compressed texture images smaller "
136 "than about 256x256 (even mipmap levels). The workaround is "
137 "simply to disable compressed texture support when this "
138 "driver is detected."));
142 (
"dx-global-miplevel-bias", 0.0);
144 (
"dx-debug-view-mipmaps",
false);
148 (
"dx-force-anisotropic-filtering",
false);
153 (
"link-tristrips",
false);
158 (
"dx-management",
false);
163 (
"dx-texture-management",
true);
168 (
"dx-lru-management",
true);
173 (
"dx-lru-maximum-pages", 8192);
179 (
"dx-lru-free-memory-requirement", 12000000);
183 (
"dx-lru-minimum-memory-requirement", 64000000);
188 (
"dx-lru-maximum-memory-requirement", 0);
193 (
"dx-lru-maximum-page-updates-per-frame", 40);
197 (
"dx-lru-debug",
false);
202 (
"dx-lru-debug-frames-til-output", 500);
206 (
"dx-lru-debug-textures",
false);
210 (
"dx-lru-debug-vertex-buffers",
false);
213 (
"dx-use-dynamic-textures",
true);
217 (
"dx-use-multithread",
false);
221 (
"dx-use-puredevice",
false);
225 (
"dx-disable-driver-management",
false);
229 (
"dx-disable-driver-management-ex",
false);
233 (
"dx-use-nvperfhud",
false);
235 ConfigureFn(config_dxgsg9) {
247 static bool initialized =
false;
253 DXGraphicsStateGuardian9::init_type();
254 DXTextureContext9::init_type();
255 DXVertexBufferContext9::init_type();
256 DXIndexBufferContext9::init_type();
257 DXOcclusionQueryContext9::init_type();
258 DXShaderContext9::init_type();
259 DXGeomMunger9::init_type();
261 wdxGraphicsPipe9::init_type();
262 wdxGraphicsWindow9::init_type();
263 wdxGraphicsBuffer9::init_type();
267 wdxGraphicsPipe9::pipe_constructor);