mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	maxwell_3d: Add viewport swizzles
This commit is contained in:
		
							parent
							
								
									500e9c5969
								
							
						
					
					
						commit
						9b8e962368
					
				| @ -44,6 +44,12 @@ void Maxwell3D::InitializeRegisterDefaults() { | ||||
|         viewport.depth_range_near = 0.0f; | ||||
|         viewport.depth_range_far = 1.0f; | ||||
|     } | ||||
|     for (auto& viewport : regs.viewport_transform) { | ||||
|         viewport.swizzle.x.Assign(Regs::ViewportSwizzle::PositiveX); | ||||
|         viewport.swizzle.y.Assign(Regs::ViewportSwizzle::PositiveY); | ||||
|         viewport.swizzle.z.Assign(Regs::ViewportSwizzle::PositiveZ); | ||||
|         viewport.swizzle.w.Assign(Regs::ViewportSwizzle::PositiveW); | ||||
|     } | ||||
| 
 | ||||
|     // Doom and Bomberman seems to use the uninitialized registers and just enable blend
 | ||||
|     // so initialize blend registers with sane values
 | ||||
|  | ||||
| @ -575,6 +575,17 @@ public: | ||||
|             Replay = 3, | ||||
|         }; | ||||
| 
 | ||||
|         enum class ViewportSwizzle : u32 { | ||||
|             PositiveX = 0, | ||||
|             NegativeX = 1, | ||||
|             PositiveY = 2, | ||||
|             NegativeY = 3, | ||||
|             PositiveZ = 4, | ||||
|             NegativeZ = 5, | ||||
|             PositiveW = 6, | ||||
|             NegativeW = 7, | ||||
|         }; | ||||
| 
 | ||||
|         struct RenderTargetConfig { | ||||
|             u32 address_high; | ||||
|             u32 address_low; | ||||
| @ -618,7 +629,13 @@ public: | ||||
|             f32 translate_x; | ||||
|             f32 translate_y; | ||||
|             f32 translate_z; | ||||
|             INSERT_UNION_PADDING_WORDS(2); | ||||
|             union { | ||||
|                 BitField<0, 3, ViewportSwizzle> x; | ||||
|                 BitField<4, 3, ViewportSwizzle> y; | ||||
|                 BitField<8, 3, ViewportSwizzle> z; | ||||
|                 BitField<12, 3, ViewportSwizzle> w; | ||||
|             } swizzle; | ||||
|             INSERT_UNION_PADDING_WORDS(1); | ||||
| 
 | ||||
|             Common::Rectangle<f32> GetRect() const { | ||||
|                 return { | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 ReinUsesLisp
						ReinUsesLisp