Commit graph

87 commits

Author SHA1 Message Date
Samuliak
a52095b40a
sync between command buffers 2024-11-10 20:09:24 +01:00
Samuliak
2c9f627f72
remove MetalLogging log type 2024-11-08 08:33:39 +01:00
Samuliak
c46c8214f5
refactor command buffers 2024-11-05 17:57:20 +01:00
Samuliak
552c4901b9
implement occlusion query flush 2024-11-05 17:42:02 +01:00
Samuliak
ea0a30b564
handle special state 8 and 5 2024-11-05 17:13:34 +01:00
Samuliak
e00d244e0d
remove unused code 2024-11-03 16:45:13 +01:00
Samuliak
ab41de4f9f
use host memory instead of buffer cache when possible 2024-11-03 11:53:16 +01:00
Samuliak
e7ac19979d
make occlusion queries accumulate with draws 2024-10-30 09:20:50 +01:00
Samuliak
00256e5589
only set blend color when changed 2024-10-29 17:43:29 +01:00
Samuliak
cd21d957b3
refactor fbos 2024-10-15 17:15:46 +02:00
Samuliak
f2096deddd remove vertex restriding code 2024-10-01 18:11:05 +02:00
Samuliak
a3bfde80b0 remove old present pipelines 2024-09-30 19:59:30 +02:00
Samuliak
5d01c77efc rename hybrid pipeline to void vertex pipeline 2024-09-30 19:43:53 +02:00
Samuliak
28e553eb1a cache output shaders 2024-09-30 16:28:07 +02:00
Samuliak
aa81070e87 refactor pixel formats 2024-09-16 19:44:49 +02:00
Samuliak
358567ad4a make a workaround for streamout with no fbo 2024-09-14 22:06:30 +02:00
Samuliak
008c11ce71 allocate special buffers only when needed 2024-09-14 17:12:02 +02:00
Samuliak
e89efed743 request soon commit instead of committing directly 2024-09-13 16:12:47 +02:00
Samuliak
934b1f8b55 handle occlusion queries with no draws 2024-09-13 15:28:51 +02:00
Samuliak
fd16488e4c improve command buffer sync 2024-09-13 11:19:56 +02:00
Samuliak
eb7c10e89f implement occlusion queries 2024-09-13 10:41:03 +02:00
Samuliak
4cce3699f3 put query object into a separate file 2024-09-12 08:05:27 +02:00
Samuliak
9c29acc635 synchronize buffer copying correctly 2024-08-30 15:27:55 +02:00
Samuliak
2f822d07c7 support game pad view in a separate window 2024-08-30 08:57:50 +02:00
Samuliak
1cfb841b5f do buffer cache uploading on the GPU 2024-08-29 19:06:01 +02:00
Samuliak
a4ff855585 do buffer copying in a void vertex function 2024-08-29 15:32:32 +02:00
Samuliak
35740c5c8e always do texture copies on gpu 2024-08-28 15:26:42 +02:00
Samuliak
be76dadb90 do surface copy properly 2024-08-28 13:43:06 +02:00
Samuliak
b7a1adec91 clip mode 2024-08-27 14:39:52 +02:00
Samuliak
cd8b74ba32 fix: buffer allocator leaks 2024-08-26 18:31:22 +02:00
Samo Z
b7f88d093a implement buffer locking system 2024-08-26 12:22:33 +02:00
Samuliak
96d6168c50 add: additional debug info 2024-08-25 10:15:10 +02:00
Samuliak
b105a383aa add: basic debug overlay 2024-08-24 17:48:02 +02:00
Samuliak
c4a26d4c70 report total vram correctly 2024-08-24 17:06:50 +02:00
Samuliak
7499c3fbe7 add: ImGui support 2024-08-24 17:03:49 +02:00
Samuliak
d4a1074425 rework the present system 2024-08-23 10:52:20 +02:00
Samuliak
6bb191212b simplify texture readback 2024-08-23 09:41:00 +02:00
Samuliak
28aef858f2 fix: texture readback 2024-08-23 09:00:00 +02:00
Samuliak
67a64c9fe9 rework the binding system 2024-08-22 13:58:50 +02:00
Samuliak
3d0055af6a end render pass if attachment is being read 2024-08-21 15:53:40 +02:00
Samuliak
97f441ecf1 draw with geometry shaders 2024-08-20 20:14:02 +02:00
Samuliak
ca256eb764 check for pixel format support 2024-08-19 16:40:36 +02:00
Samuliak
69a36246fb do GPU texture loading on non-apple GPUs 2024-08-19 16:14:06 +02:00
Samuliak
e2f66b8aa3 fix: streamout 2024-08-19 13:07:30 +02:00
Samuliak
485a652c85 use managed storage mode when dedicated memory 2024-08-18 14:37:39 +02:00
Samuliak
265785772a rework buffer allocator 2024-08-18 11:13:49 +02:00
Samuliak
83a08b2247 fix: some Metal validation errors 2024-08-17 17:51:37 +02:00
Samuliak
0d0152d6e0 fix: present 2024-08-16 15:33:49 +02:00
Samuliak
d79d7fea63 implement sampler cache 2024-08-15 11:44:06 +02:00
Samuliak
9982ac7acb remove more unnecessary rebinds 2024-08-15 10:58:33 +02:00