From 91e72261d0ad283513e4463b4eef28f1b0169bda Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Thu, 29 May 2025 20:28:01 +0200 Subject: [PATCH] Apply clipping and culling on hardware (#198) --- miniwin/src/d3drm/backends/sdl3gpu/renderer.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/miniwin/src/d3drm/backends/sdl3gpu/renderer.cpp b/miniwin/src/d3drm/backends/sdl3gpu/renderer.cpp index def87577..9b441126 100644 --- a/miniwin/src/d3drm/backends/sdl3gpu/renderer.cpp +++ b/miniwin/src/d3drm/backends/sdl3gpu/renderer.cpp @@ -58,7 +58,14 @@ SDL_GPUGraphicsPipeline* InitializeGraphicsPipeline(SDL_GPUDevice* device) SDL_GPUColorTargetDescription colorTargets = {}; colorTargets.format = SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM; + SDL_GPURasterizerState rasterizerState = {}; + rasterizerState.fill_mode = SDL_GPU_FILLMODE_FILL; + rasterizerState.cull_mode = SDL_GPU_CULLMODE_BACK; + rasterizerState.front_face = SDL_GPU_FRONTFACE_CLOCKWISE; + rasterizerState.enable_depth_clip = true; + SDL_GPUGraphicsPipelineCreateInfo pipelineCreateInfo = {}; + pipelineCreateInfo.rasterizer_state = rasterizerState; pipelineCreateInfo.vertex_shader = vertexShader; pipelineCreateInfo.fragment_shader = fragmentShader; pipelineCreateInfo.vertex_input_state = vertexInputState;