diff --git a/renderdoc/driver/ihv/nv/nvapi_hooks.cpp b/renderdoc/driver/ihv/nv/nvapi_hooks.cpp index e2a72165d..055f164bf 100644 --- a/renderdoc/driver/ihv/nv/nvapi_hooks.cpp +++ b/renderdoc/driver/ihv/nv/nvapi_hooks.cpp @@ -25,6 +25,7 @@ #include #include "common/formatting.h" #include "core/core.h" +#include "core/settings.h" #include "driver/d3d11/d3d11_hooks.h" #include "hooks/hooks.h" #include "nvapi_wrapper.h" @@ -34,6 +35,9 @@ #include "official/nvapi/nvapi.h" +RDOC_CONFIG(bool, NV_BlockNVAPI, false, + "Completely block nvapi from activating, pretend no NV GPU is present"); + namespace { #include "official/nvapi/nvapi_interface.h" @@ -503,6 +507,9 @@ private: static NvAPI_Status __cdecl NvAPI_Initialize_hook() { + if(NV_BlockNVAPI()) + return NVAPI_NVIDIA_DEVICE_NOT_FOUND; + NvAPI_Status ret = nvhooks.NvAPI_Initialize()(); if(ret == NVAPI_OK)