swung0x48 and Claude Fable 5
b8ffd25148
[WIP] Mesa-style buffer overhaul: resource abstraction + immediate transfer ops
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-08 14:47:51 +08:00
swung0x48
2ed96e9678
[Fix] (MG_Backend/DirectVulkan): pad short uniform buffer ranges
2026-07-08 10:50:14 +08:00
swung0x48
fbbf3c4beb
[Chore] (trace-replay): document bliss ANGLE workaround
2026-07-08 07:14:45 +08:00
swung0x48
b88066b73b
[Fix] (trace-replay): accept Android SDK licenses explicitly
2026-07-08 01:56:45 +08:00
swung0x48
83d475eb02
[Fix] (trace-replay): stabilize ANGLE retrace cases
2026-07-08 01:07:20 +08:00
swung0x48
292576d2a1
[Fix] (MG_Backend/DirectGLES): avoid ANGLE llvmpipe mipmap hangs
2026-07-07 21:19:50 +08:00
swung0x48
0c8af978db
[Chore] (MG_Backend): lower format capability logs
2026-07-07 09:58:30 +08:00
swung0x48
23671f1a99
[Chore] (trace-replay): cache Android retrace AVD
2026-07-07 06:30:15 +08:00
swung0x48
94e882762e
[Chore] (trace-replay): reduce retrace CI swap
2026-07-07 06:28:15 +08:00
swung0x48
672538f4f1
[Chore] (trace-replay): add swap to retrace CI
2026-07-07 05:21:50 +08:00
swung0x48
a9763639ed
[Chore] (trace-replay): add Derivative Android ANGLE golden
2026-07-06 21:12:41 +08:00
swung0x48
616e694bdd
[Fix] (MG_Backend/DirectGLES): flush ANGLE memory barriers
2026-07-06 12:39:51 +08:00
swung0x48
0bee379b61
[Fix] (MG_Util/ShaderTranspiler): keep decomposed workgroup types before globals
2026-07-06 03:58:26 +08:00
swung0x48
d35e452368
[Fix] (MG_Util/ShaderTranspiler): rewrite workgroup vec3 composite loads
2026-07-06 01:25:44 +08:00
swung0x48
86f322e252
[Fix] (MG_Util/ShaderTranspiler): keep workgroup vec3 pass no-op clean
2026-07-06 00:25:49 +08:00
swung0x48
b40def47eb
[Refactor] (MG_Util/ShaderTranspiler): replace Photon shared vec3 regex hack with SPIR-V pass
...
Replace the application-specific PackPhotonSharedVec3Memory GLSL regex
patch with a general DecomposeWorkgroupVec3Pass SPIR-V optimization pass.
The new pass decomposes vec3/ivec3/uvec3/bvec3 Workgroup (shared) memory
variables into scalar arrays (e.g. shared vec3 arr[N][M] -> shared float
arr[N][M][3]), rewriting whole-vector loads/stores into per-component
scalar loads/stores. Component-level accesses (e.g. arr[i].x) are
unchanged since a trailing component index into a float[3] yields the
same scalar pointer as it did for a vec3.
Unlike the regex hack, the pass is application-agnostic: it does not
match on variable names, array dimensions, or shader pack identity, and
runs at the SPIR-V level before SPIRV-Cross decompilation.
Registered in SanitizeAndOptimizeBinary after AggressiveDCE so dead
workgroup accesses are already eliminated. Asserts on unsupported
OpAtomic*/OpCopyMemory targeting vec3 workgroup pointers.
Adds ProgramUtilTest.DecomposeWorkgroupVec3InSpirvPass covering array
declaration, +=, whole load/store, component access, and row-copy loop.
2026-07-05 23:48:27 +08:00
swung0x48
93cf3559e1
[Fix] (MG_Backend/DirectGLES): fix Photon image replay
2026-07-05 18:41:32 +08:00
swung0x48
8f947253ad
[Chore] (trace-replay): add Minecraft 1.17 menu fixture
2026-07-05 15:18:54 +08:00
swung0x48
8cce59302b
[Fix] (MG_Util/ShaderTranspiler): keep GL shaders off Vulkan macro path
2026-07-05 09:15:47 +08:00
swung0x48
74ad6d76eb
[Feat] (trace-replay): add macOS window retrace harness
2026-07-04 23:35:27 +08:00
swung0x48
95f2f5bab9
[Fix] (MG_Impl/Getter): don't ask system GL for context flags
2026-07-04 21:14:04 +08:00
swung0x48
e5ef9b2ace
[Fix] (trace-replay): avoid Android startup race
2026-07-04 08:55:43 +08:00
swung0x48
0a138276f8
[Fix] (trace-replay): align Android retrace harness
2026-07-04 08:21:46 +08:00
swung0x48
1549598e52
[Fix] (trace-replay): request compatibility EGL profile
2026-07-04 08:20:39 +08:00
swung0x48
1902518cd6
[Fix] (trace-replay): enable Vulkan fallback in APK CI
2026-07-04 07:51:49 +08:00
swung0x48
bcb8a9b57b
[Chore] (trace-replay): skip 26.2 cases in CI
2026-07-03 20:42:46 +08:00
swung0x48
bdb276cd68
Revert "[Fix] (MG_Backend/DirectVulkan): separate EGL surface lifecycle"
...
This reverts commit 45f1a13cc3 .
2026-07-03 15:16:46 +08:00
swung0x48
79aa381722
[Fix] (MG_Backend/DirectVulkan, trace-replay): gate R11G11B10F fallback
2026-07-03 13:00:01 +08:00
swung0x48
45f1a13cc3
[Fix] (MG_Backend/DirectVulkan): separate EGL surface lifecycle
2026-07-03 12:20:40 +08:00
swung0x48
afdbf0a194
[Fix] (MG_Backend/DirectVulkan): support layered texture framebuffers
2026-07-03 12:05:20 +08:00
swung0x48
940ab5fd8e
[Fix] (MG_State/GLState, MG_Backend): track layered framebuffer textures
2026-07-03 10:38:51 +08:00
swung0x48
6418561d3c
[Fix] (MG_State/EGLState, MG_Backend): defer current EGL surface destruction
2026-07-03 10:14:26 +08:00
swung0x48
ce2b5a793f
[Fix] (MG_Backend): support GLES depth-stencil readback
2026-07-03 10:02:49 +08:00
swung0x48
6ecefaec75
[Fix] (MG_Backend): track EGL backend surfaces
2026-07-03 09:15:26 +08:00
swung0x48
bdf29fc4d5
[Fix] (MG_Impl/GLImpl): validate DSA texture parameters
2026-07-03 09:05:52 +08:00
swung0x48
51d9fa91ed
[Fix] (MG_Impl/GLImpl, MG_Backend): fix piglit texture and buffer cases
2026-07-03 08:51:22 +08:00
swung0x48
5cdc6c902e
[Fix] (MG_Impl/EGLImpl, MG_Backend): track EGL surface lifecycle
2026-07-03 07:45:40 +08:00
swung0x48
03696f8a1a
[Fix] (MG_Impl/GLImpl, MG_State, MG_Backend): validate image uniform state
2026-07-03 02:03:23 +08:00
swung0x48
7c26ff1b81
[Fix] (MG_Impl/GLImpl): report fragment image uniform limits
2026-07-03 01:32:59 +08:00
swung0x48
d472d8c32e
[Fix] (MG_State/EGLState, MG_Impl/GLImpl): report OpenGL context flags
2026-07-03 01:10:37 +08:00
swung0x48
75e5fe1dd3
[Fix] (MG_State/GLState): allow combined texture unit bindings
2026-07-03 00:19:03 +08:00
swung0x48
fb1da4bbd0
[Fix] (MG_Impl/GLImpl, MG_Backend): avoid image uniform piglit traps [skip ci]
2026-07-03 00:02:11 +08:00
swung0x48
ac43c0224c
[Fix] (MG_Impl/GLImpl, MG_State/GLState): fix Vulkan depth-only fragment outputs
2026-07-02 23:46:14 +08:00
swung0x48
011b2ad6f8
Revert "[Fix] (MG_Impl/GLImpl): reject default VAO draws [skip ci]"
...
This reverts commit 632a4f0859 .
2026-07-02 22:50:48 +08:00
swung0x48
e83e6ed76e
[Fix] (MG_State/GLState, MG_Impl/GLImpl): track immutable texture storage [skip ci]
2026-07-02 22:49:54 +08:00
swung0x48
edec6e4e62
[Fix] (MG_State/GLState, MG_Util/ShaderTranspiler): validate compute local size [skip ci]
2026-07-02 22:18:56 +08:00
swung0x48
cd96db7829
[Chore] (trace-replay): gate retrace jobs on prerequisites
2026-07-02 21:26:38 +08:00
swung0x48
ca38d8fe86
[Chore] (trace-replay): fetch fixture from mirror
2026-07-02 21:12:56 +08:00
swung0x48
f10f7df389
[Chore] (trace-replay): use manifest file to organize retrace fixtures
2026-07-02 20:51:14 +08:00
swung0x48
1cd75f7f54
[Fix] (MG_Impl/GLImpl): validate named renderbuffer storage [skip ci]
2026-07-02 20:03:16 +08:00
swung0x48
1c84422f8e
[Fix] (MG_Impl/GLImpl, MG_Backend/DirectVulkan): allow color renderbuffer framebuffers [skip ci]
2026-07-02 19:59:48 +08:00
swung0x48
ba330cd70a
[Fix] (MG_Impl/GLImpl): validate read framebuffer buffers [skip ci]
2026-07-02 19:33:10 +08:00
swung0x48
4439162fea
[Fix] (MG_Impl/GLImpl): refresh generated mipmap storage [skip ci]
2026-07-02 19:22:39 +08:00
swung0x48
91120d86ba
[Fix] (MG_Backend/DirectVulkan): ignore clear buffer without target [skip ci]
2026-07-02 19:16:14 +08:00
swung0x48
71f5ba9601
[Fix] (MG_Impl/GLImpl): handle program resource names [skip ci]
2026-07-02 19:10:50 +08:00
swung0x48
2e14b44349
[Fix] (MG_Impl/GLImpl): validate compute program queries [skip ci]
2026-07-02 19:04:23 +08:00
swung0x48
ac66ea7790
[Fix] (MG_Impl/GLImpl): validate program interface queries [skip ci]
2026-07-02 18:56:30 +08:00
swung0x48
632a4f0859
[Fix] (MG_Impl/GLImpl): reject default VAO draws [skip ci]
2026-07-02 18:51:11 +08:00
swung0x48
e2e4b6e579
[Fix] (MG_Impl/GLImpl): attach depth-stencil renderbuffers [skip ci]
2026-07-02 18:41:08 +08:00
swung0x48
37255523b1
[Fix] (MG_Impl/GLImpl): report incomplete framebuffer attachments [skip ci]
2026-07-02 18:29:26 +08:00
swung0x48
c3a830e9e6
[Fix] (MG_Impl/GLImpl): validate DSA texture unit binding [skip ci]
2026-07-02 18:05:53 +08:00
swung0x48
8266376838
[Fix] (MG_Impl/GLImpl, MG_State/GLState, MG_Backend): fix DSA renderbuffer defaults [skip ci]
2026-07-02 17:55:15 +08:00
swung0x48
d8e3c29744
[Fix] (MG_Impl/GLImpl): ignore legacy texture enable caps [skip ci]
2026-07-02 17:33:00 +08:00
swung0x48
ef3273674b
[Fix] (MG_Impl/GLImpl): validate create texture targets [skip ci]
2026-07-02 17:15:19 +08:00
swung0x48
633a25b456
[Fix] (MG_Impl/GLImpl, MG_State/GLState): validate frag data link locations [skip ci]
2026-07-02 16:47:13 +08:00
swung0x48
b9de562491
[Fix] (MG_Impl/GLImpl, MG_State/GLState): fix frag data location queries [skip ci]
2026-07-02 16:20:43 +08:00
swung0x48
76f5a23b7f
[Fix] (replay-trace, MG_Impl/GLImpl): fix OpenRA Android retrace
2026-07-02 16:08:43 +08:00
swung0x48
4a3a226f27
[Fix] (replay-trace) document frame-based fixture trimming
2026-07-02 14:51:41 +08:00
swung0x48
ced7f28898
[Fix] (MG_Impl/GLImpl, MG_State/GLState): reject unlinked empty programs [skip ci]
2026-07-02 14:37:29 +08:00
swung0x48
bc2db26e07
[Fix] (MG_Backend/DirectVulkan): validate shader storage block bindings [skip ci]
2026-07-02 14:25:40 +08:00
swung0x48
6649241193
[Fix] (MG_Impl/GLImpl): report compute shader minimum limits [skip ci]
2026-07-02 14:17:16 +08:00
swung0x48
fea8e615f9
[Fix] (MG_Impl/GLImpl): fix indexed shader storage buffer queries [skip ci]
2026-07-02 13:44:11 +08:00
swung0x48
57eb9bd415
[Fix] (MG_Impl/GLImpl): normalize integer texture border colors [skip ci]
2026-07-02 13:33:28 +08:00
swung0x48
0cd236414e
[Fix] (MG_Impl/GLImpl, MG_State/GLState): fix texture integer border color queries [skip ci]
2026-07-02 13:17:08 +08:00
swung0x48
e4957e089a
[Fix] (MG_State/GLState): ignore inactive frag data bindings [skip ci]
2026-07-02 12:51:51 +08:00
swung0x48
3c643d943a
[Fix] (MG_Impl/GLImpl): fix more OpenGL 3.x piglit cases
2026-07-02 12:36:58 +08:00
swung0x48
9b06475811
[Fix] (replay-trace) refresh Minecraft 26.2 main menu fixture
2026-07-02 11:02:46 +08:00
swung0x48
fabae2465b
[Fix] (MG_Impl/GLImpl, MG_Backend): fix OpenGL 3.1 piglit cases
2026-07-02 10:34:17 +08:00
swung0x48
233277d94b
[Fix] (replay-trace) add Minecraft 26.2 vanilla fixtures
2026-07-02 09:07:20 +08:00
swung0x48
59976a7f7b
[Feat] (MG_Impl/EGLImpl): expose surfaceless platform extensions
2026-07-02 08:09:56 +08:00
swung0x48
4613167abb
[Fix] (replay-trace) hide removed mod cases in reports
2026-07-01 17:01:03 +08:00
swung0x48
f5f63aa044
[Feat] (replay-trace): add NeoForge earlydisplay fixture
2026-07-01 15:45:37 +08:00
swung0x48
6495c6dad9
[Fix] (replay-trace) fetch CI mod trace fixtures
2026-07-01 13:32:52 +08:00
swung0x48
2d1b8cdd30
[Fix] (replay-trace) run normal-world mod traces in CI
2026-07-01 13:07:35 +08:00
swung0x48
d2cbd2f596
[Fix] (replay-trace) recapture normal-world Fabric mod fixtures
2026-07-01 12:49:56 +08:00
swung0x48
6c7c5a1bc7
[Fix] (MG_Util/ShaderTranspiler): rename "sampler" in parameter name to avoid driver compiler issues
2026-06-30 22:31:49 +08:00
swung0x48
5b116696f0
[Fix] (MG_Impl/EGLImpl, MG_Backend): handle EGL current handoff for NeoForge earlydisplay
...
Treat valid-display no-surface eglMakeCurrent calls as EGL release requests, keep EGLState and backend current records consistent across threads, and rebind the native DirectGLES EGL context during attach/release.
Add EGLState coverage for cross-thread owner transfer and same-thread release/reattach behavior.
2026-06-30 16:44:38 +08:00
swung0x48
2f1949e093
[Feat] (iOS): support MobileGL builds and Metal surfaces
2026-06-30 07:25:20 +08:00
swung0x48
cca4df17d9
[Fix] (MG_Impl): preserve macOS surface during resize
2026-06-29 21:07:12 +08:00
swung0x48
ef06d90b6b
[Fix] (MG_Backend/DirectGLES): record GenerateMipmap errors
2026-06-29 16:51:16 +08:00
swung0x48
e7e6888768
[Fix] (MG_Util/PixelStoreProcessor, MG_Backend/DirectVulkan): normalize packed RGBA uploads
2026-06-29 16:02:27 +08:00
swung0x48
a762346a3b
[Fix] (TraceReplay): support local Android retrace reports
2026-06-29 13:53:30 +08:00
swung0x48
d78892cad0
[Fix] (replay-trace): enable GLES mod retraces and crop minimap
2026-06-29 10:17:30 +08:00
swung0x48
3fc6357f28
[Fix] (MG_Impl): handle Retina drawable resize on macOS
2026-06-28 23:22:33 +08:00
swung0x48
65ff056b2e
[Docs] add macOS build and use instructions
2026-06-28 21:59:18 +08:00
swung0x48
f121aeb57f
[Feat] (MG_Impl): add macOS CGL and NSOpenGL frontends
2026-06-28 20:33:14 +08:00
swung0x48
d61a0b6904
[Fix] (Tools/TraceReplay): show window surface after first present
2026-06-28 15:00:00 +08:00
swung0x48
0ef9c76224
[Feat] (MG_Backend/DirectVulkan): support macOS Metal surfaces
2026-06-28 14:19:51 +08:00
swung0x48
46f3192c67
[CI] add normal-world per-mod retrace fixtures
2026-06-28 13:00:12 +08:00
swung0x48
b2aafc3f95
[CI] wrap retrace summary status counts
2026-06-28 11:36:50 +08:00