Separate GPU engines (part 2/2) (#2440)
* 3D engine now uses DeviceState too, plus new state modification tracking * Remove old methods code * Remove GpuState and friends * Optimize DeviceState, force inline some functions * This change was not supposed to go in * Proper channel initialization * Optimize state read/write methods even more * Fix debug build * Do not dirty state if the write is redundant * The YControl register should dirty either the viewport or front face state too, to update the host origin * Avoid redundant vertex buffer updates * Move state and get rid of the Ryujinx.Graphics.Gpu.State namespace * Comments and nits * Fix rebase * PR feedback * Move changed = false to improve codegen * PR feedback * Carry RyuJIT a bit more
This commit is contained in:
		
							parent
							
								
									b5190f1681
								
							
						
					
					
						commit
						40b21cc3c4
					
				
					 111 changed files with 5262 additions and 4020 deletions
				
			
		|  | @ -1,5 +1,4 @@ | |||
| using Ryujinx.Graphics.GAL; | ||||
| using Ryujinx.Graphics.Gpu.Engine; | ||||
| using Ryujinx.Graphics.Gpu.Engine.GPFifo; | ||||
| using Ryujinx.Graphics.Gpu.Memory; | ||||
| using Ryujinx.Graphics.Gpu.Shader; | ||||
|  | @ -26,11 +25,6 @@ namespace Ryujinx.Graphics.Gpu | |||
|         /// </summary> | ||||
|         public IRenderer Renderer { get; } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// GPU engine methods processing. | ||||
|         /// </summary> | ||||
|         internal Methods Methods { get; } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// GPU General Purpose FIFO queue. | ||||
|         /// </summary> | ||||
|  | @ -94,8 +88,6 @@ namespace Ryujinx.Graphics.Gpu | |||
|         { | ||||
|             Renderer = renderer; | ||||
| 
 | ||||
|             Methods = new Methods(this); | ||||
| 
 | ||||
|             GPFifo = new GPFifoDevice(this); | ||||
| 
 | ||||
|             Synchronization = new SynchronizationManager(); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 gdkchan
						gdkchan