mirror of
				https://github.com/RetroDECK/Duckstation.git
				synced 2025-04-10 19:15:14 +00:00 
			
		
		
		
	Minor gpu_sw optimizations and warning fixes
This commit is contained in:
		
							parent
							
								
									43bafe1a12
								
							
						
					
					
						commit
						b2ef931772
					
				|  | @ -269,8 +269,8 @@ void GPU_SW::DispatchRenderCommand() | |||
|       const u32 texcoord_and_palette = rc.texture_enable ? FifoPop() : 0; | ||||
|       const auto [texcoord_x, texcoord_y] = UnpackTexcoord(Truncate16(texcoord_and_palette)); | ||||
| 
 | ||||
|       s32 width; | ||||
|       s32 height; | ||||
|       u32 width; | ||||
|       u32 height; | ||||
|       switch (rc.rectangle_size) | ||||
|       { | ||||
|         case DrawRectangleSize::R1x1: | ||||
|  | @ -288,8 +288,8 @@ void GPU_SW::DispatchRenderCommand() | |||
|         default: | ||||
|         { | ||||
|           const u32 width_and_height = FifoPop(); | ||||
|           width = static_cast<s32>(width_and_height & VRAM_WIDTH_MASK); | ||||
|           height = static_cast<s32>((width_and_height >> 16) & VRAM_HEIGHT_MASK); | ||||
|           width = static_cast<u32>(width_and_height & VRAM_WIDTH_MASK); | ||||
|           height = static_cast<u32>((width_and_height >> 16) & VRAM_HEIGHT_MASK); | ||||
| 
 | ||||
|           if (width >= MAX_PRIMITIVE_WIDTH || height >= MAX_PRIMITIVE_HEIGHT) | ||||
|           { | ||||
|  |  | |||
|  | @ -17,10 +17,10 @@ public: | |||
|   bool Initialize(HostDisplay* host_display) override; | ||||
|   void Reset() override; | ||||
| 
 | ||||
|   u16 GetPixel(u32 x, u32 y) const { return m_vram[VRAM_WIDTH * y + x]; } | ||||
|   const u16* GetPixelPtr(u32 x, u32 y) const { return &m_vram[VRAM_WIDTH * y + x]; } | ||||
|   u16* GetPixelPtr(u32 x, u32 y) { return &m_vram[VRAM_WIDTH * y + x]; } | ||||
|   void SetPixel(u32 x, u32 y, u16 value) { m_vram[VRAM_WIDTH * y + x] = value; } | ||||
|   ALWAYS_INLINE_RELEASE u16 GetPixel(const u32 x, const u32 y) const { return m_vram[VRAM_WIDTH * y + x]; } | ||||
|   ALWAYS_INLINE_RELEASE const u16* GetPixelPtr(const u32 x, const u32 y) const { return &m_vram[VRAM_WIDTH * y + x]; } | ||||
|   ALWAYS_INLINE_RELEASE u16* GetPixelPtr(const u32 x, const u32 y) { return &m_vram[VRAM_WIDTH * y + x]; } | ||||
|   ALWAYS_INLINE_RELEASE void SetPixel(const u32 x, const u32 y, const u16 value) { m_vram[VRAM_WIDTH * y + x] = value; } | ||||
| 
 | ||||
|   // this is actually (31 * 255) >> 4) == 494, but to simplify addressing we use the next power of two (512)
 | ||||
|   static constexpr u32 DITHER_LUT_SIZE = 512; | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Romain TISSERAND
						Romain TISSERAND