Isaac Marovitz
9e9b55f600
Bind TextureBuffers
2024-09-19 19:51:43 +02:00
Isaac Marovitz
1aab6ffcb8
Remove ClearSegments for now
...
Currently unimplemented and issues are arising with building BindingSegments in general.
2024-09-19 19:51:43 +02:00
Isaac Marovitz
f9911f15e7
Fix compute generation failure in NieR
2024-09-19 19:51:43 +02:00
Isaac Marovitz
464519e747
Some debug improvements
2024-09-19 19:51:42 +02:00
Isaac Marovitz
c2be81c805
Stop complaining about clip distance
2024-09-19 19:51:42 +02:00
Isaac Marovitz
202e00080c
Shader Gen Fixes
...
Fixes Luigi’s Mansion 2 HD
2024-09-19 19:51:42 +02:00
Isaac Marovitz
35baf30520
DepthStencil Blits
2024-09-19 19:51:42 +02:00
Isaac Marovitz
5d36a2df5f
Multisample Blits
...
Partially fixes Sonic Colors Ultimate
2024-09-19 19:51:42 +02:00
Isaac Marovitz
ecb3b7b1ea
Fix image bindings
2024-09-19 19:51:42 +02:00
Isaac Marovitz
294c10f086
FSI (with raster order groups)
2024-09-19 19:51:41 +02:00
Isaac Marovitz
619f70076b
SwizzleAdd (NOT TESTED)
2024-09-19 19:51:41 +02:00
Isaac Marovitz
3a6f4122a1
Consolodate barriers
2024-09-19 19:51:41 +02:00
Isaac Marovitz
a17ea2fb1b
Shader Memory Barriers
...
Fixes some of the shader generation failures in Sonic Frontiers
2024-09-19 19:51:41 +02:00
Isaac Marovitz
07b0109ffe
Image binding support
...
Kirby still has a problem with NaN 3D Texture
2024-09-19 19:51:41 +02:00
Isaac Marovitz
6d26a12239
Image shader gen support
2024-09-19 19:51:40 +02:00
Isaac Marovitz
12b9c61e5b
Shader cache support
2024-09-19 19:51:40 +02:00
Isaac Marovitz
9b19cd0b9c
Make dotnet format happy
2024-09-19 19:51:40 +02:00
Isaac Marovitz
f6c3ff930e
GAL ResourceUsage Changes
...
TODO: Guest Barrier Defer
2024-09-19 19:51:40 +02:00
Isaac Marovitz
aad8ef385b
Better vertex buffer management
2024-09-19 19:51:40 +02:00
Isaac Marovitz
a13a73c51d
Fix LOD
2024-09-19 19:51:40 +02:00
Isaac Marovitz
225a863f68
Better index buffer management
2024-09-19 19:51:39 +02:00
Isaac Marovitz
dfb199f0e0
Formatting cleanup
2024-09-19 19:51:39 +02:00
Isaac Marovitz
a603587c51
Formatting
2024-09-19 19:51:39 +02:00
Isaac Marovitz
dbb53c08a5
Update binding model description comment
2024-09-19 19:51:39 +02:00
riperiperi
2bddbf20b3
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-19 19:51:39 +02:00
Isaac Marovitz
adc7fb51e4
Fix invariant position not doing its job
2024-09-19 19:51:38 +02:00
riperiperi
d34f031986
implement compressed/uncompressed copy, fix other copies, fix int/uint output shaders ( #33 )
2024-09-19 19:51:38 +02:00
Isaac Marovitz
49435bc55d
Fix blend state optimisation breaking attachments
...
Fixes SM3DW
2024-09-19 19:51:38 +02:00
riperiperi
5192405aca
Fix warnings
2024-09-19 19:51:38 +02:00
riperiperi
2083fdf4fe
Maintain identity swizzle view of textures for rendering
2024-09-19 19:51:38 +02:00
riperiperi
576159ea8d
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-19 19:51:38 +02:00
Isaac Marovitz
56f1a0d41c
Cleanup + Format
2024-09-19 19:51:37 +02:00
Isaac Marovitz
1de638c19d
Fix trying to reserve size 0 in staging buffer
2024-09-19 19:51:37 +02:00
Isaac Marovitz
68d95b82cd
Fix zero buff not being reset
2024-09-19 19:51:37 +02:00
Isaac Marovitz
78d87fd2dc
Dirty Arg Buffers on Program Change
2024-09-19 19:51:37 +02:00
Isaac Marovitz
78a19a854e
Least allocations in the west
2024-09-19 19:51:37 +02:00
Isaac Marovitz
ab333ec7fc
Don’t use Enum.HasFlag
2024-09-19 19:51:36 +02:00
Isaac Marovitz
ffa4cc3ae1
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-19 19:51:36 +02:00
Isaac Marovitz
488d1b69dd
Update comment for Metal
2024-09-19 19:51:36 +02:00
Isaac Marovitz
8dd97cda6e
Don’t do inline vertex buffer updates
...
Somehow broke zero buff MTLVertexDescriptor, but fixes broken geoemtry so I’m pushing anyway
2024-09-19 19:51:36 +02:00
riperiperi
3e65773de5
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-19 19:51:36 +02:00
riperiperi
b626cc8f06
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-19 19:51:36 +02:00
Isaac Marovitz
fd39c27934
Dont bind images in texture slots
2024-09-19 19:51:35 +02:00
Isaac Marovitz
fd296be06c
Stop depth/stencil blits from crashing everything
2024-09-19 19:51:35 +02:00
riperiperi
34d523b9e5
Fix Geometry/TFB on compute, Buffer Textures, add Window Resizing ( #28 )
2024-09-19 19:51:35 +02:00
riperiperi
fdae6b6916
State and cache optimization ( #27 )
...
* WIP pipeline/depth state cache rework
* Fix some issues
* Fix some more default values
* Reduce allocations for state changes
* fix helpershader stuff
* explanation comment
* fix depth bias
2024-09-19 19:51:35 +02:00
Isaac Marovitz
cdc7a64c90
Fragment input interpolation qualifiers
...
Fixes Mario’s shadow in SMO
2024-09-19 19:51:35 +02:00
Isaac Marovitz
f89c057e76
CommandBufferBarrier
2024-09-19 19:51:34 +02:00
riperiperi
996ec7cd8c
Add constrained border colours to samplers ( #26 )
2024-09-19 19:51:34 +02:00
Isaac Marovitz
ab936b708b
Don’t bind byte format converted index buffers at requested index
2024-09-19 19:51:34 +02:00