Commit Graph

3695 Commits

Author SHA1 Message Date
Isaac Marovitz 88ce186191
Fragment input interpolation qualifiers
Fixes Mario’s shadow in SMO
2024-09-18 23:27:49 +02:00
Isaac Marovitz b950e12ab8
CommandBufferBarrier 2024-09-18 23:27:49 +02:00
riperiperi 5f1d3fd744
Add constrained border colours to samplers (#26) 2024-09-18 23:27:49 +02:00
Isaac Marovitz cb65fdf95a
Don’t bind byte format converted index buffers at requested index 2024-09-18 23:27:49 +02:00
Isaac Marovitz f61f587d37
Render target deduplication
not sure if this is working
2024-09-18 23:27:48 +02:00
Isaac Marovitz 55a5b1e75e
Fix CBP not doing its job
Thanks peri (again)
2024-09-18 23:27:48 +02:00
Isaac Marovitz 17a27cf59b
Fix blend descriptors not dirting render pipeline
Thanks peri
2024-09-18 23:27:48 +02:00
Isaac Marovitz e2c0b1b1ec
Support non-index quad draws
Fixes Deltarune
2024-09-18 23:27:48 +02:00
Isaac Marovitz ba21266a3e
Be better about memory 2024-09-18 23:27:47 +02:00
Isaac Marovitz ea95713056
Fix stencil clears 2024-09-18 23:27:47 +02:00
Isaac Marovitz 97c22e2f1a
Enable Alpha Test workaround on Metal 2024-09-18 23:27:47 +02:00
Isaac Marovitz 8a006514d3
Fix Cull FrontAndBack 2024-09-18 23:27:46 +02:00
Isaac Marovitz f16693e4e1
Warning about host map buffer creation 2024-09-18 23:27:46 +02:00
Isaac Marovitz 4dad6d12b9
Fix fragment point_coord in 2024-09-18 23:27:46 +02:00
Isaac Marovitz e6f4745bb5
Argument Buffers (#24)
* Stuff

* More arg buffer stuff

* Fixes

* Rebase

* Pass storage buffers to inline functions

* Fix binding

* Fix typo + Fix a couple shaders

* Enforce ids

* Dispose

* Mark used buffers as resident

* Update depth clear shader

* Fix non-contiguous struct defs

* Update ChangeBufferStride

* Fix StorageBuffer assignments

* Fix odyssey crash

* Retain buffer bindings

* Pad Std140

* Set texture data with safe buffers

* Clone buffers

* Always declare vert in

* Stop clears from breaking OpenGL games

* Fix depth clear

* Use invariant position

* Horribly inefficient texture & sampler arg buffers

* Fix missing struct access

* Minimise rebinds as much as possible

* Build arg buffers on staging buffer
2024-09-18 23:27:45 +02:00
Isaac Marovitz 23b9a780ee
VoteAllEqual, FindLSB/MSB 2024-09-18 23:27:45 +02:00
Isaac Marovitz 3fe47449b4
Fix vertex “built-ins”
Only declare main func out in main

Fix simd_ballot

Fix thread_index_in_simdgroup outside of compute

Fix atomic operations

instance_index
2024-09-18 23:27:45 +02:00
Isaac Marovitz b54bfb1a7c
Actually clear the right render target 2024-09-18 23:27:45 +02:00
Isaac Marovitz 3fd758532b
Big GetData()
Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-09-18 23:27:44 +02:00
Isaac Marovitz 461933b8cd
Fix Animal Crossing Crash 2024-09-18 23:27:44 +02:00
Isaac Marovitz e4fa286698
Instruction.Barrier
Whoops

Fix inline functions in compute stage

Fix regression

Declare SharedMemories + Only Declare Memories on Main Func

Lowecase struct

Avoid magic strings

Make function signatures readable

Change how unsized arrays are indexed

Use string builder

Fix shuffle instructions

Cleanup NumberFormater

Bunch of Subgroup I/O Vars

Will probably need further refinement

Fix point_coord type

Fix support buffer declaration

Fix point_coord
2024-09-18 23:27:44 +02:00
Isaac Marovitz a83eb53abf
PreloadCbs + FlushCommandsIfWeightExceeding 2024-09-18 23:27:44 +02:00
Isaac Marovitz 6550f1cd66
Cleanup Pipeline
Housekeeping

More housekeeping
2024-09-18 23:27:43 +02:00
Isaac Marovitz 36f7d4eafa
PersistentFlushBuffer + BackgroundResources 2024-09-18 23:27:43 +02:00
Isaac Marovitz c59142a500
Match S8UintD24Unorm to Depth24UnormStencil8
Kind of works for es2gears
2024-09-18 23:27:43 +02:00
Isaac Marovitz be78e7a1a5
Fix FEZ not showing anything
Does not fix the underlying shortcomings of the cache system
2024-09-18 23:27:43 +02:00
Isaac Marovitz 0561d708f8
Clear cached converted buffers on signaled write 2024-09-18 23:27:42 +02:00
Isaac Marovitz a197340e22
FIx regression 2024-09-18 23:27:42 +02:00
Isaac Marovitz de4d4016b3
Helper shader cleanup 2024-09-18 23:27:42 +02:00
Isaac Marovitz 705ec71f65
Use buffer manager for color blit 2024-09-18 23:27:42 +02:00
Isaac Marovitz 04982f792e
Buffer Conversions (#23)
* Why is this not working

* Revert helper shader changes for now

* Byte Index Buffer Restride
2024-09-18 23:27:41 +02:00
riperiperi 45239b3810
don't recreate render pipeline unless we're about to draw, pass view depth properly (#22) 2024-09-18 23:27:41 +02:00
Isaac Marovitz e016da58e1
Metal: Buffers Take 2 (#21)
* Basic BufferManager

* Start Scoped Command Buffers

* Fences stuff

* Remember to cleanup sync manager

* Auto, Command Buffer Dependants

* Cleanup

* Cleanup + Fix Texture->Buffer Copies

* Slow buffer upload

* Cleanup + Rework TextureBuffer

* Don’t get unsafe

* Cleanup

* Goddamn it

* Staging Buffer + Interrupt Action + Flush
2024-09-18 23:27:41 +02:00
Isaac Marovitz 7158c8ddc2
Log failed format conversions 2024-09-18 23:27:40 +02:00
Isaac Marovitz dee19f8227
Print shader code involved in failed linking 2024-09-18 23:27:40 +02:00
Isaac Marovitz 774359f6b7
Don’t use DidModifyRange 2024-09-18 23:27:40 +02:00
Isaac Marovitz 04703f0191
Fix sample compare 2024-09-18 23:27:40 +02:00
Isaac Marovitz b0f167a13b
Depth Bias 2024-09-18 23:27:40 +02:00
Isaac Marovitz e6eb997892
Map R5G5B5A1Unorm 2024-09-18 23:27:39 +02:00
Samuliak 87b46ad5c1
override Equals for render pipeline hash 2024-09-18 23:27:39 +02:00
Isaac Marovitz 1d96ca6c80
Disable scaled vertex formats 2024-09-18 23:27:39 +02:00
Isaac Marovitz a2328bd8fb
Disable Vector Indexing Bug Workaround 2024-09-18 23:27:39 +02:00
Isaac Marovitz 4a4ac78373
Fix modulo operator
Support sample offsets

Include FragmentIn as additional arg

Always declare frag output struct

SubgroupLaneId
2024-09-18 23:27:38 +02:00
Isaac Marovitz 8e2e6c48de
Workaround for Wonder 2024-09-18 23:27:38 +02:00
Isaac Marovitz 0c351a6caa
Fix 3D -> 3D Texture Copies 2024-09-18 23:27:38 +02:00
Isaac Marovitz fe7b8c4514
Fix Clear Viewport 2024-09-18 23:27:38 +02:00
Isaac Marovitz 66f68e08a3
Fix sample-less reads with lod 2024-09-18 23:27:37 +02:00
Isaac Marovitz fdfd457d6e
Fix Pack and UnpackHalf2x16 2024-09-18 23:27:37 +02:00
Isaac Marovitz 5322de91b5
Handle Array Format SetData 2024-09-18 23:27:37 +02:00
Isaac Marovitz d694878d2c
Cleanup 2024-09-18 23:27:37 +02:00