summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--o3d/core/win/d3d9/renderer_d3d9.cc31
1 files changed, 3 insertions, 28 deletions
diff --git a/o3d/core/win/d3d9/renderer_d3d9.cc b/o3d/core/win/d3d9/renderer_d3d9.cc
index 02e79aa..035f615 100644
--- a/o3d/core/win/d3d9/renderer_d3d9.cc
+++ b/o3d/core/win/d3d9/renderer_d3d9.cc
@@ -356,35 +356,10 @@ bool ForceAntiAliasingOff(LPDIRECT3D9* d3d) {
}
namespace {
-// Returns whether the ForceSoftwareRenderer value of the Software\Google\o3d
-// key is non-zero.
+// Returns whether to Force the Software Renderer by checking for the existence
+// of the environmen variable O3D_FORCE_SOFTWARE_RENDERER.
bool IsForceSoftwareRendererEnabled() {
- HKEY key;
- if (FAILED(RegOpenKeyEx(HKEY_CURRENT_USER,
- TEXT("Software\\Google\\o3d"),
- 0,
- KEY_READ,
- &key))) {
- return false;
- }
-
- bool enabled = false;
- DWORD type;
- DWORD value;
- DWORD size = sizeof(value);
- if (SUCCEEDED(RegQueryValueEx(key,
- TEXT("ForceSoftwareRenderer"),
- NULL,
- &type,
- reinterpret_cast<LPBYTE>(&value),
- &size))) {
- if (type == REG_DWORD && size == sizeof(value) && value) {
- enabled = true;
- }
- }
- RegCloseKey(key);
-
- return enabled;
+ return getenv("O3D_FORCE_SOFTWARE_RENDERER") != NULL;
}
}