Isaac Marovitz
b7915ac3cf
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-18 23:26:40 +02:00
SamoZ256
8cbdbad67f
Clone the state & flip viewport vertically ( #16 )
...
* implement texture get data
* reset all state before blit & clone state
* format
* support blit regions
* implement source region for blit
* replace bottom with top
* account for 0 size
* support image flipping
* revert presentation fixes & y flip
* revert
* flip viewport vertically
* switch face winding
* comment
* use SetBytes for texture clear
* implement missing compute builtins
* change storage and texture buffer alignment
* correct compute builtins
* don't use nullable for textures and samplers
* remove incorrect texture get data implementation
* Cleanup IntPtrs
---------
Co-authored-by: Isaac Marovitz <isaacryu@icloud.com>
2024-09-18 23:26:39 +02:00
SamoZ256
5f6d375b00
Fix Scott Pilgrim ( #15 )
...
* check for null vertex functions
* format
* Format
---------
Co-authored-by: Isaac Marovitz <isaacryu@icloud.com>
2024-09-18 23:26:39 +02:00
Isaac Marovitz
f837be962f
Suppress GC Finalize on StateCache
2024-09-18 23:26:39 +02:00
Isaac Marovitz
a14ca383b2
Use Stack instead of List
2024-09-18 23:26:38 +02:00
Isaac Marovitz
c19dee2f8e
Whitespace formatting
2024-09-18 23:26:38 +02:00
Samuliak
f7fc475ee4
dispose all temporary buffers
2024-09-18 23:26:38 +02:00
Samuliak
de01995e95
dispose temporary metal buffer
2024-09-18 23:26:37 +02:00
Samuliak
330935e780
dispose drawable texture view
2024-09-18 23:26:37 +02:00
Samuliak
c8d51c693e
implement texture get data
2024-09-18 23:26:37 +02:00
Samuliak
09983b8188
fix: don't dispose stencil state before using
2024-09-18 23:26:36 +02:00
Samuliak
24158b2e1c
allow null depth stencil render targets
2024-09-18 23:26:36 +02:00
Samuliak
6d12cb529d
reset certain state before doing blit or clear
2024-09-18 23:26:36 +02:00
Samuliak
934a5941b9
reset viewport before blit
2024-09-18 23:26:35 +02:00
Samuliak
680f950a59
dispose encoder state manager
2024-09-18 23:26:35 +02:00
Samuliak
af4b762ce3
dispose all objects in encoder state manager
2024-09-18 23:26:35 +02:00
Samuliak
952ed6bb41
dispose caches
2024-09-18 23:26:35 +02:00
Samuliak
4a97c2b64d
warn about barriers
2024-09-18 23:26:34 +02:00
Samuliak
cb183b3945
do memory barriers
2024-09-18 23:26:34 +02:00
Samuliak
b051cda16a
remove useless parameters
2024-09-18 23:26:33 +02:00
Samuliak
c3c75b2939
set the inline state after restoring state
2024-09-18 23:26:33 +02:00
Samuliak
541f1096b7
make states private
2024-09-18 23:26:33 +02:00
Samuliak
6296de1a65
fix: incorrect merge stuff
2024-09-18 23:26:32 +02:00
Samuliak
bff52c221b
don't interrupt render pass before color clear
2024-09-18 23:26:32 +02:00
Samuliak
37272c6223
implement save and restore state system
2024-09-18 23:26:32 +02:00
Samuliak
56fcfba689
revert deferred clears
2024-09-18 23:26:31 +02:00
Samuliak
19c5391e7d
prepare for deferred clears
2024-09-18 23:26:31 +02:00
Samuliak
f93d309bff
resolve merge conflicts
2024-09-18 23:26:30 +02:00
Isaac Marovitz
854c25e0a6
Rebase
2024-09-18 23:26:30 +02:00
Isaac Marovitz
a42b70890b
Cleanup + Format
2024-09-18 23:26:30 +02:00
Isaac Marovitz
67e83af943
Start Proper Dispose
2024-09-18 23:26:29 +02:00
Samuliak
8ad4ee2892
do texture barrier tiled
2024-09-18 23:26:29 +02:00
Samuliak
5bf7e146fa
do texture barrier
2024-09-18 23:26:29 +02:00
Samuliak
94b253476e
implement depth stencil cache
2024-09-18 23:26:28 +02:00
Isaac Marovitz
57d68ce7f0
Fix typo in SamplerType.TextureBuffer
2024-09-18 23:26:28 +02:00
Isaac Marovitz
d5f510a745
Fix StoreActions & Don’t Clamp Scissor for Now
2024-09-18 23:26:27 +02:00
Isaac Marovitz
f836258728
Depth Clear
2024-09-18 23:26:27 +02:00
Isaac Marovitz
d79f6b9743
Shitty Clears + Inline Buffer Improvements?
2024-09-18 23:26:26 +02:00
Isaac Marovitz
52978986c7
FragmentOutputDepth Fixes
2024-09-18 23:26:26 +02:00
Isaac Marovitz
1984c5af7e
Depth Sampler Fixes
2024-09-18 23:26:26 +02:00
Isaac Marovitz
8e9f7f4829
Revert position changes
2024-09-18 23:26:25 +02:00
Isaac Marovitz
3044457dca
Nvm it should be in.position
2024-09-18 23:26:25 +02:00
Isaac Marovitz
290b8657d2
More shader fixes
2024-09-18 23:26:25 +02:00
Samuliak
0b2984e4b6
fix: incorrect layer count of texture view
2024-09-18 23:26:24 +02:00
Samuliak
0d7fb3aaef
don't use mask on size query
2024-09-18 23:26:24 +02:00
Samuliak
89c29152d0
declare local memory
2024-09-18 23:26:23 +02:00
Samuliak
c3575ce115
support multiple render targets & fix: incorrect texture name
2024-09-18 23:26:23 +02:00
Samuliak
bde83d8469
put render pipeline cache into a separate file
2024-09-18 23:26:23 +02:00
Samuliak
d77f5a7fb1
implement pipeline cache
2024-09-18 23:26:22 +02:00
Isaac Marovitz
4d24cc6e63
Use return value of BeginRenderPass
2024-09-18 23:26:22 +02:00