Isaac Marovitz
c1745a27ab
Use RGBA8Unorm for R4G4B4A4Unorm
...
Gets SM64 to boot
2024-09-18 23:28:15 +02:00
Isaac Marovitz
13afe36f63
Dual Source Blend Support in Shader
...
Fixes Super Mario Galaxy and The Legend of Zelda: Skyward Sword HD
2024-09-18 23:28:15 +02:00
Isaac Marovitz
2fdd352255
Get Tomb Raider working
2024-09-18 23:28:15 +02:00
Isaac Marovitz
4ddecbb6fe
Remove DummyBufferTextures
...
Mostly gets VTG on Compute working again
2024-09-18 23:28:14 +02:00
Isaac Marovitz
3429ee2318
Properly register TextureBuffer usage + Store Auto ref
2024-09-18 23:28:14 +02:00
Isaac Marovitz
479ea9f8e8
Partial indirect draw support
2024-09-18 23:28:14 +02:00
Gabriel A
7de9bffe91
Fixes
2024-09-18 23:28:14 +02:00
Gabriel A
a72ce9998f
Start building more accurate vertex as compute usage info
2024-09-18 23:28:13 +02:00
Isaac Marovitz
1987309fda
Bind TextureBuffers
2024-09-18 23:28:13 +02:00
Isaac Marovitz
b3e002f8dc
Remove ClearSegments for now
...
Currently unimplemented and issues are arising with building BindingSegments in general.
2024-09-18 23:28:13 +02:00
Isaac Marovitz
e8e18f2578
Fix compute generation failure in NieR
2024-09-18 23:28:12 +02:00
Isaac Marovitz
27e9671da4
Some debug improvements
2024-09-18 23:28:12 +02:00
Isaac Marovitz
0449964760
Stop complaining about clip distance
2024-09-18 23:28:12 +02:00
Isaac Marovitz
c6bfc660ef
Shader Gen Fixes
...
Fixes Luigi’s Mansion 2 HD
2024-09-18 23:28:12 +02:00
Isaac Marovitz
f07d957bda
DepthStencil Blits
2024-09-18 23:28:11 +02:00
Isaac Marovitz
10110198f7
Multisample Blits
...
Partially fixes Sonic Colors Ultimate
2024-09-18 23:28:11 +02:00
Isaac Marovitz
bdcc2fd90e
Fix image bindings
2024-09-18 23:28:11 +02:00
Isaac Marovitz
6be0890f34
FSI (with raster order groups)
2024-09-18 23:28:11 +02:00
Isaac Marovitz
1bb3f28504
SwizzleAdd (NOT TESTED)
2024-09-18 23:28:11 +02:00
Isaac Marovitz
b4cf2d1cc9
Consolodate barriers
2024-09-18 23:28:10 +02:00
Isaac Marovitz
61c7d3bb9c
Shader Memory Barriers
...
Fixes some of the shader generation failures in Sonic Frontiers
2024-09-18 23:28:10 +02:00
Isaac Marovitz
fdf5d49985
Image binding support
...
Kirby still has a problem with NaN 3D Texture
2024-09-18 23:28:10 +02:00
Isaac Marovitz
1500af5808
Image shader gen support
2024-09-18 23:28:10 +02:00
Isaac Marovitz
32a3d1df4d
Shader cache support
2024-09-18 23:28:09 +02:00
Isaac Marovitz
a32b619f5c
Make dotnet format happy
2024-09-18 23:28:09 +02:00
Isaac Marovitz
a8794b2d58
GAL ResourceUsage Changes
...
TODO: Guest Barrier Defer
2024-09-18 23:28:09 +02:00
Isaac Marovitz
02b9b92723
Better vertex buffer management
2024-09-18 23:28:08 +02:00
Isaac Marovitz
1b2097c6eb
Fix LOD
2024-09-18 23:28:08 +02:00
Isaac Marovitz
10c042b6ab
Better index buffer management
2024-09-18 23:28:08 +02:00
Isaac Marovitz
fa9d38c779
Formatting cleanup
2024-09-18 23:28:07 +02:00
Isaac Marovitz
f8e232404e
Formatting
2024-09-18 23:28:07 +02:00
Isaac Marovitz
1a56e4477a
Update binding model description comment
2024-09-18 23:28:07 +02:00
riperiperi
8369f15bf5
Fix preload cbs optimization (for real) ( #34 )
...
* Mostly fix preload cbs. There seems to be some random flickering...
* fix index buffer usage range
* fix missing preflush submit before present
2024-09-18 23:28:07 +02:00
Isaac Marovitz
6f440f53f4
Fix invariant position not doing its job
2024-09-18 23:28:06 +02:00
riperiperi
16a9b18c26
implement compressed/uncompressed copy, fix other copies, fix int/uint output shaders ( #33 )
2024-09-18 23:28:06 +02:00
Isaac Marovitz
5a8e070c04
Fix blend state optimisation breaking attachments
...
Fixes SM3DW
2024-09-18 23:28:06 +02:00
riperiperi
e1568613af
Fix warnings
2024-09-18 23:28:06 +02:00
riperiperi
01094222c7
Maintain identity swizzle view of textures for rendering
2024-09-18 23:28:06 +02:00
riperiperi
4b95934fef
Fix a bunch of issues with texture copy and flush ( #32 )
...
* Fix a bunch of issues with texture copy and flush
* TextureCopy helper class, fix clear bug
2024-09-18 23:28:05 +02:00
Isaac Marovitz
c92a9e0ae5
Cleanup + Format
2024-09-18 23:28:05 +02:00
Isaac Marovitz
d111b152d1
Fix trying to reserve size 0 in staging buffer
2024-09-18 23:28:05 +02:00
Isaac Marovitz
bf1884c259
Fix zero buff not being reset
2024-09-18 23:28:05 +02:00
Isaac Marovitz
19b089a236
Dirty Arg Buffers on Program Change
2024-09-18 23:28:05 +02:00
Isaac Marovitz
9a0d50817c
Least allocations in the west
2024-09-18 23:28:04 +02:00
Isaac Marovitz
4909b73332
Don’t use Enum.HasFlag
2024-09-18 23:28:04 +02:00
Isaac Marovitz
18a3ee16bb
Metal: Better Bindings ( #29 )
...
* Tell GAL to use Vk model (and break everything)
* ResourceBindingSegments
* Set information on backend caps
* Get ready to break everything
* Refactor EncoderStateManager
* Remove padding from helper shaders
* Fix ref array sizes
* Seperate vert & frag buffers
* Shader-side changes
* Fixes
* Fix some helper shader resource layouts
* Sort by binding id
* Fix helper shader layouts
* Don’t do inline vertex buffer updates
* Check for null storage
2024-09-18 23:28:04 +02:00
Isaac Marovitz
2507d351af
Update comment for Metal
2024-09-18 23:28:04 +02:00
Isaac Marovitz
f59fae3612
Don’t do inline vertex buffer updates
...
Somehow broke zero buff MTLVertexDescriptor, but fixes broken geoemtry so I’m pushing anyway
2024-09-18 23:28:03 +02:00
riperiperi
117c5c1645
Create command buffers when rented rather than in advance ( #31 )
...
* Make it less likely to freeze, but the creation of the command buffer should probably be moved
* Create command buffers as they're rented rather than in advance
2024-09-18 23:28:03 +02:00
riperiperi
e3dd174f28
Preload command speedup, Texture/buffer data flush, blit shader fix ( #30 )
...
* Move encoder state to be tied to command buffer, so preload and background cbs have their own encoder state
* Texture buffer/data flush, blit shader fix
2024-09-18 23:28:03 +02:00