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
|
6b882b3ccf
|
Merge branch "feat/fp64-demote-to-fp32" into dev
|
2026-08-12 06:42:23 -04:00 |
|
swung0x48
|
96bd36c50b
|
[Docs] (README): the MOBILEGL_ADVERTISE_FP64 switch
|
2026-08-12 06:41:54 -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
|
532836c058
|
[Feat, Test] (MG_Util): demote every 64-bit float in a shader to 32 bits, with the block layout re-derived
|
2026-08-12 06:11:50 -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
|
21b5fc2d92
|
Merge branch 'feat/cts-draw-parameters' into dev
|
2026-08-12 04:24:54 -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
|
3ed9501be5
|
[Fix, Feat, Test] (MG_Backend/DirectGLES, MG_Test): the draw-parameter builtins never reached the draws that carry them, and glMultiDrawArraysIndirectCount had no backend at all
|
2026-08-12 04:18:08 -04:00 |
|
swung0x48
|
7311251f30
|
[Fix] (MG_Util, MG_Backend/DirectVulkan): GL reads gl_BaseVertex as zero on a non-indexed draw where Vulkan's builtin hands over firstVertex
|
2026-08-12 04:18:07 -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
|
450eb209b6
|
[Fix, Test] (MG_State, MG_Impl): the program interface of a separable program is its own first and last stage, not vertex and fragment
|
2026-08-12 02:38:04 -04:00 |
|
swung0x48
|
8c5c39b3c3
|
[Feat, Test] (MG_Impl): glBindTextures and glBindImageTextures were no-op stubs while GL_ARB_multi_bind was advertised
|
2026-08-12 02:38:03 -04:00 |
|
swung0x48
|
64a0ea397c
|
[Perf] (CI): rewrite one rolling ccache entry per job on the default branch instead of saving one per run
|
2026-08-12 01:56:17 -04:00 |
|
swung0x48
|
205d837942
|
[Fix, Test] (MG_Backend/DirectGLES, MG_Util, CI): keep an explicit LOD constant under a new avoid flag - folding the bias uniform into it kills the ANGLE llvmpipe JIT
|
2026-08-12 01:42:55 -04:00 |
|
swung0x48
|
b5e9339c66
|
[Fix] (MG_Util): the unsupported-buffer-textures log tells a too-old driver apart from one whose entry point failed to resolve
|
2026-08-12 01:24:41 -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
|
97facf777b
|
[Fix] (MG_Backend/DirectVulkan): act on a failed binding remap, bound the storage-block array count, and correct the decline rationale review found describing the reverted mechanism
|
2026-08-12 01:09:56 -04:00 |
|
swung0x48
|
5cfbb716c0
|
Merge remote-tracking branch 'origin/dev' into feat/sampler-array-descriptors
|
2026-08-12 00:58:20 -04:00 |
|
swung0x48
|
64c3411d70
|
[Perf] (CI): restore unchanged trace fixtures from the Actions cache keyed on their Git LFS pointer oid, downloading only on a miss
|
2026-08-12 00:49:47 -04:00 |
|
swung0x48
|
f3a0d9e0a3
|
[Refactor] (CI): move the trace fixture LFS pointer and verification helpers into a shared library
|
2026-08-12 00:49:47 -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
|
8e7cc62c24
|
[Test] (MG_Benchmark): a standing UnorderedMap observatory - the container's own shapes, measured through the alias so a future swap re-runs the same suite
|
2026-08-12 00:40:57 -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
|
e71d715e1a
|
[Fix, Test] (MG_Backend/DirectVulkan, MG_Util, MG_Test): VkProgramObject move dropped stageSpirvDigests - a robin-hood swap would pair one program's modules with another's digests; sanity tests assert key identity, not iteration counts
|
2026-08-12 00:11:56 -04:00 |
|
swung0x48
|
7b946fd527
|
[Fix] (MG_Backend/DirectVulkan, MG_Util): RenderPassEntry needs move assignment - robin-hood probing swaps entries, so mapped types must be swappable
|
2026-08-12 00:11:55 -04:00 |
|
swung0x48
|
8f3ce5f5b7
|
[Fix] (MG_Backend/DirectGLES, MG_State, Docs): CopyImageSubData held a registry reference across a re-entrant sync; retarget container rationales at the new erase contract
|
2026-08-12 00:11:54 -04:00 |
|
swung0x48
|
21ec744ef2
|
[Refactor] (MG_Util, MG_Test): retire FastSTL for ska::flat_hash_map, the table MobileGlues settled on
|
2026-08-12 00:11:54 -04:00 |
|
swung0x48
|
faa7b17da3
|
[Test] (tools/trace_replay): drop the minecraft-26.2-in-world fixture
|
2026-08-12 00:03:03 -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
|
4d1d4f6225
|
[Fix] (DirectGLES): report a rejected shader and a failed link at MGLOG_I - MGLOG_E is compiled out of every INFO build, which is why the retrace artifact could not say which shader the driver refused
|
2026-08-11 23:39:48 -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
|
c4e6ea1f23
|
[Docs] (tools/trace_replay): strip investigation logs from the README - usage and procedures only
|
2026-08-11 23:25:20 -04:00 |
|
swung0x48
|
b4e07ce651
|
[Fix, Test] (MG_State, MG_Backend/DirectGLES, MG_Test): close three holes review found in the composite uniform mirror - unrecorded stage programs, byte-identical writes, and Espryt's baked image units
|
2026-08-11 23:19:22 -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
|
ef4c6dbe0a
|
Merge branch 'feat/cts-420pack-wave' into dev
|
2026-08-11 23:07:45 -04:00 |
|
swung0x48
|
19fc7346c5
|
[Fix] (MG_Backend/DirectVulkan): a re-entrant cache lookup dangled the reference glShaderStorageBlockBinding then wrote through
|
2026-08-11 23:05:21 -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
|
794c10e56c
|
[Fix] (3rdparty/glslang): bump the fork to the invariant-placement and atomic-counter-lowering patches
|
2026-08-11 23:05:20 -04:00 |
|
swung0x48
|
28390667d7
|
[Docs] (tools/trace_replay): sundial-lite's sampler state is identical on both stacks - the crash is a driver defect, not a dangling binding
|
2026-08-11 23:04:25 -04:00 |
|
swung0x48
|
90dd9bec77
|
[Docs] (tools/trace_replay): sundial-lite crashes in llvmpipe's JIT on a NULL per-texture-unit descriptor
|
2026-08-11 22:54:50 -04:00 |
|
swung0x48
|
7994ca31d3
|
[Docs] (tools/trace_replay): sundial-lite has no output-array indexing - separate cause from improved-transparency, and it reproduces locally
|
2026-08-11 22:48:51 -04:00 |
|
swung0x48
|
5705e05156
|
[Docs] (tools/trace_replay): sundial-lite kills the emulator via a host llvmpipe segfault, not OOM
|
2026-08-11 22:38:14 -04:00 |
|
swung0x48
|
ab62f81545
|
[Docs] (tools/trace_replay): the local farm ANGLE is not the CI ANGLE - re-attribute the improved-transparency causes
|
2026-08-11 22:32:14 -04:00 |
|
swung0x48
|
f6cf04d6d7
|
[Docs] (tools/trace_replay): name the two generated-ESSL defects that empty the improved-transparency lane on ANGLE
|
2026-08-11 22:25:57 -04:00 |
|