 swung0x48andClaude Fable 5
|
12c94111b5
|
[Fix, Test] (DirectVulkan, SelfTest, MG_IntegrationTest, TraceReplay): snapshot sampler/image feedback and add Program 203 diagnostics
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-18 03:04:09 -04:00 |
|
swung0x48
|
42ad62b54c
|
[Fix, Test] (MG_Util, MG_IntegrationTest): advertise the GL 4.3 VIEWPORT_BOUNDS_RANGE floor on a GLES driver that has no such query, instead of a range admitting no origin
|
2026-08-13 04:44:23 -04:00 |
|
swung0x48
|
f41403e227
|
[Feat, Test] (MG_Backend/DirectVulkan, MG_Test, MG_IntegrationTest): rasterize the viewport gl_ViewportIndex selects, instead of collapsing all sixteen onto viewport 0
|
2026-08-13 04:44:23 -04:00 |
|
swung0x48
|
92d8f7269b
|
[Fix] (MG_IntegrationTest): drop the executable bit a copied-in scenario file carried
|
2026-08-13 04:29:23 -04:00 |
|
swung0x48
|
b8233f9c4e
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): the barrier before every attachment transfer only ever moved layer 0, so a copy off a non-zero layer read a layout nothing had transitioned
|
2026-08-13 04:01:20 -04:00 |
|
swung0x48
|
b62d1f2078
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): map a layered CopyImageSubData onto the axis each endpoint keeps its slices on, instead of copying slice 0 and calling it done
|
2026-08-13 02:49:57 -04:00 |
|
swung0x48
|
f37b511fca
|
[Fix, Test] (MG_Impl/GLImpl, MG_Backend/DirectVulkan, MG_Backend/DirectGLES, MG_Test, MG_IntegrationTest): a glCopyImageSubData to a mipmap level the texture never had is INVALID_VALUE, not a subresource handed to the driver
|
2026-08-13 02:28:55 -04:00 |
|
swung0x48
|
b7557d6615
|
[Feat, Fix, Test] (MG_Util, MG_Backend/DirectGLES, MG_IntegrationTest): bake the bound image format into the ESSL a format-less image declaration needs
|
2026-08-12 18:56:31 -04:00 |
|
swung0x48
|
49cb1be0fd
|
[Fix, Test] (MG_Backend/DirectGLES, MG_IntegrationTest): a shader writing a buffer texture through an image unit left the CPU shadow stale, so every map and readback after it saw the old bytes
|
2026-08-12 17:50:31 -04:00 |
|
swung0x48
|
a51c68bb2c
|
[Fix, Test] (MG_Util, MG_IntegrationTest): a 64-bit float constant was read as 32 bits, so every comparison against a round double became an epsilon test against zero
|
2026-08-12 17:50:25 -04:00 |
|
swung0x48
|
44805bfa07
|
[Fix, Test] (MG_Util, MG_Backend/DirectVulkan, MG_IntegrationTest): adversarial review - the rewritten 1D-array image collided with a module's own 2D-array one and left an invalid duplicate type; pin the component order, keep the subject kinds in a truncated matrix
|
2026-08-12 16:49:59 -04:00 |
|
swung0x48
|
257fcbfd0b
|
[Fix, Test] (MG_Util, MG_Backend/DirectVulkan, MG_IntegrationTest): review round - one module parse for the shaders with no 1D-array image, per-kind values the combined case can name, and the invariants two shared buffers rest on
|
2026-08-12 16:43:29 -04:00 |
|
swung0x48
|
2b46a3db96
|
[Fix, Test] (MG_Util, MG_Backend/DirectGLES, MG_Backend/DirectVulkan): the two image target kinds a compute dispatch could not read - 1D-array on ES, imageBuffer on Vulkan
|
2026-08-12 16:11:10 -04:00 |
|
swung0x48
|
a6e029734b
|
[Test, Doc] (MG_IntegrationTest, MG_Backend/DirectGLES): review wave - stop the skip paths leaking their GL objects, normalise the clip enables a neighbouring scenario leaves behind, and state what the software lanes cannot falsify
|
2026-08-12 13:57:32 -04:00 |
|
swung0x48
|
e7d6bfddac
|
[Fix, Test] (MG_Backend/DirectGLES, MG_State, MG_Util): publish the real default framebuffer depth/stencil format, forward the clip distance enables, and stop trusting a stale format probe for non-2D depth attachments
|
2026-08-12 13:34:39 -04:00 |
|
Swung0x48
|
ed6578954e
|
[Feat, Fix, Test] (MG_Backend/DirectGLES, MG_IntegrationTest): emulate ES depth/stencil readback by shader sampling, and stop the replicate blit leaking its borrowed texture unit
|
2026-08-12 11:38:34 -04:00 |
|
swung0x48
|
1b05a84928
|
[Fix, Test] (MG_State, MG_Backend, MG_Impl, MG_Test): review wave - hand the mapping back instead of renewing it, retire an immutable ES store on respecify, and tag glTexStorage2D levels too
|
2026-08-12 10:32:39 -04:00 |
|
swung0x48
|
442e7eec1c
|
[Docs] (MG_IntegrationTest): the capture-buffer note described a bug that is fixed and pinned elsewhere now
|
2026-08-12 09:22:17 -04:00 |
|
swung0x48
|
bb122ebd4f
|
[Test] (MG_IntegrationTest): the DSA enable-disable-attributes case, reassembled where it can be stepped through
|
2026-08-12 08:56:13 -04:00 |
|
swung0x48
|
0e31c1481b
|
[Fix, Test] (MG_State, MG_Backend/DirectVulkan, MG_Backend/DirectGLES, MG_IntegrationTest): a respecified capture buffer left the transform feedback writing one store and the readback reading another
|
2026-08-12 08:42:45 -04:00 |
|
swung0x48
|
1ebf191f94
|
[Fix, Test] (MG_Backend/DirectGLES, MG_Util): baseInstance reached the shader but never the vertex fetch
|
2026-08-12 08:12:27 -04:00 |
|
swung0x48
|
ea4819a21d
|
[Fix, Test] (MG_State, MG_IntegrationTest): an array vertex input occupies one location per element, not one location in total
|
2026-08-12 07:36:12 -04:00 |
|
swung0x48
|
46fbd837b3
|
[Fix, Test] (MG_State, MG_Impl, MG_IntegrationTest): a double uniform initializer no longer reads zero
|
2026-08-12 06:41:54 -04:00 |
|
swung0x48
|
796a57a115
|
[Feat, Test] (MG_Backend, MG_Util, MG_Impl): report the fp64 tier at startup, decline 64-bit vertex formats everywhere, advertise GL_ARB_gpu_shader_fp64 only on request
|
2026-08-12 06:25:35 -04:00 |
|
swung0x48
|
62a2dae5ba
|
[Fix, Test] (MG_Impl, MG_State, MG_IntegrationTest): glUniform*d stores what the demoted shader reads
|
2026-08-12 06:20:11 -04:00 |
|
swung0x48
|
2fced2241b
|
[Fix, Test] (MG_Util, MG_State, MG_Backend): the GL 4.3 vertex binding model - array vertex inputs, zero binding strides, instance divisors, and formats ES refuses
|
2026-08-12 05:36:00 -04:00 |
|
swung0x48
|
1f753ab5fa
|
[Test] (MG_IntegrationTest): the draw-parameter builtins, read back out of the shader the draw produced
|
2026-08-12 04:18:08 -04:00 |
|
swung0x48
|
7625cf450d
|
[Fix, Test] (MG_Impl, MG_IntegrationTest): a block count may not exceed its binding points, and an atomic-counter buffer size must survive division by them
|
2026-08-12 02:38:04 -04:00 |
|
swung0x48
|
e310e3e9ff
|
[Fix, Test] (MG_Util, MG_Backend/DirectGLES, MG_Test): resolve buffer textures through the entry point the tier ships, not the ES 3.2 core name; bound the OES retarget to an exact extension name
|
2026-08-12 01:24:40 -04:00 |
|
swung0x48
|
a0bf4a83bc
|
[Fix, Test] (MG_Util, MG_Backend/DirectGLES, MG_Test, MG_IntegrationTest): detect buffer-texture support, emit the directive the driver advertises, and name the capability when it is missing
|
2026-08-12 01:24:40 -04:00 |
|
swung0x48
|
068786e812
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): a declined descriptor must refuse the draw, not just leave the layout - a multi-dimensional sampler array otherwise faulted in the shader
|
2026-08-12 00:45:36 -04:00 |
|
swung0x48
|
d2a36d65a3
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): a sampler uniform array is one binding with many descriptors too - Magma wrote only element zero, and declines the multi-dimensional shape loudly
|
2026-08-12 00:31:37 -04:00 |
|
swung0x48
|
a020de76e3
|
Merge remote-tracking branch 'origin/dev' into feat/sampler-array-descriptors
|
2026-08-12 00:18:51 -04:00 |
|
swung0x48
|
574634adfa
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): let the binding remap accept the descriptor arrays that now have per-element paths, and reserve image-info scratch for them
|
2026-08-12 00:14:18 -04:00 |
|
swung0x48
|
f6849fc0b3
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_IntegrationTest): an image uniform array is one binding with many descriptors, not one - Magma wrote only element zero and left the rest undefined
|
2026-08-11 23:49:31 -04:00 |
|
swung0x48
|
cef81df73f
|
[Fix, Test] (ShaderTranspiler, DirectGLES): fold or lower dynamically indexed fragment outputs before ESSL emission - GLSL ES requires constant integral indices, so the OIT coefficient shader linked nothing on ANGLE and every translucent draw was a silent no-op
|
2026-08-11 23:39:03 -04:00 |
|
swung0x48
|
ff324057ad
|
[Fix, Perf, Test] (MG_State, MG_Impl/GLImpl, MG_Test, MG_IntegrationTest): a pipeline composite mirrors only the uniforms a stage was written to, and survives a sampler or block rebinding
|
2026-08-11 23:11:13 -04:00 |
|
swung0x48
|
bcb0e894ef
|
[Fix, Test] (MG_State, MG_Backend/DirectGLES, MG_Util, MG_IntegrationTest, MG_Test): array layout(binding=N) elements bind consecutively, a read+write image reaches ESSL legally, compute local_size comes from the linked intermediate, and glShaderStorageBlockBinding is baked into the generated source
|
2026-08-11 23:05:21 -04:00 |
|
swung0x48
|
5267243404
|
[Test] (MG_IntegrationTest): pin declared uniform initializers end to end, on both backends
|
2026-08-11 20:56:07 -04:00 |
|
swung0x48
|
05bef7118b
|
[Fix, Test] (MG_State): a pipeline draw uses the block bindings its stage programs were given, not the ones their shaders declared
|
2026-08-11 20:23:06 -04:00 |
|
swung0x48
|
94e75fef79
|
[Fix, Test] (MG_State, MG_Impl): glIsProgramPipeline answers for the first bind, not for the materialization every pipeline command now does
|
2026-08-11 20:10:18 -04:00 |
|
swung0x48
|
2ce0595fab
|
[Fix, Test] (MG_State, MG_Impl, MG_Backend): a program pipeline's compute stage is dispatched on its own, and the graphics composite draws its stage programs' uniform values
|
2026-08-11 20:10:17 -04:00 |
|
swung0x48
|
ba9af18033
|
[Test] (MG_IntegrationTest): park the two program-pipeline cases whose mechanisms are still open
|
2026-08-11 20:10:17 -04:00 |
|
swung0x48
|
6cf5a7744e
|
[Test] (MG_IntegrationTest): separable programs drawn through a program pipeline object
|
2026-08-11 20:10:16 -04:00 |
|
swung0x48
|
cc34d34706
|
[Fix, Test] (MG_Backend/DirectGLES): hand every compiled shader's lifetime to its program - glDeleteShader was never called, so each program build leaked its driver shader objects
|
2026-08-11 11:11:28 -04:00 |
|
swung0x48
|
757b31592d
|
[Fix, Test] (MG_Backend/DirectVulkan): a multisample resolve that must also change orientation resolves through a pooled scratch image, then blits
|
2026-08-11 10:49:58 -04:00 |
|
swung0x48
|
dbae4eda10
|
[Fix, Test] (MG_Backend/DirectVulkan): depth blits to or from the default framebuffer convert their rect out of GL's bottom-origin space, like the colour blit does
|
2026-08-11 10:24:59 -04:00 |
|
swung0x48
|
fa5ff5d168
|
[Test] (MG_IntegrationTest): every texture access routine must read the same texel out of a usampler2DArray
|
2026-08-11 10:21:38 -04:00 |
|
swung0x48
|
7ba012adf9
|
[Test] (MG_IntegrationTest): SSBO runtime-array length across preambles, block arrays and bound ranges
|
2026-08-11 10:11:23 -04:00 |
|
swung0x48
|
b1fdffd767
|
[Fix, Test] (MG_Backend/DirectVulkan): read the default framebuffer's depth and stencil back instead of leaving the caller's buffer untouched
|
2026-08-11 10:11:22 -04:00 |
|