mirror of
				https://git.tardis.systems/mirrors/yuzu
				synced 2025-10-31 02:34:11 +01:00 
			
		
		
		
	Merge pull request #8809 from german77/finally_is_fixed
video_core: vulkan: rasterizer: Workaround on viewport swizzle on AMD
This commit is contained in:
		
						commit
						c881a67dba
					
				| @ -69,10 +69,17 @@ VkViewport GetViewportState(const Device& device, const Maxwell& regs, size_t in | ||||
|     const float width = conv(src.scale_x * 2.0f); | ||||
|     float y = conv(src.translate_y - src.scale_y); | ||||
|     float height = conv(src.scale_y * 2.0f); | ||||
|     if (regs.screen_y_control.y_negate) { | ||||
|     bool y_negate = regs.screen_y_control.y_negate; | ||||
| 
 | ||||
|     if (!device.IsNvViewportSwizzleSupported()) { | ||||
|         y_negate = y_negate != (src.swizzle.y == Maxwell::ViewportSwizzle::NegativeY); | ||||
|     } | ||||
| 
 | ||||
|     if (y_negate) { | ||||
|         y += height; | ||||
|         height = -height; | ||||
|     } | ||||
| 
 | ||||
|     const float reduce_z = regs.depth_mode == Maxwell::DepthMode::MinusOneToOne ? 1.0f : 0.0f; | ||||
|     VkViewport viewport{ | ||||
|         .x = x, | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user