Commit Graph

3785 Commits (16eb005e8b45e62aa84d8a46014c38cc167ece4c)

Author SHA1 Message Date
Isaac Marovitz 72cbb41609 Big GetData()
Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-09-28 19:03:01 -04:00
Isaac Marovitz e7fab91c69 Fix Animal Crossing Crash 2024-09-28 19:03:01 -04:00
Isaac Marovitz 97a36298fa 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-28 19:03:01 -04:00
Isaac Marovitz 03161d8048 PreloadCbs + FlushCommandsIfWeightExceeding 2024-09-28 19:03:01 -04:00
Isaac Marovitz b1928461bb Cleanup Pipeline
Housekeeping

More housekeeping
2024-09-28 19:03:01 -04:00
Isaac Marovitz 30b50a99e4 PersistentFlushBuffer + BackgroundResources 2024-09-28 19:03:01 -04:00
Isaac Marovitz a638060dee Match S8UintD24Unorm to Depth24UnormStencil8
Kind of works for es2gears
2024-09-28 19:03:01 -04:00
Isaac Marovitz 49781fde65 Fix FEZ not showing anything
Does not fix the underlying shortcomings of the cache system
2024-09-28 19:03:01 -04:00
Isaac Marovitz 84f3b4a3e1 Clear cached converted buffers on signaled write 2024-09-28 19:03:01 -04:00
Isaac Marovitz 2c511cdf4f FIx regression 2024-09-28 19:03:01 -04:00
Isaac Marovitz 17cfcf07d2 Helper shader cleanup 2024-09-28 19:03:01 -04:00
Isaac Marovitz 410287aba2 Use buffer manager for color blit 2024-09-28 19:03:01 -04:00
Isaac Marovitz 6ebe5bb406 Buffer Conversions (#23)
* Why is this not working

* Revert helper shader changes for now

* Byte Index Buffer Restride
2024-09-28 19:03:01 -04:00
riperiperi 02de48a6f2 don't recreate render pipeline unless we're about to draw, pass view depth properly (#22) 2024-09-28 19:03:01 -04:00
Isaac Marovitz 58b3e2e82b 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-28 19:03:01 -04:00
Isaac Marovitz d0946213fa Log failed format conversions 2024-09-28 19:03:01 -04:00
Isaac Marovitz 66e2533c90 Print shader code involved in failed linking 2024-09-28 19:03:01 -04:00
Isaac Marovitz b821cb1739 Don’t use DidModifyRange 2024-09-28 19:03:01 -04:00
Isaac Marovitz 122f0f45c8 Fix sample compare 2024-09-28 19:03:01 -04:00
Isaac Marovitz 9a6759d1e5 Depth Bias 2024-09-28 19:03:01 -04:00
Isaac Marovitz e97c9bc959 Map R5G5B5A1Unorm 2024-09-28 19:03:01 -04:00
Samuliak bc5df02d7d override Equals for render pipeline hash 2024-09-28 19:03:01 -04:00
Isaac Marovitz 1c5937c40b Disable scaled vertex formats 2024-09-28 19:03:01 -04:00
Isaac Marovitz 4bb736d70a Disable Vector Indexing Bug Workaround 2024-09-28 19:03:01 -04:00
Isaac Marovitz efb7baf15c Fix modulo operator
Support sample offsets

Include FragmentIn as additional arg

Always declare frag output struct

SubgroupLaneId
2024-09-28 19:03:01 -04:00
Isaac Marovitz fad653c12e Workaround for Wonder 2024-09-28 19:03:01 -04:00
Isaac Marovitz bb4cb531f2 Fix 3D -> 3D Texture Copies 2024-09-28 19:03:01 -04:00
Isaac Marovitz 3c188718c4 Fix Clear Viewport 2024-09-28 19:03:01 -04:00
Isaac Marovitz 362672ae12 Fix sample-less reads with lod 2024-09-28 19:03:01 -04:00
Isaac Marovitz 970914e2b4 Fix Pack and UnpackHalf2x16 2024-09-28 19:03:01 -04:00
Isaac Marovitz f7e97a30af Handle Array Format SetData 2024-09-28 19:03:01 -04:00
Isaac Marovitz aae9dc0c2e Cleanup 2024-09-28 19:03:01 -04:00
Isaac Marovitz b0ba5d5da1 Implement IoVariable.FrontFacing 2024-09-28 19:03:01 -04:00
Isaac Marovitz a6de2c9274 Fix LOD sample typo 2024-09-28 19:03:01 -04:00
Isaac Marovitz d323a8d44a Rebase Changes 2024-09-28 19:03:01 -04:00
Isaac Marovitz ba07a8c603 More cleanup 2024-09-28 19:03:01 -04:00
Isaac Marovitz 362746887e Cleanup + Format 2024-09-28 19:03:01 -04:00
Isaac Marovitz b064d76a4f Metal: Compute Shaders (#19)
* check for too bix texture bindings

* implement lod query

* print shader stage name

* always have fragment input

* resolve merge conflicts

* fix: lod query

* fix: casting texture coords

* support non-array memories

* use structure types for buffers

* implement compute pipeline cache

* compute dispatch

* improve error message

* rebind compute state

* bind compute textures

* pass local size as an argument to dispatch

* implement texture buffers

* hack: change vertex index to vertex id

* pass support buffer as an argument to every function

* return at the end of function

* fix: certain missing compute bindings

* implement texture base

* improve texture binding system

* remove useless exception

* move texture handle to texture base

* fix: segfault when using disposed textures

---------

Co-authored-by: Samuliak <samuliak77@gmail.com>
Co-authored-by: SamoZ256 <96914946+SamoZ256@users.noreply.github.com>
2024-09-28 19:03:01 -04:00
Isaac Marovitz 131ab75d55 Handle stride 0 on regular buffers 2024-09-28 19:03:01 -04:00
Isaac Marovitz 65149cfe9f Buffer Descriptor Step Functions 2024-09-28 19:03:01 -04:00
Isaac Marovitz a435d94fae Sample LOD Level 2024-09-28 19:03:01 -04:00
Isaac Marovitz 88dd2984be Fix FragmentOutputColor Type 2024-09-28 19:03:01 -04:00
Isaac Marovitz 43460186a8 Stencil Ref Value 2024-09-28 19:03:01 -04:00
Isaac Marovitz 0a6f11d247 Stencil Fixes 2024-09-28 19:03:01 -04:00
Isaac Marovitz 1b86360a61 RenderTargetColorMasks 2024-09-28 19:03:01 -04:00
Isaac Marovitz dc01de61cd Make dotnet format happy 2024-09-28 19:03:01 -04:00
SamoZ256 e423f81155 Zero vertex buffer (#17)
* cast src size to float

* implement zero buffers
2024-09-28 19:03:01 -04:00
Isaac Marovitz 35f68c1b31 Implement Texture CopyTo 2024-09-28 19:03:01 -04:00
Isaac Marovitz cb8fdeafbc Cleanup present 2024-09-28 19:03:01 -04:00
Isaac Marovitz 1f29a76ea3 Metal: Advanced Present (#6)
* Initial DrawTexture support & Advanced Present

* TODO: Get Scissors Working

* Chnage scissor state management

* Rebase problems…

* Rebase fixes again

* Update DrawTexture + Fix Topology

* Fix flipping

* Add clear action support

* Cleanup
2024-09-28 19:03:01 -04:00