mirror of
				https://git.suyu.dev/suyu/suyu.git
				synced 2025-10-31 14:56:40 +08:00 
			
		
		
		
	Merge pull request #2218 from Subv/stencil_lines
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
This commit is contained in:
		
						commit
						77b7cec8af
					
				| @ -893,7 +893,7 @@ bool RasterizerOpenGL::AccelerateFill(const GPU::Regs::MemoryFillConfig& config) | ||||
|             value_float = config.value_32bit / 16777215.0f; // 2^24 - 1
 | ||||
|         } | ||||
| 
 | ||||
|         cur_state.depth.write_mask = true; | ||||
|         cur_state.depth.write_mask = GL_TRUE; | ||||
|         cur_state.Apply(); | ||||
|         glClearBufferfv(GL_DEPTH, 0, &value_float); | ||||
|     } else if (dst_type == SurfaceType::DepthStencil) { | ||||
| @ -908,8 +908,8 @@ bool RasterizerOpenGL::AccelerateFill(const GPU::Regs::MemoryFillConfig& config) | ||||
|         GLfloat value_float = (config.value_32bit & 0xFFFFFF) / 16777215.0f; // 2^24 - 1
 | ||||
|         GLint value_int = (config.value_32bit >> 24); | ||||
| 
 | ||||
|         cur_state.depth.write_mask = true; | ||||
|         cur_state.stencil.write_mask = true; | ||||
|         cur_state.depth.write_mask = GL_TRUE; | ||||
|         cur_state.stencil.write_mask = 0xFF; | ||||
|         cur_state.Apply(); | ||||
|         glClearBufferfi(GL_DEPTH_STENCIL, 0, value_float, value_int); | ||||
|     } | ||||
|  | ||||
| @ -27,8 +27,8 @@ OpenGLState::OpenGLState() { | ||||
|     stencil.test_enabled = false; | ||||
|     stencil.test_func = GL_ALWAYS; | ||||
|     stencil.test_ref = 0; | ||||
|     stencil.test_mask = -1; | ||||
|     stencil.write_mask = -1; | ||||
|     stencil.test_mask = 0xFF; | ||||
|     stencil.write_mask = 0xFF; | ||||
|     stencil.action_depth_fail = GL_KEEP; | ||||
|     stencil.action_depth_pass = GL_KEEP; | ||||
|     stencil.action_stencil_fail = GL_KEEP; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user