@@ -1199,6 +1199,25 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
11991199 SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOLEAN , debug );
12001200 SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOLEAN , lowpower );
12011201
1202+ // Set hints for the greatest hardware compatibility
1203+ // This property allows using the renderer on Intel Haswell and Broadwell GPUs.
1204+ if (!SDL_HasProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN )) {
1205+ SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN , true);
1206+ }
1207+ // These properties allow using the renderer on more Android devices.
1208+ if (!SDL_HasProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SHADERCLIPDISTANCE_BOOLEAN )) {
1209+ SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SHADERCLIPDISTANCE_BOOLEAN , false);
1210+ }
1211+ if (!SDL_HasProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DEPTHCLAMP_BOOLEAN )) {
1212+ SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DEPTHCLAMP_BOOLEAN , false);
1213+ }
1214+ if (!SDL_HasProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DRAWINDIRECTFIRST_BOOLEAN )) {
1215+ SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DRAWINDIRECTFIRST_BOOLEAN , false);
1216+ }
1217+ if (!SDL_HasProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SAMPLERANISOTROPY_BOOLEAN )) {
1218+ SDL_SetBooleanProperty (create_props , SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SHADERCLIPDISTANCE_BOOLEAN , false);
1219+ }
1220+
12021221 GPU_FillSupportedShaderFormats (create_props );
12031222 data -> device = SDL_CreateGPUDeviceWithProperties (create_props );
12041223
0 commit comments