From bb585cd5f2e97d957b66629083b0b366b9c1fb88 Mon Sep 17 00:00:00 2001 From: seedds Date: Fri, 23 Oct 2026 16:29:24 +0800 Subject: [PATCH] Add compute-backed geometry shader replay Capture vertex outputs, run geometry shaders as compute, and rasterize compacted primitives through a general NVN pipeline. Rebuild the pinned translator and AI shader chain, add geometry regression coverage, and document supported behavior and remaining limits. --- dm/games/010089B00D09C000/c1_full.tsv | 2 +- dm/games/010089B00D09C000/cb_extent.tsv | 5 +- dm/games/010089B00D09C000/dmsh_chain.h | 2 +- dm/gfx/nvn/hle_nvn.c | 2 +- dm/gfx/nvn/nvn_geometry.h | 88 +++++++++ dm/gfx/nvn/nvn_geometry.inc | 158 +++++++++++++++ dm/gfx/nvn/nvn_mtl.m | 70 +++++-- dm/gfx/nvn/nvn_obj.h | 3 +- dm/gfx/nvn/nvn_refl.h | 2 +- dm/gfx/nvn/nvn_refl.m | 1 + dm/gfx/tests/.gitignore | 2 + dm/gfx/tests/Makefile | 5 +- dm/gfx/tests/t_geometry.m | 180 ++++++++++++++++++ dm/gfx/tools/dmsh_build.py | 68 ++++++- dm/gfx/tools/dmsh_chain.lock | 8 +- dm/gfx/tools/dmsh_chain.py | 2 +- dm/gfx/tools/dmsh_geometry.py | 119 ++++++++++++ dm/gfx/tools/dmsh_xlate/Program.cs | 19 +- .../tools/dmsh_xlate_bin/Ryujinx.Common.dll | Bin 375808 -> 375808 bytes .../Ryujinx.Graphics.Shader.dll | Bin 644608 -> 646144 bytes dm/gfx/tools/dmsh_xlate_bin/Spv.Generator.dll | Bin 137216 -> 137216 bytes dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate | Bin 223016 -> 124712 bytes dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate.dll | Bin 41472 -> 43008 bytes dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate.pdb | Bin 15192 -> 15272 bytes .../Ryujinx.Graphics.Shader/IGpuAccessor.cs | 3 + .../Translation/EmitterContext.cs | 18 +- .../Translation/EmitterContextInsts.cs | 20 ++ .../Translation/ResourceManager.cs | 3 + .../Translation/ResourceReservations.cs | 17 +- .../Translation/ShaderDefinitions.cs | 10 +- .../Transforms/GeometryToCompute.cs | 12 +- .../Translation/TranslatorContext.cs | 2 +- docs/development.md | 2 +- docs/geometry-metal-research.md | 94 +++++++++ 34 files changed, 865 insertions(+), 52 deletions(-) create mode 100644 dm/gfx/nvn/nvn_geometry.h create mode 100644 dm/gfx/nvn/nvn_geometry.inc create mode 100644 dm/gfx/tests/t_geometry.m create mode 100644 dm/gfx/tools/dmsh_geometry.py create mode 100644 docs/geometry-metal-research.md diff --git a/dm/games/010089B00D09C000/c1_full.tsv b/dm/games/010089B00D09C000/c1_full.tsv index a785246..80758f1 100644 --- a/dm/games/010089B00D09C000/c1_full.tsv +++ b/dm/games/010089B00D09C000/c1_full.tsv @@ -1,4 +1,4 @@ -# chain b-fc6c0368c7b9 2026-10-23T14:27:31+08:00 +# chain b-3b3046f76f22 2026-10-23T16:15:22+08:00 0ed22b53c3db7a71 623b686baab08b30 738bc739393f913b diff --git a/dm/games/010089B00D09C000/cb_extent.tsv b/dm/games/010089B00D09C000/cb_extent.tsv index bba0470..c2401b0 100644 --- a/dm/games/010089B00D09C000/cb_extent.tsv +++ b/dm/games/010089B00D09C000/cb_extent.tsv @@ -1,4 +1,4 @@ -# chain b-fc6c0368c7b9 2026-10-23T14:27:34+08:00 +# chain b-3b3046f76f22 2026-10-23T16:15:23+08:00 # shader key, then reg:bytes for each uniform slot whose reads stay inside its first bytes, and s for each storage slot it never writes (cb_extent.py) 00005528b1b0e2cd 0:512 0003d30f7a6c71b2 0:320 @@ -1391,6 +1391,7 @@ 1b1799926c0773c2 0:656 1b1d17dd5f090ad7 0:192 1b2ce675610985a3 0:112 +1b378c5c014e3a32 0:32 1b4020b5e1aca7b2 0:528 1b422c152ca6a320 0:80 1b4d0cf3e4e1aba3 0:144 @@ -1778,6 +1779,7 @@ 23242d9bb538257a 0:144 233afc6c0d721d35 0:96 233d40c1c1d1ff28 0:576 +2341c1be4fcbf690 0:16 234203fd460a0ad1 0:208 2346eac64d1c80ec 0:256 2349946407a153c4 0:144 @@ -10795,6 +10797,7 @@ d57139953a05361b 0:160 d571931632ab0f18 0:224 d57468710502ce13 0:176 d5748fd1206e9ca8 0:144 +d57cdb168fdf6927 0:32 d57ff4397b96f525 0:256 d5836c4e977eb06b 0:208 d5864edbaaeb0ef3 0:80 diff --git a/dm/games/010089B00D09C000/dmsh_chain.h b/dm/games/010089B00D09C000/dmsh_chain.h index 0b17276..3d7b24d 100644 --- a/dm/games/010089B00D09C000/dmsh_chain.h +++ b/dm/games/010089B00D09C000/dmsh_chain.h @@ -1,2 +1,2 @@ // Generated file (dm/gfx/tools/dmsh_chain.py --header, game 010089B00D09C000): the B shader library translation chain version this source tree expects (default options); the host loads only /b-/ -#define DMSH_CHAIN "fc6c0368c7b9" +#define DMSH_CHAIN "3b3046f76f22" diff --git a/dm/gfx/nvn/hle_nvn.c b/dm/gfx/nvn/hle_nvn.c index 73b7b44..dbc2a7e 100644 --- a/dm/gfx/nvn/hle_nvn.c +++ b/dm/gfx/nvn/hle_nvn.c @@ -2222,7 +2222,7 @@ NVN(nvnCommandBufferSetViewportSwizzles, void, NVNcommandBuffer *c, int first, i NVN(nvnCommandBufferSetAlphaRef, void, NVNcommandBuffer *c, float r) { (void)c; ONCE_LOG("SetAlphaRef %.3f: the host has no alpha test (ColorStateSetAlphaTest is only recorded)", r); } NVN(nvnCommandBufferSetLineWidth, void, NVNcommandBuffer *c, float w) { (void)c; if (w != 1.0f) ONCE_LOG("SetLineWidth %.2f: Metal has only 1-pixel lines", w); } NVN(nvnCommandBufferSetPointSize, void, NVNcommandBuffer *c, float s) { (void)c; (void)s; ONCE_LOG("SetPointSize: the point size comes from the shader"); } -NVN(nvnCommandBufferSetPrimitiveRestart, void, NVNcommandBuffer *c, uint32_t en, int idx) { (void)c; if ((en & 0xff) && idx != -1 && idx != 0xffff) ONCE_LOG("[RED] SetPrimitiveRestart index %#x: Metal only accepts all ones", idx); } +NVN(nvnCommandBufferSetPrimitiveRestart, void, NVNcommandBuffer *c, uint32_t en, int idx) { *REC(c, OP_PRIM_RESTART, p_prim_restart) = (p_prim_restart){(en & 0xff) != 0, (uint32_t)idx}; } // Rasterizer discard: draws run their vertex stage only (with transform feedback, the capture); recorded, and at replay such a draw rasterizes nothing (nvn_mtl.m) NVN(nvnCommandBufferSetRasterizerDiscard, void, NVNcommandBuffer *c, uint32_t en) { REC(c, OP_RAST_DISCARD, p_rast_discard)->on = (en & 0xff) != 0; } NVN(nvnCommandBufferSetSampleMask, void, NVNcommandBuffer *c, int m) { (void)c; if ((m & 0xffff) != 0xffff) ONCE_LOG("SetSampleMask %#x: ignored by the host for now", m); } diff --git a/dm/gfx/nvn/nvn_geometry.h b/dm/gfx/nvn/nvn_geometry.h new file mode 100644 index 0000000..e8c7ab1 --- /dev/null +++ b/dm/gfx/nvn/nvn_geometry.h @@ -0,0 +1,88 @@ +// Primitive assembly for geometry compute. Values are capture-record indices; +// restart separates runs before strips/fans are assembled. No game-specific state. +#pragma once +#include +#include + +static int nvn_geo_topology(int prim) { + switch (prim) { + case 0: return 0; + case 1: case 2: case 3: return 1; + case 10: case 11: return 2; + case 4: case 5: case 6: case 7: return 3; + case 12: return 4; + default: return -1; + } +} +static int nvn_geo_width(int topology) { static const int width[] = {1, 2, 4, 3, 6}; return topology >= 0 && topology < 5 ? width[topology] : 0; } + +// Returns words required/written. SIZE_MAX means unsupported topology or overflow. +// dst == NULL counts only. A short destination is never partially written. +static size_t nvn_geo_assemble(int prim, const uint32_t *src, size_t count, int restart, uint32_t restart_index, uint32_t *dst, size_t capacity) { + int width = nvn_geo_width(nvn_geo_topology(prim)); + if (!width) return SIZE_MAX; + if (dst) { + size_t needed = nvn_geo_assemble(prim, src, count, restart, restart_index, NULL, 0); + if (needed == SIZE_MAX || needed > capacity) return SIZE_MAX; + } + size_t words = 0; + for (size_t begin = 0; begin < count;) { + size_t end = begin; + while (end < count && !(restart && src[end] == restart_index)) end++; + size_t n = end - begin, np = 0; + switch (prim) { + case 0: np = n; break; + case 1: np = n / 2; break; + case 2: np = n > 1 ? n : 0; break; + case 3: np = n > 1 ? n - 1 : 0; break; + case 4: np = n / 3; break; + case 5: case 6: np = n > 2 ? n - 2 : 0; break; + case 7: np = n / 4 * 2; break; + case 10: np = n / 4; break; + case 11: np = n > 3 ? n - 3 : 0; break; + case 12: np = n / 6; break; + } + if (np > (SIZE_MAX - words) / (size_t)width) return SIZE_MAX; + if (dst && words + np * width > capacity) return SIZE_MAX; + for (size_t i = 0; dst && i < np; i++) { + size_t k[6] = {0}; + switch (prim) { + case 0: k[0] = i; break; + case 1: k[0] = 2*i; k[1] = 2*i+1; break; + case 2: k[0] = i; k[1] = (i+1)%n; break; + case 3: k[0] = i; k[1] = i+1; break; + case 4: for (int c=0;c<3;c++) k[c]=3*i+c; break; + case 5: k[0]=i+(i&1); k[1]=i+1-(i&1); k[2]=i+2; break; + case 6: k[0]=0; k[1]=i+1; k[2]=i+2; break; + case 7: k[0]=4*(i/2); k[1]=k[0]+1+(i&1); k[2]=k[1]+1; break; + case 10: for (int c=0;c<4;c++) k[c]=4*i+c; break; + case 11: for (int c=0;c<4;c++) k[c]=i+c; break; + case 12: for (int c=0;c<6;c++) k[c]=6*i+c; break; + } + for (int c=0;c\nusing namespace metal;\n" +"struct geo_pack { device const uint *src; device uint *dst; device uint *args; uint groups, stride, topology, capacity; };\n" +"kernel void geo_pack_indices(constant geo_pack& j [[buffer(0)]]) {\n" +" uint outn=0;\n" +" for(uint g=0;g=2 && outn+3<=j.capacity) {j.dst[outn++]=(n&1)?b:a;j.dst[outn++]=(n&1)?a:b;j.dst[outn++]=v;}\n" +" a=b;b=v;n++;\n" +" }\n" +" }\n" +" j.args[0]=outn;j.args[1]=1;j.args[2]=0;j.args[3]=0;j.args[4]=0;\n" +"}\n"; diff --git a/dm/gfx/nvn/nvn_geometry.inc b/dm/gfx/nvn/nvn_geometry.inc new file mode 100644 index 0000000..10fec93 --- /dev/null +++ b/dm/gfx/nvn/nvn_geometry.inc @@ -0,0 +1,158 @@ +// General geometry replay: native VS capture -> GS compute -> ordered index +// compaction -> ordinary rendering. Included after the resource/pipeline helpers. +static NvProg *g_geo_program; +static uint64_t g_geo_indices, g_geo_index_bytes, g_geo_args; +static void draw(const p_draw *dw, const p_draw_idx *di); +static void lc_land(void); + +static int geo_cmp_index(const void *a, const void *b) { + uint32_t x = *(const uint32_t *)a, y = *(const uint32_t *)b; + return (x > y) - (x < y); +} +static id geo_capture_pso(NvShader *vs) { + pso_key k; static const uint32_t cf[8]; pso_key_fill(&k, vs, nil, cf, 0, 0, 1, 0); k.fsfn = GEO_MARK; + id ps = hm_get_id(&g_pso, &k); + if (ps || hm_get_id(&g_pso_fail, &k)) return ps; + NSError *e = nil; + ps = [g_dev newRenderPipelineStateWithDescriptor:pso_desc(&k, vs, nil, nil, 0) error:&e]; + if (ps) hm_put_id(&g_pso, &k, ps); + else { hm_put_id(&g_pso_fail, &k, NSNull.null); MLOG("[RED] geometry vertex capture %s: %s", vs->key, e.localizedDescription.UTF8String); } + return ps; +} +static void geo_draw(NvProg *pr, const p_draw *dw0, const p_draw_idx *di0) { + NvShader *vs = pr->sh[0], *base = pr->sh[2]; + if (!vs || !vs->geo_fn || !base || !base->geo_vertices || pr->sh[3] || pr->sh[4] || S.tf_on) { + MLOG("[RED] geometry draw cannot capture this pipeline (vertex %s, geometry %s, tessellation %d, feedback %d)", vs ? vs->key : "-", base ? base->key : "-", !!(pr->sh[3] || pr->sh[4]), S.tf_on); return; + } + p_draw dw = dw0 ? *dw0 : (p_draw){0}; p_draw_idx di = di0 ? *di0 : (p_draw_idx){0}; + if (di0 && (di.itype < 0 || di.itype > 2)) { MLOG("[RED] geometry index type %d is invalid", di.itype); return; } + uint64_t ind = dw0 ? dw.ind : di.ind; + // Indirect records and GPU-written index data need a coherent CPU snapshot + // for primitive assembly. This is deliberately a correctness path; no such + // wait is added to ordinary VS/FS draws. + int wait = ind != 0 || di0 != NULL; // CPU assembly must also see writes from earlier submissions. + for (int i = 0; i < 16; i++) if (S.vbuf[i].size && pend_hits(S.vbuf[i].address, S.vbuf[i].size)) wait = 1; + for (int i = 0; i < vs->rf.nv; i++) if (vconv_wanted(&vs->rf, i, NULL, 0)) wait = 1; + if (defer_has_active()) defer_fallback(); + lc_land(); rp_flush(); rp_end(); ubd_land(); + if (wait) { mdi_wait(); if (g_mdi_ev.signaledValue < g_mdi_v) return; memset(g_vconv, 0, sizeof g_vconv); } + if (ind) { + uint32_t a[5] = {0}; size_t n = dw0 ? 16 : 20; + if (!nvn_host_readable(ind, n)) { MLOG("[RED] geometry indirect arguments are not readable"); return; } + memcpy(a, (void *)(uintptr_t)ind, n); + if (!a[0] || !a[1]) return; + if (a[0] > INT32_MAX || a[1] > INT32_MAX) { MLOG("[RED] geometry indirect draw exceeds the host count range"); return; } + if (dw0) { dw.count = a[0]; dw.instances = a[1]; dw.first = a[2]; dw.base_instance = a[3]; dw.ind = dw.mdi_cnt = 0; } + else { di.count = a[0]; di.instances = a[1]; di.ibuf += (uint64_t)a[2] << di.itype; di.base_vertex = (int32_t)a[3]; di.base_instance = a[4]; di.ind = di.mdi_cnt = 0; } + } + int prim = dw0 ? dw.prim : di.prim, topology = nvn_geo_topology(prim); + int count = dw0 ? dw.count : di.count, instances = dw0 ? dw.instances : di.instances; + uint32_t first_instance = (uint32_t)(dw0 ? dw.base_instance : di.base_instance); + g_draw_binst = first_instance; + if (count <= 0 || instances < 0) return; + if (!instances) instances = 1; + if (topology < 0 || count > (1 << 22)) { MLOG("[RED] geometry primitive %d or count %d exceeds the assembly path", prim, count); return; } + NSString *key = [[NSString stringWithUTF8String:base->key] substringToIndex:16]; + NvShader *gs = shader_get([key stringByAppendingFormat:@"_bg%d", topology], 2); + NvShader *reader = shader_get([key stringByAppendingString:@"_bgv"], 0); + if (!gs || !reader) return; + id capture = geo_capture_pso(vs); if (!capture) return; + if (!gs->geo_pso) { NSError *e = nil; gs->geo_pso = [g_dev newComputePipelineStateWithFunction:gs->fn error:&e]; + if (!gs->geo_pso) { MLOG("[RED] geometry compute %s: %s", gs->key, e.localizedDescription.UTF8String); return; } } + if (gs->geo_pso.maxTotalThreadsPerThreadgroup < 32) { MLOG("[RED] geometry kernel cannot run a 32-thread group"); return; } + static id pack; + if (!pack) { NSError *e = nil; id lib = [g_dev newLibraryWithSource:@(k_nvn_geo_pack_msl) options:nil error:&e]; + if (lib) pack = [g_dev newComputePipelineStateWithFunction:[lib newFunctionWithName:@"geo_pack_indices"] error:&e]; + if (!pack) { MLOG("[RED] geometry index compaction: %s", e.localizedDescription.UTF8String); return; } } + + uint32_t *order = malloc((size_t)count * 4), *unique = malloc((size_t)count * 4); + if (!order || !unique) { free(order); free(unique); MLOG("[RED] geometry index allocation failed"); return; } + uint32_t lo = UINT32_MAX, hi = 0; size_t nu = 0; + int restart = di0 && S.restart.on; + int isz = di0 ? 1 << di.itype : 0; + uint32_t restart_index = S.restart.index & (isz == 1 ? UINT8_MAX : isz == 2 ? UINT16_MAX : UINT32_MAX); + if (di0 && (di.itype < 0 || di.itype > 2 || !nvn_host_readable(di.ibuf, (uint64_t)count * isz))) { + free(order); free(unique); MLOG("[RED] geometry index buffer is not readable"); return; + } + for (int i = 0; i < count; i++) { + uint32_t v = (uint32_t)i; + if (di0) { v = 0; memcpy(&v, (const uint8_t *)(uintptr_t)di.ibuf + (size_t)i * isz, isz); } + order[i] = v; + if (restart && v == restart_index) continue; + lo = MIN(lo, v); hi = MAX(hi, v); unique[nu++] = v; + } + if (!nu) { free(order); free(unique); return; } + int64_t first = di0 ? (int64_t)lo + di.base_vertex : dw.first; + uint64_t span = (uint64_t)hi - lo + 1; + if (first < 0 || first + span > (uint64_t)UINT32_MAX + 1) { free(order); free(unique); MLOG("[RED] geometry vertex range is outside 32-bit vertex IDs"); return; } + // Normalize only after assembly, so a restart value cannot collide with a + // normalized vertex number. Indexed captures use a sorted unique index list. + size_t words = nvn_geo_assemble(prim, order, count, restart, restart_index, NULL, 0); + int width = nvn_geo_width(topology); + uint64_t np = words == SIZE_MAX ? 0 : words / width; + if (!np) { free(order); free(unique); return; } + uint64_t groups = np * (uint64_t)instances * gs->geo_invocations; + if (groups > UINT32_MAX || span * (uint64_t)instances > (256ull << 20) / (144 * 4) || + (uint64_t)first_instance + instances > (uint64_t)UINT32_MAX + 1) { + free(order); free(unique); MLOG("[RED] geometry draw exceeds the capture or invocation bound"); return; + } + uint64_t input_size = span * instances * 144 * 4; + uint64_t output_size = groups * gs->geo_vertices * gs->geo_stride * 4; + uint64_t raw_size = groups * gs->geo_index_stride * 4; + uint64_t packed_size = groups * gs->geo_vertices * (gs->geo_output == 7 ? 3 : gs->geo_output == 6 ? 2 : 1) * 4; + uint64_t total = input_size + output_size + raw_size + packed_size + words * 4 + nu * 4 + 4096; + if (groups > UINT32_MAX || total > (256ull << 20) || np > UINT32_MAX) { + free(order); free(unique); MLOG("[RED] geometry draw needs %llu MiB of scratch, above the 256 MiB bound", (unsigned long long)(total >> 20)); return; + } + id scratch; size_t off = arena_alloc((size_t)total, &scratch); + uint8_t *cpu = (uint8_t *)scratch.contents + off; uint64_t gpu = scratch.gpuAddress + off; + size_t used = 0; + #define GEO_ALLOC(N, G, P) do { used = (used + 255) & ~(size_t)255; (G) = gpu + used; (P) = cpu + used; used += (size_t)(N); } while (0) + uint64_t input, output, raw, packed, map, capture_ix, info, capture_info, args, job; + void *pinput, *poutput, *praw, *ppacked, *pmap, *pcapture_ix, *pinfo, *pcapture_info, *pargs, *pjob; + GEO_ALLOC(input_size, input, pinput); GEO_ALLOC(output_size, output, poutput); GEO_ALLOC(raw_size, raw, praw); GEO_ALLOC(packed_size, packed, ppacked); + GEO_ALLOC(words * 4, map, pmap); GEO_ALLOC(nu * 4, capture_ix, pcapture_ix); GEO_ALLOC(32, info, pinfo); GEO_ALLOC(32, capture_info, pcapture_info); + GEO_ALLOC(20, args, pargs); GEO_ALLOC(40, job, pjob); + #undef GEO_ALLOC + (void)pinput; (void)poutput; (void)praw; (void)ppacked; + if (used > total) MDIE("geometry scratch size accounting"); + nvn_geo_assemble(prim, order, count, restart, restart_index, pmap, words); + for (size_t i = 0; i < words; i++) ((uint32_t *)pmap)[i] -= lo; + qsort(unique, nu, 4, geo_cmp_index); + size_t unique_count = 0; + for (size_t i = 0; i < nu; i++) if (!i || unique[i] != unique[i - 1]) ((uint32_t *)pcapture_ix)[unique_count++] = unique[i]; + free(order); free(unique); + uint32_t vi[8] = {(uint32_t)span, (uint32_t)instances, 0, 0, (uint32_t)np, 0, 0, 0}; memcpy(pinfo, vi, 32); + uint64_t ci[2] = {input, 0}; memcpy(pcapture_info, ci, 16); + uint32_t cc[4] = {(uint32_t)first, (uint32_t)span, first_instance, (uint32_t)instances}; memcpy((uint8_t *)pcapture_info + 16, cc, 16); + memset(pargs, 0, 20); + struct { uint64_t src, dst, args; uint32_t groups, stride, topology, capacity; } pj = {raw, packed, args, (uint32_t)groups, gs->geo_index_stride, gs->geo_output, (uint32_t)(packed_size / 4)}; + memcpy(pjob, &pj, sizeof pj); + if (g_blit) { enc_b_end(g_blit); g_blit = nil; } + MTL4RenderPassDescriptor *rd = [MTL4RenderPassDescriptor new]; rd.renderTargetWidth = rd.renderTargetHeight = rd.defaultRasterSampleCount = 1; + id re = enc_r_begin(rd); enc_r_pso(re, capture); bind_vbufs(re); + p_draw vertex_range = {.first = (int32_t)first, .count = (int32_t)span, .instances = instances, .base_instance = (int32_t)first_instance}; + vconv_bind(re, vs, 1, &vertex_range, NULL); + args_dirty_all(); encode_args(re, vs, 0, 1); enc_r_vbuf(re, 13, capture_info); + if (di0) enc_r_draw_indexed(re, MTLPrimitiveTypePoint, unique_count, MTLIndexTypeUInt32, capture_ix, nu * 4, instances, di.base_vertex, first_instance); + else enc_r_draw_instanced(re, MTLPrimitiveTypePoint, dw.first, dw.count, instances, first_instance); + enc_r_end(re); + g_geo_bind[0] = input; g_geo_bind[1] = output; g_geo_bind[2] = raw; g_geo_bind[3] = info; g_geo_bind[4] = map; + id ce = enc_c_begin(NULL); + args_dirty_all(); encode_args(ce, gs, 2, 0); enc_c_pso(ce, gs->geo_pso); + enc_c_dispatch(ce, MTLSizeMake((np + 31) / 32, instances, gs->geo_invocations), MTLSizeMake(32, 1, 1)); enc_c_end(ce); + ce = enc_c_begin(NULL); enc_c_pso(ce, pack); enc_c_args(ce, job, 0); + enc_c_dispatch(ce, MTLSizeMake(1, 1, 1), MTLSizeMake(1, 1, 1)); enc_c_end(ce); + args_dirty_all(); g_enc_pso = nil; g_enc_dss = nil; g_ed.ok = 0; + swrite_note(pr); udc_note_draw(pr); g_wr_epoch++; g_mdx_epoch++; + if (S.rast_discard) return; + NvProg *raster = pr->geo_raster; + if (!raster || raster->sh[0] != reader || raster->sh[1] != pr->sh[1]) { + raster = [NvProg new]; raster->sh[0] = reader; raster->sh[1] = pr->sh[1]; pr->geo_raster = raster; + } + g_geo_program = raster; g_geo_indices = packed; g_geo_index_bytes = packed_size; g_geo_args = args; + p_draw synthetic = {.prim = gs->geo_output == 1 ? 0 : gs->geo_output == 6 ? 1 : 4, .count = 3, .instances = 1, .base_instance = (int32_t)first_instance}; + draw(&synthetic, NULL); + g_geo_program = nil; args_dirty_all(); + static int once; if (!once++) MLOG("geometry compute: vertex %s, geometry %s, %llu input primitives, %d instances", vs->key, gs->key, (unsigned long long)np, instances); +} diff --git a/dm/gfx/nvn/nvn_mtl.m b/dm/gfx/nvn/nvn_mtl.m index 304a558..70e0479 100644 --- a/dm/gfx/nvn/nvn_mtl.m +++ b/dm/gfx/nvn/nvn_mtl.m @@ -2796,8 +2796,10 @@ static void shmap_load(void) { warm_start(); } -@interface NvShader : NSObject { @public id fn, tf_fn, fn_u; // fn_u: the integer-output entry point (dmsh_build.py fs_uint), for pipelines whose colour attachments are all unsigned integer (pso_desc) +@interface NvShader : NSObject { @public id fn, tf_fn, fn_u, geo_fn; // fn_u: the integer-output entry point (dmsh_build.py fs_uint), for pipelines whose colour attachments are all unsigned integer (pso_desc) uint16_t tf_stride[4]; uint32_t cb_ext[16], sb_ro; nvn_refl rf; id ae; NSUInteger arg_len; int stage, range_ro, afr, layer_out; const char *builtin; uint64_t logged; char key[24]; id c1buf; uint64_t c1_gpu; size_t c1off; + uint32_t geo_vertices, geo_invocations, geo_output, geo_stride, geo_index_stride; + id geo_pso; int gs_loc, lay_loc; char gs_comp, lay_comp; // a slice-writing geometry shader (no function: the layer comes from input gs_loc.gs_comp) / a vertex shader with layer entry points writing output lay_loc.lay_comp (dmsh_build.py gs_slice, vs_layer_entry); -1 = none // The argument buffer encoded last time id ab_buf; uint64_t ab_gpu; size_t ab_off; uint64_t ab_pass; uint32_t ab_binst; // ab_pass: serial of the render pass that encoded this argument block - reused only within the same pass (the arena holding a block from another pass / another submission may already have been reclaimed and rewritten) @@ -2808,7 +2810,8 @@ static void shmap_load(void) { - (void)dealloc { free(rf.c1); } @end #include "nvn_pso_skey.h" -@interface NvProg : NSObject { @public NvShader *sh[6]; char gs_miss[17]; } @end // gs_miss: the key of a geometry shader with no library (no Metal counterpart), "" = none (draw_gs_check) +#include "nvn_geometry.h" +@interface NvProg : NSObject { @public NvShader *sh[6]; char gs_miss[17]; NvProg *geo_raster; } @end // geo_raster: GS output reader paired with this program's fragment stage @implementation NvProg @end // Warm-up entry: built in the background, waiting to be taken by the submit thread. vs / fs are strong references (in pso they are only raw pointers, and the background dictionary is released when the task ends) @interface WarmItem : NSObject { @public int kind; NSString *key, *vs_key, *fs_key; NvShader *shader, *vs, *fs; pso_key pso; id fsfn; id object; } @end @@ -2820,7 +2823,7 @@ static void c1_store(NvShader *o) { NSString *guardKey = [NSString stringWithUTF8String:o->key]; if ([guardKey hasSuffix:@"_b"]) guardKey = [guardKey substringToIndex:guardKey.length - 2]; os_unfair_lock_lock(&g_c1_lock); // Both the warm-up thread and the submit thread load shaders - if (!g_c1_full_valid || [g_c1_full containsObject:guardKey]) { // Runtime index not proven bounded: exclusive 64 KiB of all zeros (same as the original implementation) + if (o->geo_vertices || !g_c1_full_valid || [g_c1_full containsObject:guardKey]) { // Geometry topology variants have independent control flow; only the base shader is in the guard table. o->c1buf = [g_dev newBufferWithLength:C1_DECL_SIZE options:MTLResourceStorageModeShared]; o->c1_gpu = o->c1buf.gpuAddress; if (!o->c1buf) { os_unfair_lock_unlock(&g_c1_lock); MDIE("c1 dedicated buffer allocation failed"); } res_add(o->c1buf); @@ -2937,7 +2940,7 @@ static NvShader *shader_load(NSString *pc, int stage, int layer) { o->gs_loc = [j[@"gs_slice"][@"loc"] intValue]; o->gs_comp = [[j[@"gs_slice"][@"comp"] description] UTF8String][0]; return o; } - if (stage == 2 && !j) return nil; // any other geometry shader has no library (no Metal counterpart): the caller's red line says so + if (stage == 2 && !j) return nil; // missing geometry translation: the caller's red line says so NSString *lp = [NSString stringWithFormat:@"%@/%@.metallib", g_msl_dir, pc]; id lib = lib_from_file(lp, &e); if (!lib || !j) { MLOG("[RED] failed to load shader %s: %s", pc.UTF8String, e ? e.localizedDescription.UTF8String : "no reflection json"); return nil; } @@ -2957,6 +2960,15 @@ static NvShader *shader_load(NSString *pc, int stage, int layer) { if (atomic_load(&g_depth_zero)) { if (j[@"entry_z"]) entry = j[@"entry_z"]; else RED_ONCE(85, "vertex shader %s has no near=0 entry (entry_z): depth stays in the GL convention", pc.UTF8String); } if (layer) entry = atomic_load(&g_depth_zero) ? j[@"entry_layer_z"] : j[@"entry_layer"]; } + if (j[@"entry_geometry_capture"]) { + NSError *ge = nil; + o->geo_fn = [lib newFunctionWithName:j[@"entry_geometry_capture"] constantValues:[MTLFunctionConstantValues new] error:&ge]; + if (!o->geo_fn) MLOG("[RED] vertex shader %s: geometry capture entry failed: %s", pc.UTF8String, ge.localizedDescription.UTF8String); + } + NSDictionary *geo = j[@"geometry"]; + if (j[@"geometry_reader"]) o->geo_output = [j[@"geometry_output"] unsignedIntValue]; + if (geo) { o->geo_vertices = [geo[@"vertices"] unsignedIntValue]; o->geo_invocations = [geo[@"invocations"] unsignedIntValue]; + o->geo_output = [geo[@"output"] unsignedIntValue]; o->geo_stride = [geo[@"stride"] unsignedIntValue]; o->geo_index_stride = [geo[@"index_stride"] unsignedIntValue]; } o->fn = [lib newFunctionWithName:entry]; o->stage = stage; strlcpy(o->key, pc.UTF8String, sizeof o->key); o->ventry = entry; // writes the layer (render_target_array_index, named in the library's metadata): its passes are layered and its pipelines get an input class (pso_desc). A library with layer entry points // names it for those alone: its main0 / main0_z write no layer @@ -3536,17 +3548,19 @@ static inline __attribute__((always_inline)) void *samp_fast(int sid) { @interface NvArena : NSObject { @public id buf; uint64_t gpu, fence; size_t used; } @end @implementation NvArena @end static NSMutableArray *g_arenas; static NvArena *g_cur_arena; static NSMutableArray *g_sub_arenas; -static NvArena *arena_new(void) { +static NvArena *arena_new(size_t minimum) { // The for-in loop variable does not retain the object: take a strong reference first and then remove it from the array, otherwise what is returned after the array releases it is a dangling pointer - for (NvArena *it in g_arenas) if (it->fence && it->fence <= g_done) { NvArena *r = it; [g_arenas removeObject:r]; r->fence = 0; r->used = 0; return r; } - NvArena *a = [NvArena new]; a->buf = [g_dev newBufferWithLength:4 << 20 options:MTLResourceStorageModeShared]; a->gpu = a->buf.gpuAddress; res_add(a->buf); g_arena_made++; return a; + for (NvArena *it in g_arenas) if (it->fence && it->fence <= g_done && it->buf.length >= minimum) { NvArena *r = it; [g_arenas removeObject:r]; r->fence = 0; r->used = 0; return r; } + NvArena *a = [NvArena new]; a->buf = [g_dev newBufferWithLength:MAX(minimum, 4u << 20) options:MTLResourceStorageModeShared]; + if (!a->buf) MDIE("cannot allocate %zu bytes of frame scratch", minimum); + a->gpu = a->buf.gpuAddress; res_add(a->buf); g_arena_made++; return a; } void arena_begin(void) { if (!g_arenas) { g_arenas = [NSMutableArray array]; g_sub_arenas = [NSMutableArray array]; } g_cur_arena = nil; } void arena_commit(uint64_t fence) { for (NvArena *a in g_sub_arenas) { a->fence = fence; [g_arenas addObject:a]; } [g_sub_arenas removeAllObjects]; g_cur_arena = nil; } static size_t arena_alloc(size_t n, id *buf) { n = (n + 255) & ~(size_t)255; if (!g_cur_arena || g_cur_arena->used + n > g_cur_arena->buf.length) { - pthread_mutex_lock(&g_mu); g_cur_arena = arena_new(); pthread_mutex_unlock(&g_mu); + pthread_mutex_lock(&g_mu); g_cur_arena = arena_new(n); pthread_mutex_unlock(&g_mu); [g_sub_arenas addObject:g_cur_arena]; } size_t off = g_cur_arena->used; g_cur_arena->used += n; *buf = g_cur_arena->buf; return off; @@ -3556,6 +3570,7 @@ static size_t arena_alloc(size_t n, id *buf) { static struct { const prog_t *prog; const prog_t *cprog; // compute program: NVN binds it apart from the graphics stages (see OP_BIND_PROGRAM in state_op) + p_prim_restart restart; const prog_t *bst[5]; // program bound per stage (NVN stage bits 1 vertex 2 fragment 4 geometry 8 / 16 tessellation, indices as in NvProg.sh), see bind_stages blend_st blend[8]; color_st color; chmask_st chmask; ms_st ms; poly_st poly; ds_st ds; va_st attr[16]; int nattr; vs_st stream[16]; int nstream; @@ -4007,6 +4022,8 @@ static NSMutableDictionary> *g_bf_lib_cache; static nvn_hmap g_pso = {.klen = sizeof(pso_key)}, g_dss; static nvn_hmap g_pso_fail = {.klen = sizeof(pso_key)}; // pipelines that failed to build: remembered and never retried (previously every draw recompiled it, over 10,000 times in one iPhone session) static const char g_tf_mark; +static char g_geo_mark; +#define GEO_MARK ((const void *)&g_geo_mark) #define TF_MARK ((const void *)&g_tf_mark) // pso_key.fsfn of a transform feedback capture pipeline (tf_pso) static int mtl_fmt_uint(MTLPixelFormat f) { switch (f) { case MTLPixelFormatR8Uint: case MTLPixelFormatR16Uint: case MTLPixelFormatR32Uint: case MTLPixelFormatRG8Uint: case MTLPixelFormatRG16Uint: case MTLPixelFormatRG32Uint: @@ -4043,8 +4060,8 @@ static MTLRenderPipelineDescriptor *pso_desc(const pso_key *k, NvShader *vs, NvS if (hl) d.fragmentFunction = [hl newFunctionWithName:[NSString stringWithFormat:@"hl%d", i]]; break; } } if (fs && fs->fn_u && !fsfn && d.fragmentFunction == fs->fn && pso_all_uint(k, fs, merged)) d.fragmentFunction = fs->fn_u; // integer colour targets (dmsh_build.py fs_uint) - if (vs->layer_out) d.inputPrimitiveTopology = MTLPrimitiveTopologyClassTriangle; // a vertex shader that writes the layer (pso_get_) - if (k->fsfn == TF_MARK) { d.vertexFunction = vs->tf_fn; d.fragmentFunction = nil; d.rasterizationEnabled = NO; } // transform feedback capture (tf_draw) + if (vs->layer_out && k->fsfn != GEO_MARK) d.inputPrimitiveTopology = vs->geo_output == 1 ? MTLPrimitiveTopologyClassPoint : vs->geo_output == 6 ? MTLPrimitiveTopologyClassLine : MTLPrimitiveTopologyClassTriangle; + if (k->fsfn == TF_MARK || k->fsfn == GEO_MARK) { d.vertexFunction = k->fsfn == GEO_MARK ? vs->geo_fn : vs->tf_fn; d.fragmentFunction = nil; d.rasterizationEnabled = NO; } // transform feedback capture (tf_draw) d.rasterSampleCount = k->samples ? k->samples : 1; d.alphaToCoverageEnabled = k->a2c; for (int i = 0; i < 8; i++) { @@ -4068,7 +4085,7 @@ static MTLRenderPipelineDescriptor *pso_desc(const pso_key *k, NvShader *vs, NvS } d.depthAttachmentPixelFormat = (MTLPixelFormat)k->dfmt; d.stencilAttachmentPixelFormat = (MTLPixelFormat)k->sfmt; MTLVertexDescriptor *vd = [MTLVertexDescriptor vertexDescriptor]; - const nvn_refl *rf = &vs->rf; int nconv = 0, on = vin_on(vs, k, k->fsfn == TF_MARK); + const nvn_refl *rf = &vs->rf; int nconv = 0, on = vin_on(vs, k, k->fsfn == TF_MARK || k->fsfn == GEO_MARK); if (on) { d.vertexFunction = vs->vfn; g_vin_psos++; } // the shadow-input entry point (see vin_on) #define ZERO_ATTR(i, ct_) do { vd.attributes[i].format = (ct_) == NVN_CT_UINT ? MTLVertexFormatUInt4 : (ct_) == NVN_CT_INT ? MTLVertexFormatInt4 : MTLVertexFormatFloat4; vd.attributes[i].offset = 0; vd.attributes[i].bufferIndex = 30; \ vd.layouts[30].stride = 16; vd.layouts[30].stepFunction = MTLVertexStepFunctionConstant; vd.layouts[30].stepRate = 0; } while (0) // reads the zero buffer @@ -4375,7 +4392,7 @@ static inline void args_sync_dirty(void) { } } static void bind_args(id en, int nvn_stage, int metal_vertex, id ab, uint64_t gpu, size_t off, NSUInteger ai) { - if (nvn_stage == 5) enc_c_args((id)en, gpu, ai); + if (nvn_stage == 5 || nvn_stage == 2) enc_c_args((id)en, gpu, ai); else enc_r_args((id)en, metal_vertex ? MTLRenderStageVertex : MTLRenderStageFragment, gpu, ai); } // Static constant buffers of route B: the Ryujinx support_buffer (layout in Ryujinx.Graphics.Shader/SupportBuffer.cs: alpha_test u32, is_bgra u32[8], @@ -4415,6 +4432,7 @@ static int ubo_samp_id(uint32_t h) { int s = (int)(h >> 20); return s ? s + S.sa static uint32_t g_dispatch_dim[3]; // the current dispatch's workgroup counts (driver segment c0 + 0x200 for compute) static uint32_t g_draw_binst; // the current draw's base instance (draw), for c0 + 0x644 static __unsafe_unretained id g_c0_dim_buf; static size_t g_c0_dim_off; // where encode_args put them for this dispatch (nil: the shader reads no c0); an indirect dispatch copies its GPU-written counts there +static uint64_t g_geo_bind[5]; static int encode_args_(id en, NvShader *sh, int nvn_stage, int metal_vertex); static int encode_args(id en, NvShader *sh, int nvn_stage, int metal_vertex) { AP_B; int r = encode_args_(en, sh, nvn_stage, metal_vertex); AP_E(3); return r; } static int encode_args_(id en, NvShader *sh, int nvn_stage, int metal_vertex) { @@ -4436,6 +4454,7 @@ static int encode_args_(id en, NvShader *sh, int nvn_stage, i for (int i = 0; i < sh->rf.nb; i++) { const nvn_rbind *b = &sh->rf.b[i]; int reg = b->reg, aid = b->aid; + if (b->kind == NVN_RB_GEOMETRY) { slots[aid] = g_geo_bind[reg]; continue; } if (b->kind == NVN_RB_CBUF) { const p_bind_buf *u = reg < 16 ? &S.ubo[nvn_stage][reg] : NULL; void *mb; uint64_t mo, gpu; @@ -4928,6 +4947,7 @@ static int state_op(uint32_t op, const void *a) { case OP_TF_BIND: { const p_tf_bind *b = a; if (b->index >= 0 && b->index < 4) S.tf[b->index] = *b; break; } case OP_TF_STATE: { const p_tf_state *b = a; // Begin writes from the start of each buffer; Pause / Resume keep the offsets (the host keeps them itself, the game's control buffer is not used) if (b->what == 0) { S.tf_on = 1; memset(S.tf_off, 0, sizeof S.tf_off); } else S.tf_on = b->what == 3; break; } + case OP_PRIM_RESTART: S.restart = *(const p_prim_restart *)a; break; case OP_RAST_DISCARD: S.rast_discard = ((const p_rast_discard *)a)->on; break; default: return 0; } @@ -6529,6 +6549,8 @@ static void tf_draw(NvProg *pr, const p_draw *dw, const p_draw_idx *di) { (unsigned long long)S.tf_off[0], (unsigned long long)S.tf_off[1], (unsigned long long)S.tf_off[2], (unsigned long long)S.tf_off[3]); } +#include "nvn_geometry.inc" + // Lazy clears. A set of targets that gets only clears before the game sets other targets used to open a pass just to land them (rp_flush), storing the cleared attachments, and the next // pass that attached them loaded them back. Breath of the Wild clears its G-buffer one target at a time (depth with the lighting target, then albedo, normals, the fourth), then attaches all // five: four passes stored 27 MB of cleared memory at 1600x900 and the G-buffer pass loaded it again. Such clears now wait (g_lc): the next pass that attaches the same texture level and @@ -6608,7 +6630,7 @@ static int lc_keeps(uint32_t op) { case OP_SCISSOR: case OP_BIND_PROGRAM: case OP_BIND_STATE: case OP_BIND_VATTR: case OP_BIND_VSTREAM: case OP_BIND_VBUF: case OP_BIND_UBO: case OP_BIND_SSBO: case OP_BIND_TEX: case OP_BIND_TEX1: case OP_BIND_SAMP: case OP_BIND_IMG: case OP_STENCIL: case OP_POLY_OFFSET: case OP_VIEWPORTS: case OP_DEPTH_RANGE: case OP_DEPTH_CLAMP: case OP_VP_SWIZZLE: case OP_BLEND_COLOR: case OP_COPY_STRIDE: - case OP_TF_BIND: case OP_TF_STATE: case OP_RAST_DISCARD: case OP_BARRIER: case OP_SET_TEX_POOL: case OP_SET_SAMP_POOL: case OP_RENDER_COND: + case OP_TF_BIND: case OP_TF_STATE: case OP_RAST_DISCARD: case OP_PRIM_RESTART: case OP_BARRIER: case OP_SET_TEX_POOL: case OP_SET_SAMP_POOL: case OP_RENDER_COND: case OP_UPDATE_UB: case OP_COPY_B2B: case OP_CLEAR_BUF: return 1; default: return 0; } @@ -6616,12 +6638,19 @@ static int lc_keeps(uint32_t op) { static void draw(const p_draw *dw, const p_draw_idx *di) { g_draw_binst = (uint32_t)(dw ? dw->base_instance : di ? di->base_instance : 0); // c0 + 0x644 of the stages that read the driver segment (encode_args) + if (!g_geo_program && S.prog) { + NvProg *geometry_program = prog_get(S.prog); + if (geometry_program && geometry_program->sh[2] && geometry_program->sh[2]->geo_vertices) { + if ((dw && dw->mdi_cnt && !mdi_live(dw->mdi_cnt, dw->mdi_i)) || (di && di->mdi_cnt && !mdi_live(di->mdi_cnt, di->mdi_i))) return; + geo_draw(geometry_program, dw, di); return; + } + } int mdx_on = (dw && dw->mdi_cnt) || (di && di->mdi_cnt) ? mdx_wanted(dw, di) : 0; // an indirect-count multi-draw's record masked on the GPU (mdx_run), else read after a wait if (!mdx_on && ((di && di->mdi_cnt && !mdi_live(di->mdi_cnt, di->mdi_i)) || (dw && dw->mdi_cnt && !mdi_live(dw->mdi_cnt, dw->mdi_i)))) return; // past the multi-draw's count if (mdx_on && mdx_next(dw, di)) return; // the next draw of a masked multi-draw: only the draw is encoded g_mdxc.next = NULL; if (!S.prog) { RED_ONCE(18, "no program bound before the draw"); PD("Z %llu draw skipped: no program bound", g_stat_pass + !g_enc); return; } - __unsafe_unretained NvProg *pr = prog_get(S.prog); + __unsafe_unretained NvProg *pr = g_geo_program ? g_geo_program : prog_get(S.prog); draw_gs_check(pr); // a geometry stage left with no function (see prog_fold_gs) if (S.rast_discard) { tf_draw(pr, dw, di); return; } // the vertex stage only: transform feedback capture, or nothing (tf_draw) if (g_nubd && (g_enc || ubd_lazy()) && ubd_conflict(pr, dw, di)) { g_ubd_conflicts++; rp_end(); ubd_land(); } // land the deferred inline updates before this draw (see ubd_conflict) @@ -6635,7 +6664,7 @@ static void draw(const p_draw *dw, const p_draw_idx *di) { if (!mdx_find(ind, cnt, &mdx)) { mdx_run(dw, di); if (!mdx_find(ind, cnt, &mdx)) mdx = 0; } if (!mdx && !mdi_live(cnt, i)) return; } if (di && wide_wanted(di) && !wide_find(di)) wide_run(di); // 8-bit indices written earlier in this submission: widened on the GPU before the render pass (see wide_run) - if (!g_defer_replaying) { + if (!g_defer_replaying && !g_geo_program) { if (g_defer.active && g_defer.in_p && !g_defer.at_q) { if (defer_take(dw, di)) return; } } // Draws that cannot draw anything (both faces culled, empty scissor) return before the render pass is opened: otherwise the render pass is already open and on TBDR the whole attachment is loaded and stored for nothing @@ -6674,10 +6703,10 @@ static void draw(const p_draw *dw, const p_draw_idx *di) { if (!g_enc) rr_begin(); #endif int defer_q_draw = !g_enc && !g_defer_replaying && g_defer_natq > 0; // The draw that opens Q's render pass: after the render pass is opened as usual through hoist_try / fuse_try, replay P first and then draw this one - if (!g_enc && tbdr_on()) hoist_try(); // First hoist and execute the pure-clear render passes sandwiched between this render pass and its continuation (before rp_begin_ex, not occupying this render pass) + if (!g_enc && tbdr_on() && !g_geo_program) hoist_try(); // First hoist and execute the pure-clear render passes sandwiched between this render pass and its continuation (before rp_begin_ex, not occupying this render pass) // The deferral decision comes after hoist_try: hoisted pure-clear render passes are skipped in the lookahead, and only then can P's same-target continuation segment be recognized - if (!g_enc && tbdr_on() && !defer_has_in_p() && !g_defer_replaying && !g_fz.active && !g_fz_checking && g_exec_next) { defer_try(dw, di); if (g_defer_cur->active && g_defer_cur->in_p) return; } - if (!g_enc && tbdr_on() && !g_fz_checking) fuse_try(); // Readable tile render pass merge is on by default; when the structure / same-pixel proof does not hold it still falls back to a normal render pass, and it is not re-entered during the CHECK redraw + if (!g_enc && tbdr_on() && !g_geo_program && !defer_has_in_p() && !g_defer_replaying && !g_fz.active && !g_fz_checking && g_exec_next) { defer_try(dw, di); if (g_defer_cur->active && g_defer_cur->in_p) return; } + if (!g_enc && tbdr_on() && !g_fz_checking && !g_geo_program) fuse_try(); // Readable tile render pass merge is on by default; when the structure / same-pixel proof does not hold it still falls back to a normal render pass, and it is not re-entered during the CHECK redraw int need = g_enc || !tbdr_on() ? 3 : pass_ds_need(), mode = defer_q_draw ? 0 : need == 0 ? 2 : need == 2 ? 3 : need == 1 ? 4 : 0; // 2 attach neither, 3 attach stencil only, 4 attach depth only int skip_d = mode != 0; if (!g_enc) { g_fd_dw = dw; g_fd_di = di; } @@ -6818,6 +6847,10 @@ static void draw(const p_draw *dw, const p_draw_idx *di) { #endif udc_note_draw(pr); swrite_note(pr); + if (g_geo_program) { + enc_r_draw_indexed_indirect(en, mp, MTLIndexTypeUInt32, g_geo_indices, g_geo_index_bytes, g_geo_args); + return; + } // A draw with 0 primitives (the game does send count=0) draws no pixels, so skip encoding; Metal requires the count to be non-zero, otherwise the validation layer aborts on the spot (measured on the camp / wilderness / combat pages) if ((dw && dw->ind) || (di && di->ind)) { // DrawArraysIndirect / DrawElementsIndirect: NVN's argument records {count, instances, first, base instance} and {count, instances, first index, // base vertex, base instance} have the layouts of MTLDrawPrimitivesIndirectArguments and MTLDrawIndexedPrimitivesIndirectArguments; quads, fans and 8-bit indices use the converted ones (ixc_run) @@ -7592,6 +7625,7 @@ void mtl_exec(const uint8_t *p) { case OP_TF_BIND: { const p_tf_bind *b = a; PD("Y tf bind %d addr=%#llx size=%llu", b->index, (unsigned long long)b->addr, (unsigned long long)b->size); state_op(h.op, a); break; } case OP_TF_STATE: { const p_tf_state *b = a; static const char *const w[4] = {"begin", "end", "pause", "resume"}; PD("Y tf %s ctl=%#llx written %llu/%llu/%llu/%llu", w[b->what & 3], (unsigned long long)b->ctl, (unsigned long long)S.tf_off[0], (unsigned long long)S.tf_off[1], (unsigned long long)S.tf_off[2], (unsigned long long)S.tf_off[3]); state_op(h.op, a); break; } + case OP_PRIM_RESTART: state_op(h.op, a); break; case OP_RAST_DISCARD: PD("Y rasterizer discard %d", ((const p_rast_discard *)a)->on); state_op(h.op, a); break; case OP_COPY_B2T: copy_b2t(a); break; case OP_COPY_T2B: copy_t2b(a); break; diff --git a/dm/gfx/nvn/nvn_obj.h b/dm/gfx/nvn/nvn_obj.h index c6efc14..577cca9 100644 --- a/dm/gfx/nvn/nvn_obj.h +++ b/dm/gfx/nvn/nvn_obj.h @@ -102,7 +102,7 @@ enum { OP_BIND_PROGRAM, OP_BIND_STATE, OP_BIND_VATTR, OP_BIND_VSTREAM, OP_BIND_VBUF, OP_BIND_UBO, OP_BIND_SSBO, OP_BIND_TEX, OP_BIND_SAMP, OP_STENCIL, OP_POLY_OFFSET, OP_DRAW, OP_DRAW_IDX, OP_DISPATCH, OP_BARRIER, - OP_SET_TEX_POOL, OP_SET_SAMP_POOL, OP_COPY_B2T, OP_COPY_STRIDE, OP_BLEND_COLOR, OP_COPY_T2B, OP_BIND_IMG, OP_COPY_T2T, OP_RESET_COUNTER, OP_CLEAR_TEX, OP_CLEAR_BUF, OP_DEPTH_CLAMP, OP_RENDER_COND, OP_FENCE_SYNC, OP_TF_BIND, OP_TF_STATE, OP_RAST_DISCARD, OP_VP_SWIZZLE, OP_BIND_TEX1, OP_COUNT_ + OP_SET_TEX_POOL, OP_SET_SAMP_POOL, OP_COPY_B2T, OP_COPY_STRIDE, OP_BLEND_COLOR, OP_COPY_T2B, OP_BIND_IMG, OP_COPY_T2T, OP_RESET_COUNTER, OP_CLEAR_TEX, OP_CLEAR_BUF, OP_DEPTH_CLAMP, OP_RENDER_COND, OP_FENCE_SYNC, OP_TF_BIND, OP_TF_STATE, OP_RAST_DISCARD, OP_VP_SWIZZLE, OP_BIND_TEX1, OP_PRIM_RESTART, OP_COUNT_ }; // Payload (immediately follows op_hdr) typedef struct { int32_t n; const tex_t *color[8]; view_t cview[8]; uint8_t has_cview[8]; const tex_t *depth; view_t dview; uint8_t has_dview; } p_set_rt; @@ -112,6 +112,7 @@ typedef struct { float depth; int32_t depth_mask, stencil, stencil_mask; } p_cle typedef struct { int32_t first, n; float v[16][6]; } p_viewports; // x, y, w, h, near, far (near and far are overridden by DEPTH_RANGE) typedef struct { int32_t x, y, w, h; } p_scissor; typedef struct { float n, f; } p_depth_range; +typedef struct { uint32_t on, index; } p_prim_restart; typedef struct { int32_t on; } p_depth_clamp; // SetDepthClamp: depth outside [near, far] is clamped instead of clipped (Metal's depth clip mode) typedef struct { int32_t first, n; uint8_t sw[16][4]; } p_vp_swizzle; // SetViewportSwizzles: per viewport the source of clip x, y, z, w (NVNviewportSwizzle) XOR the identity (0, 2, 4, 6), so 0 = unchanged typedef struct { const prog_t *prog; int32_t stages; } p_bind_program; diff --git a/dm/gfx/nvn/nvn_refl.h b/dm/gfx/nvn/nvn_refl.h index 63e18a3..cdd47d5 100644 --- a/dm/gfx/nvn/nvn_refl.h +++ b/dm/gfx/nvn/nvn_refl.h @@ -7,7 +7,7 @@ #include enum { NVN_RB_CBUF = 1, NVN_RB_SAMP, NVN_RB_TEX, NVN_RB_IMG, NVN_RB_TBUF, - NVN_RB_SBUFP, NVN_RB_SUPPORT, NVN_RB_C1, NVN_RB_DRV0, NVN_RB_DRV2, NVN_RB_SAMPT, NVN_RB_UBOP, NVN_RB_TEXU, NVN_RB_SAMPU, NVN_RB_SAMPI, NVN_RB_SBUFU, NVN_RB_TEXD, NVN_RB_SAMPD, NVN_RB_IMGA, NVN_RB_TEXA, NVN_RB_SAMPA }; + NVN_RB_SBUFP, NVN_RB_SUPPORT, NVN_RB_C1, NVN_RB_DRV0, NVN_RB_DRV2, NVN_RB_SAMPT, NVN_RB_UBOP, NVN_RB_TEXU, NVN_RB_SAMPU, NVN_RB_SAMPI, NVN_RB_SBUFU, NVN_RB_TEXD, NVN_RB_SAMPD, NVN_RB_IMGA, NVN_RB_TEXA, NVN_RB_SAMPA, NVN_RB_GEOMETRY }; // TEXA / SAMPA: an array of n handles in the driver table c2 that the shader indexes at run time (dmsh_build.py c2_array): element k = the texture / sampler of the slot whose c2 word lies // at byte off + 8k (combined, else separate); words outside both tables give the dummy. Luigi's Mansion 3's shadow cascades // IMGA: SPIRV-Cross's MSL 2.3 image atomics: a device atomic_uint / atomic_int pointer (_atomic) beside the image of NVN image slot r; the replay binds the image's storage address diff --git a/dm/gfx/nvn/nvn_refl.m b/dm/gfx/nvn/nvn_refl.m index 0769953..dcc1d62 100644 --- a/dm/gfx/nvn/nvn_refl.m +++ b/dm/gfx/nvn/nvn_refl.m @@ -81,6 +81,7 @@ int nvn_refl_from_json(NSDictionary *j, nvn_refl *o, char *err, int errlen) { else if ([k isEqualToString:@"sbuf"]) { r->kind = NVN_RB_SBUFP; r->rw = sbuf_rw(b); } else if ([k isEqualToString:@"ubo_ptr"]) r->kind = NVN_RB_UBOP; else if ([k isEqualToString:@"sbuf_ubo"]) { r->kind = NVN_RB_SBUFU; r->rw = sbuf_rw(b); r->off = (uint16_t)[b[@"off"] intValue]; } + else if ([k isEqualToString:@"geometry"]) { if (reg < 0 || reg > 4) FAIL("invalid geometry helper slot"); r->kind = NVN_RB_GEOMETRY; } else if ([k isEqualToString:@"support"]) r->kind = NVN_RB_SUPPORT; else if ([k isEqualToString:@"c1"]) r->kind = NVN_RB_C1; else if ([k isEqualToString:@"drvcb"]) r->kind = [b[@"bank"] intValue] == 2 ? NVN_RB_DRV2 : NVN_RB_DRV0; diff --git a/dm/gfx/tests/.gitignore b/dm/gfx/tests/.gitignore index 056a7dc..1622539 100644 --- a/dm/gfx/tests/.gitignore +++ b/dm/gfx/tests/.gitignore @@ -44,6 +44,8 @@ t_ub t_ub.dSYM/ t_vbuf t_vbuf.dSYM/ +t_geometry +t_geometry.dSYM/ t_dirty_race t_dirty_race.dSYM/ t_vin diff --git a/dm/gfx/tests/Makefile b/dm/gfx/tests/Makefile index 6e8e461..7f6fc71 100644 --- a/dm/gfx/tests/Makefile +++ b/dm/gfx/tests/Makefile @@ -59,6 +59,8 @@ t_ub: t_ub.m $(MTL_T_DEP) clang $(CFLAGS) -fobjc-arc -o $@ t_ub.m $(MTL_T_SRC) $(FW) t_vbuf: t_vbuf.m $(MTL_T_DEP) clang $(CFLAGS) -fobjc-arc -o $@ t_vbuf.m $(MTL_T_SRC) $(FW) +t_geometry: t_geometry.m $(MTL_T_DEP) + clang $(CFLAGS) -fobjc-arc -o $@ t_geometry.m $(MTL_T_SRC) $(FW) t_mip_extent: t_mip_extent.m ../nvn/hle_nvn.c ../../host/crash.c ../../host/hle_bigstack.c t_host_stubs.c $(GFX) $(GFX_H) clang $(CFLAGS) -fobjc-arc -o $@ t_mip_extent.m ../../host/crash.c ../../host/hle_bigstack.c t_host_stubs.c $(filter-out ../nvn/nvn_mtl.m,$(GFX)) $(FW) t_rt_range_shape: t_rt_range_shape.m $(MTL_T_DEP) @@ -80,7 +82,7 @@ t_pfv: t_pfv.m $(MTL_T_DEP) # The Vulkan layer (#included) over the whole NVN layer, whose device and present path it uses t_vk_desc: t_vk_desc.m ../vk/hle_vk.m $(MTL_T_DEP) clang $(CFLAGS) -I../../third_party/vulkan-headers/include -fobjc-arc -o $@ t_vk_desc.m $(MTL_T_SRC) ../nvn/nvn_mtl.m $(FW) -run: t_nvn t_dirty_slots t_dirty_race t_builtin t_vin t_tbuf2d t_deswz_gpu t_pace t_fstep t_refl t_hmap t_cover t_fuse_check t_present_crop t_reorder_chain t_defer_chain t_zskip t_xv t_ub t_vbuf t_mip_extent t_rt_range_shape t_rt_range_ro t_rt_range t_rt_depth_ro t_pso_skey t_pfv t_view_levels t_view_swizzle t_vk_desc +run: t_nvn t_dirty_slots t_dirty_race t_builtin t_vin t_tbuf2d t_deswz_gpu t_pace t_fstep t_refl t_hmap t_cover t_fuse_check t_present_crop t_reorder_chain t_defer_chain t_zskip t_xv t_ub t_vbuf t_geometry t_mip_extent t_rt_range_shape t_rt_range_ro t_rt_range t_rt_depth_ro t_pso_skey t_pfv t_view_levels t_view_swizzle t_vk_desc ./t_nvn ./t_dirty_slots ./t_dirty_race @@ -101,6 +103,7 @@ run: t_nvn t_dirty_slots t_dirty_race t_builtin t_vin t_tbuf2d t_deswz_gpu t_pac ./t_xv ./t_ub MTL_DEBUG_LAYER=1 ./t_vbuf + MTL_DEBUG_LAYER=1 ./t_geometry DM_NVN_VBUF_CACHE=0 MTL_DEBUG_LAYER=1 ./t_vbuf MTL_DEBUG_LAYER=1 ./t_mip_extent MTL_DEBUG_LAYER=1 ./t_mip_extent --stencil-only diff --git a/dm/gfx/tests/t_geometry.m b/dm/gfx/tests/t_geometry.m new file mode 100644 index 0000000..308d629 --- /dev/null +++ b/dm/gfx/tests/t_geometry.m @@ -0,0 +1,180 @@ +// Geometry assembly, GPU strip compaction, and production capture/compute/raster replay. +#include "../nvn/nvn_mtl.m" +void *front_metal_layer(void) { return NULL; } +module_t *module_of(const void *p) { (void)p; return NULL; } +module_t g_mod[MAX_MOD]; int g_nmod; +void svc_thread_dump(void) {} +uint64_t now_ns(void) { return bp_now(); } +static int checks, failed; +#define EXPECT(name, want, got) do { uint64_t check_want=(want), check_got=(got); checks++; if(check_want!=check_got) { fprintf(stderr,"%s: expected %llu, got %llu\n",name,(unsigned long long)check_want,(unsigned long long)check_got); failed++; } } while(0) +static void finish(void) { + EXPECT("submission completed",1,mtl_wait(mtl_sub_commit(),5000000000ull)); + EXPECT("GPU error",0,mtl_last_commit_error()); +} +static id library(NSString *source) { + NSError *e=nil; id l=[g_dev newLibraryWithSource:source options:nil error:&e]; + if(!l) { fprintf(stderr,"%s\n",e.localizedDescription.UTF8String); abort(); } return l; +} +static void assembly(void) { + uint32_t a[]={10,11,12,13,UINT32_MAX,20,21,22}, out[32]; + uint32_t want[]={10,11,12,12,11,13,20,21,22}; + EXPECT("strip count",9,nvn_geo_assemble(5,a,8,1,UINT32_MAX,NULL,0)); + EXPECT("strip write",9,nvn_geo_assemble(5,a,8,1,UINT32_MAX,out,32)); + EXPECT("strip winding and restart",0,memcmp(out,want,sizeof want)); + for(int i=0;i<32;i++) out[i]=123; + EXPECT("short output rejected",SIZE_MAX,nvn_geo_assemble(5,a,8,1,UINT32_MAX,out,8)); + for(int i=0;i<32;i++) EXPECT("short output untouched",123,out[i]); + uint32_t fan[]={10,11,12,10,12,13}; + EXPECT("fan",6,nvn_geo_assemble(6,a,4,0,0,out,32)); + EXPECT("fan order",0,memcmp(out,fan,sizeof fan)); + uint32_t loop[]={10,11,11,12,12,10}; + EXPECT("loop",6,nvn_geo_assemble(2,a,3,0,0,out,32)); + EXPECT("loop closure",0,memcmp(out,loop,sizeof loop)); + EXPECT("line adjacency",8,nvn_geo_assemble(11,a,5,0,0,out,32)); + EXPECT("adjacent second edge",11,out[4]); + EXPECT("triangle adjacency",6,nvn_geo_assemble(12,a,8,0,0,out,32)); + EXPECT("unsupported",SIZE_MAX,nvn_geo_assemble(99,a,8,0,0,NULL,0)); +} +static void pack_test(void) { + id l=library(@(k_nvn_geo_pack_msl)); NSError *e=nil; + id p=[g_dev newComputePipelineStateWithFunction:[l newFunctionWithName:@"geo_pack_indices"] error:&e]; + if(!p) abort(); + uint32_t data[]={0,1,2,3,UINT32_MAX,4,5,6, UINT32_MAX,UINT32_MAX,UINT32_MAX,UINT32_MAX,UINT32_MAX,UINT32_MAX,UINT32_MAX,UINT32_MAX, 8,9,10,UINT32_MAX,11,12,13,UINT32_MAX}; + uint32_t want[]={0,1,2,2,1,3,4,5,6,8,9,10,11,12,13}; + id b=[g_dev newBufferWithLength:4096 options:MTLResourceStorageModeShared]; res_add(b); + for(int t=0;t<3;t++) { + memset(b.contents,0xcc,4096); memcpy(b.contents,data,sizeof data); + struct {uint64_t src,dst,args;uint32_t groups,stride,topology,capacity;} j={b.gpuAddress,b.gpuAddress+512,b.gpuAddress+1024,3,8,t==0?7:t==1?6:1,100}; + memcpy((char*)b.contents+2048,&j,sizeof j); + mtl_sub_begin(); id en=enc_c_begin(NULL); enc_c_pso(en,p);enc_c_args(en,b.gpuAddress+2048,0); + enc_c_dispatch(en,MTLSizeMake(1,1,1),MTLSizeMake(1,1,1));enc_c_end(en);finish(); + uint32_t *args=(uint32_t*)((char*)b.contents+1024); + EXPECT("compacted index count",t==0?15:t==1?18:13,args[0]); + EXPECT("indirect instance count",1,args[1]); + if(!t) EXPECT("strip order across empty invocations",0,memcmp((char*)b.contents+512,want,sizeof want)); + EXPECT("output bound sentinel",0xcccccccc,((uint32_t*)((char*)b.contents+512))[args[0]]); + } +} +static NvShader *shader(id l, NSString *name, int stage, const int *helpers, int n) { + NvShader *s=[NvShader new];s->stage=stage;s->fn=[l newFunctionWithName:name];s->rf.nb=n; + if(n) {s->ae=[s->fn newArgumentEncoderWithBufferIndex:0];s->arg_len=s->ae.encodedLength;} + for(int i=0;irf.b[i]=(nvn_rbind){.kind=NVN_RB_GEOMETRY,.reg=helpers[i],.aid=i}; + return s; +} +static void replay(int mode) { + id l=library(@"#include \nusing namespace metal;\n" + "struct C {device float *dst;uint4 info;};\n" + "vertex void capture(uint v[[vertex_id]],uint i[[instance_id]],constant C&c[[buffer(13)]]) {uint n=v-c.info.x,inst=i-c.info.z;device float*p=c.dst+(inst*c.info.y+n)*144; p[0]=float(n);p[1]=float(inst);p[2]=0;p[3]=1;}\n" + "vertex float4 unused(uint v[[vertex_id]]) {return float4(0,0,0,1);}\n" + "struct G{device const float*in[[id(0)]];device float4*out[[id(1)]];device uint*ix[[id(2)]];constant uint4*info[[id(3)]];device const uint*map[[id(4)]];};\n" + "kernel void geometry(constant G&g[[buffer(0)]],uint3 t[[thread_position_in_grid]]) {if(t.x>=g.info[1].x||t.y>=g.info[0].y)return;uint k=(t.y*g.info[1].x+t.x)*2+t.z;uint v=g.map[t.x];float2 q=float2(g.in[(t.y*g.info[0].x+v)*144],g.in[(t.y*g.info[0].x+v)*144+1]);float2 a=q*0.5-0.9;float2 d[4]={float2(0),float2(.4,0),float2(0,.4),float2(.4)};for(uint n=0;n<4;n++){g.out[k*4+n]=float4(a+d[n],0,1);g.ix[k*5+n]=k*4+n;}g.ix[k*5+4]=0xffffffffu;}\n" + "struct V{device const float4*p[[id(0)]];};vertex float4 reader(uint v[[vertex_id]],constant V&a[[buffer(0)]]){return a.p[v];}\n" + "fragment float4 red(){return float4(1,0,0,1);}\n"); + int helpers[]={0,1,2,3,4}, rh[]={1}; + NvProg *pr=[NvProg new];pr->sh[0]=shader(l,@"unused",0,NULL,0);pr->sh[0]->geo_fn=[l newFunctionWithName:@"capture"]; + pr->sh[1]=shader(l,@"red",1,NULL,0);pr->sh[2]=shader(l,@"geometry",2,helpers,5); + NvShader *gs=pr->sh[2];strcpy(gs->key,"0123456789abcdef_b");gs->geo_vertices=4;gs->geo_invocations=2;gs->geo_output=7;gs->geo_stride=4;gs->geo_index_stride=5; + g_shcache=[NSMutableDictionary dictionary];g_shcache[@"0123456789abcdef_bg0"]=gs;g_shcache[@"0123456789abcdef_bgv"]=shader(l,@"reader",0,rh,1); + static NSMutableArray *keep;if(!keep)keep=[NSMutableArray array];[keep addObject:pr];[keep addObject:g_shcache[@"0123456789abcdef_bgv"]]; + static prog_t cp[7];cp[mode].serial=8700+mode;serial_put(cp[mode].serial,pr); + tex_t target={.magic=MAGIC('T','E','X',0),.serial=8800+mode};target.d.width=target.d.height=32;target.d.depth=target.d.samples=target.d.levels=1;target.d.target=NVN_TEXTURE_TARGET_2D;target.d.format=NVN_FORMAT_RGBA8; + uint8_t *commands; if(posix_memalign((void**)&commands,getpagesize(),65536))abort();memset(commands,0,65536);mtl_pool_add(commands,65536); + size_t used=0; + #define EMIT(OP,X) do {size_t z=(8+sizeof(X)+7)&~7ull;op_hdr h={OP,(uint32_t)z};memcpy(commands+used,&h,8);memcpy(commands+used+8,&(X),sizeof(X));used+=z;}while(0) + p_set_rt rt={.n=1};rt.color[0]=⌖EMIT(OP_SET_RT,rt); + p_viewports vp={.n=1};vp.v[0][2]=vp.v[0][3]=32;EMIT(OP_VIEWPORTS,vp);p_scissor sc={0,0,32,32};EMIT(OP_SCISSOR,sc); + p_clear_color cl={.index=0,.mask=15,.rgba={0,0,0,1}};EMIT(OP_CLEAR_COLOR,cl); + p_bind_program bp={&cp[mode],7};EMIT(OP_BIND_PROGRAM,bp); + p_draw d={.prim=0,.first=7,.count=mode==6?9000:3,.instances=2,.base_instance=5}; + if((mode>=1&&mode<=3)||mode==5) { + int type=mode==5?1:mode-1;uint32_t ix[]={12,10,UINT32_MAX,11}; + for(int i=0;i<4;i++)memcpy(commands+8192+(i< b=[g_dev newBufferWithLength:4096 options:MTLResourceStorageModeShared]; + uint32_t *args=NULL;id argsBuffer; + for(NvArena *a in g_sub_arenas)if(g_geo_args>=a->gpu&&g_geo_args+20<=a->gpu+a->buf.length){argsBuffer=a->buf;args=(uint32_t*)((char*)argsBuffer.contents+g_geo_args-a->gpu);} + [blit() copyFromTexture:tex_mtl(&target) sourceSlice:0 sourceLevel:0 sourceOrigin:MTLOriginMake(0,0,0) sourceSize:MTLSizeMake(32,32,1) toBuffer:b destinationOffset:0 destinationBytesPerRow:128 destinationBytesPerImage:4096];finish(); + EXPECT("two GS invocations per input primitive",mode==6?216000:72,args?args[0]:0); + int red=0;uint8_t *px=b.contents;for(int i=0;i<1024;i++)if(px[i*4]>200)red++; + EXPECT("expanded quads rasterized",mode==6?288:216,red); + EXPECT("each instance has independent capture and output",1,px[(24*32+4)*4]>200); + mtl_pool_del(commands);mtl_drain();free(commands); +} +// Optional real-game fixtures stay outside the repository. The supplied directory +// is a dmsh_build result for the current chain, containing these three GS keys. +static void translated(const char *directory) { + g_msl_dir=@(directory);g_shcache=[NSMutableDictionary dictionary]; + const char *keys[]={"1b378c5c014e3a32","d57cdb168fdf6927","2341c1be4fcbf690"}; + float *uniforms;if(posix_memalign((void**)&uniforms,getpagesize(),65536))abort();memset(uniforms,0,65536);mtl_pool_add(uniforms,65536); + NvShader *vs=shader_get(@"ba2512f7f6973541_b",0); + EXPECT("real capture vertex loaded",1,vs&&vs->geo_fn); + if(vs&&vs->geo_fn) { + for(int v=0;v<3;v++)for(int c=0;c<7;c++)uniforms[v*7+c]=(v*7+c)*.03125f; + id b=[g_dev newBufferWithLength:4096 options:MTLResourceStorageModeShared];res_add(b);memset(b.contents,0xcc,4096); + uint64_t head[2]={b.gpuAddress,0};uint32_t info[4]={1,2,5,2};memcpy((char*)b.contents+3072,head,16);memcpy((char*)b.contents+3088,info,16); + state_reset();S.ssbo[0][0]=(p_bind_buf){.stage=0,.index=0,.addr=(uint64_t)uniforms,.size=65536}; + mtl_sub_begin();MTL4RenderPassDescriptor *d=[MTL4RenderPassDescriptor new];d.renderTargetWidth=d.renderTargetHeight=d.defaultRasterSampleCount=1; + id en=enc_r_begin(d);enc_r_pso(en,geo_capture_pso(vs));args_dirty_all();encode_args(en,vs,0,1);enc_r_vbuf(en,13,b.gpuAddress+3072); + enc_r_draw_instanced(en,MTLPrimitiveTypePoint,1,2,2,5);enc_r_end(en);finish(); + for(int inst=0;inst<2;inst++)for(int v=0;v<2;v++) { + float *p=(float*)b.contents+(inst*2+v)*144,*q=uniforms+(v+1)*7; + EXPECT("capture vertex ID",1,p[0]==q[0]*2-1);EXPECT("capture y",1,p[1]==1-q[1]*2); + EXPECT("capture retains guest clip depth",1,p[2]==0);EXPECT("capture w",1,p[3]==1); + EXPECT("capture loc0",1,p[16]==q[2]);for(int c=0;c<4;c++)EXPECT("capture loc1",1,p[20+c]==q[c+3]); + EXPECT("missing varying default w",1,p[27]==1); + } + EXPECT("capture range guard",0xcccccccc,((uint32_t*)b.contents)[4*144]); + } + for(int test=0;test<3;test++) { + NvShader *s=shader_get([NSString stringWithFormat:@"%s_bg%d",keys[test],test==2?3:0],2); + EXPECT("translated geometry loaded",1,s!=nil);if(!s)continue; + NSError *e=nil;id ps=[g_dev newComputePipelineStateWithFunction:s->fn error:&e];if(!ps){fprintf(stderr,"%s\n",e.localizedDescription.UTF8String);abort();} + id b=[g_dev newBufferWithLength:32768 options:MTLResourceStorageModeShared];res_add(b);memset(b.contents,0xcc,32768); + // Two primitives and two instances: vertex count and primitive count + // differ for triangles, exposing either stride being used in its place. + int width=test==2?3:1, vertices=width*2;float *in=b.contents; + memset(in,0,vertices*2*144*4); + for(int inst=0;inst<2;inst++)for(int v=0;v en=enc_c_begin(NULL);args_dirty_all();encode_args(en,s,2,0);enc_c_pso(en,ps);enc_c_dispatch(en,MTLSizeMake(1,2,1),MTLSizeMake(32,1,1));enc_c_end(en);finish(); + float *out=(float*)((char*)b.contents+12288);uint32_t *ix=(uint32_t*)((char*)b.contents+16384); + for(int group=0;group<4;group++) { + for(unsigned v=0;vgeo_vertices;v++) { + EXPECT("emission index and instance stride",group*s->geo_vertices+v,ix[group*s->geo_index_stride+v]); + float *p=out+(group*s->geo_vertices+v)*s->geo_stride; + int iv=(group/2)*vertices+(group%2)*width+(test==2?v:0);float *q=in+iv*144; + float x=q[0]+(test==2?0:(v&1)?.3f:-.3f),y=q[1]+(test==2?0:v<2?.6f:-.6f); + EXPECT("emitted x",1,fabsf(p[0]-x)<1e-5f);EXPECT("emitted y",1,fabsf(p[1]-y)<1e-5f); + EXPECT("emitted z",1,fabsf(p[2]-.25f)<1e-5f);EXPECT("emitted w",1,p[3]==1); + EXPECT("default point size",1,p[4]==1); + if(test==2) {for(int c=0;c<3;c++) {float want=c==v?(v==0?sqrtf(.5f):1):0;EXPECT("wireframe edge distance",1,fabsf(p[9+c]-want)<1e-5f);}} + } + for(unsigned v=s->geo_vertices;vgeo_index_stride;v++)EXPECT("restart and unused index padding",UINT32_MAX,ix[group*s->geo_index_stride+v]); + } + EXPECT("output bound sentinel",0xcccccccc,((uint32_t*)out)[4*s->geo_vertices*s->geo_stride]); + EXPECT("index bound sentinel",0xcccccccc,ix[4*s->geo_index_stride]); + } + mtl_pool_del(uniforms);mtl_drain();free(uniforms); +} +int main(int argc,char **argv) {@autoreleasepool { + setvbuf(stdout,NULL,_IONBF,0);assembly();mtl_init();pack_test();for(int mode=0;mode<7;mode++)replay(mode); + if(argc>1)translated(argv[1]); + printf("t_geometry: %d checks, %d failed\n",checks,failed);return failed!=0; +}} diff --git a/dm/gfx/tools/dmsh_build.py b/dm/gfx/tools/dmsh_build.py index a76905f..63319e9 100644 --- a/dm/gfx/tools/dmsh_build.py +++ b/dm/gfx/tools/dmsh_build.py @@ -7,6 +7,7 @@ # Environment IOSOUT=dir: the same MSL also goes through dm/ios/tools/ios_metal.compile to produce an iphoneos metallib + reflection (chain_metal records the iOS compile convention) # Final summary: success / failure counts and the distribution of reasons; distribution of driver segment read offsets (those outside the range the replay layer can fill are listed separately) import ast, inspect, os, re, sys, json, struct, hashlib, shutil, subprocess, tempfile, collections, threading, concurrent.futures as cf +import dmsh_geometry DM_ROOT = os.environ.get('DM_ROOT') or os.path.expanduser('~/dm-work') # Workspace root (game files, build outputs and run artifacts are all under it) HOME = os.path.expanduser('~') dm_dir, out = sys.argv[1:3]; want = set(sys.argv[3:]); cache_root = out @@ -106,6 +107,7 @@ def cache_outputs(key, digest, cached=False): ('ios', IOSOUT, [key + '_b.metallib', key + '_b.json'])): if not directory: continue base = os.path.join(root, label) if cached else directory + names += [key + s + ext for s in ('_bg0', '_bg1', '_bg2', '_bg3', '_bg4', '_bgv') for ext in ('.metallib', '.json', '.metal') if label == 'mac' or ext != '.metal'] found = [n for n in names if os.path.exists(os.path.join(base, n))] if key + '_b.metallib' not in found or key + '_b.json' not in found: return None files[label] = found @@ -447,7 +449,8 @@ def reflect(key, stage, msl, res): for m in re.finditer(r'^\s*(.+?)\s+(\w+)\s*\[\[id\((\d+)\)\]\];', body.group(1) if body else '', re.M): ty, nm, aid = m.group(1).strip(), m.group(2), int(m.group(3)) e = {'msl_name': nm, 'msl_type': ty, 'arg_id': aid} - if nm == 'support_buffer': e.update(kind='support') + if nm in dmsh_geometry.HELPERS: e.update(kind='geometry', reg=dmsh_geometry.HELPERS[nm]) + elif nm == 'support_buffer': e.update(kind='support') elif re.fullmatch(r'[a-z]+_c(\d+)', nm): n = int(re.fullmatch(r'[a-z]+_c(\d+)', nm).group(1)) e.update(kind='cbuf', reg=n - 3) if 3 <= n <= 16 else e.update(kind='c1' if n == 1 else 'drvcb', bank=n) @@ -512,7 +515,7 @@ def unfillable(dr): RULES = [] # MSL rewrite rules attached by shader name (function, applicability test); the former dark-range remap toe has been removed (back to the original Switch brightness) # The first-stage code fingerprint does not include dmsh_fetch.py; readable-tile variants get a separate second-stage cache keyed on the generated MSL. -CODE_FP = hashlib.sha256(source_without_rule_bodies().encode() + b''.join(b'\0' + open(m.__file__, 'rb').read() for m in (dmsh_chain,) + ((ios_metal,) if IOSOUT else ()))).hexdigest() +CODE_FP = hashlib.sha256(source_without_rule_bodies().encode() + b''.join(b'\0' + open(m.__file__, 'rb').read() for m in (dmsh_chain, dmsh_geometry) + ((ios_metal,) if IOSOUT else ()))).hexdigest() TOOL_FP = tool_fingerprint().encode() _CAST = ('as_type(', 'as_type(') @@ -723,16 +726,71 @@ def _ep_drop(x, ids): # OpEntryPoint without the given interface IDs: model, f y[0] = len(y) << 16 | (x[0] & 0xffff) return y +def geometry_finish(key, w, j, c1): + """Build all five input-topology variants; the draw selects one at replay. + Resources retain logical NVN stage 2 even though Metal executes a kernel. + """ + code = open(j['code'], 'rb').read() + w2, w3, w4 = struct.unpack_from('<3I', code, 8) + nv, inv, topology = w4 & 4095, w2 >> 24, w3 >> 24 & 15 + if topology not in (1, 6, 7) or not nv or not inv: + return 'geometry failed', 'invalid output declaration', None + nidx = nv * 2 # one restart after every emitted vertex, including incomplete strips + jobs = [{**j, 'key': key + '_g' + str(t), 'geometry_topology': t} for t in range(5)] + jp = os.path.join(w, key + '_geometry.json'); atomic_json(jp, jobs) + rx = subprocess.run([XLATE, jp, w], capture_output=True, text=True) + if rx.returncode: return 'geometry failed', rx.stderr.strip()[:160], None + base = None + for t, job in enumerate(jobs): + k = job['key']; spv = os.path.join(w, k + '.spv') + dmsh_geometry.flatten_sets(spv) + r = subprocess.run(['spirv-cross', *XC, spv], capture_output=True, text=True) + if r.returncode: return 'geometry MSL failed', r.stderr.strip()[:160], None + src = dmsh_geometry.topology_pointer(r.stdout) + res = json.load(open(os.path.join(w, k + '.res.json'))) + refl = {'key': key + '_bg' + str(t), 'route': 'B', 'chain': CHAIN, 'dm_ctl': key, + 'source': f'{loc[key][0]}#{loc[key][1]}', 'pc_paired': pc_of[key], 'stage': 'gs', + 'entry': 'main0', 'msl_entry_kind': 'kernel', 'threadgroup_size': [32, 1, 1], + 'geometry': {'vertices': nv, 'invocations': inv, 'output': topology, + 'stride': res['geometry_stride'], 'index_stride': nidx}, + 'c1': c1.hex(), 'notes': res['notes'], 'drv_reads': drv_reads(src), 'drv_unfillable': [], + 'bindings': reflect(key, 'gs', src, res), 'vertex_inputs': [], 'raster': {}} + def save(suffix, text, meta): + path = os.path.join(out, key + suffix + '.metal'); open(path, 'w').write(text) + MTL.compile('mac', path, os.path.join(out, key + suffix + '.metallib')) + atomic_json(os.path.join(out, key + suffix + '.json'), dict(meta, chain_metal=MAC_RECORD)) + if IOSOUT: + MTL.compile('ios', path, os.path.join(IOSOUT, key + suffix + '.metallib')) + atomic_json(os.path.join(IOSOUT, key + suffix + '.json'), dict(meta, chain_metal=ios_metal.RECORD)) + save('_bg' + str(t), src, refl) + if t == 0: + base = {**refl, 'key': key + '_b'} + save('_b', src, base) + spv = os.path.join(w, k + '.reader.spv'); dmsh_geometry.flatten_sets(spv) + r = subprocess.run(['spirv-cross', *XC, spv], capture_output=True, text=True) + if r.returncode: return 'geometry reader failed', r.stderr.strip()[:160], None + reader = vs_layer(vs_init(r.stdout)) + analysis, full = vs_depth(reader) + meta = {'key': key + '_bgv', 'route': 'B', 'chain': CHAIN, 'dm_ctl': key, + 'stage': 'vs', 'entry': 'main0', 'entry_z': 'main0_z', 'msl_entry_kind': 'vertex', + 'geometry_reader': True, 'geometry_output': topology, 'c1': '', 'notes': [], 'drv_reads': {}, 'drv_unfillable': [], + 'bindings': reflect(key, 'vs', analysis, {'sbufs': []}), 'vertex_inputs': [], 'raster': {}} + save('_bgv', full, meta) + return 'ok', '', base + + def finish(key, w, j, c1): name, k = loc[key] msl = os.path.join(w, key + '.metal'); lib = os.path.join(out, key + '_b.metallib') - if j['stage'] == 'gs': # a geometry shader that only picks the layer is folded into the vertex shader by the host (see gs_slice); any other has no Metal counterpart and fails below + if j['stage'] == 'gs': # keep the layer-only fold; other geometry runs as compute s = gs_slice(os.path.join(w, key + '.spv')) if s: refl = {'key': key + '_b', 'route': 'B', 'chain': CHAIN, 'dm_ctl': key, 'source': f'{name}#{k}', 'pc_paired': pc_of[key], 'stage': 'gs', 'gs_slice': s, 'notes': [], 'drv_reads': '', 'drv_unfillable': [], 'bindings': []} # no library: the host draws with the vertex shader's layer entry points write_refl(key, refl) return 'ok', '', refl + try: return geometry_finish(key, w, j, c1) + except (ValueError, subprocess.CalledProcessError) as e: return 'geometry failed', str(e)[:160], None if j['stage'] == 'vs': spv_single_lane(os.path.join(w, key + '.spv')) # one-lane subgroups (see spv_single_lane) r = subprocess.run(['spirv-cross', *XC, os.path.join(w, key + '.spv'), '--output', msl], capture_output=True, text=True) if r.returncode: return 'MSL failed', r.stderr.strip()[:160], None @@ -755,7 +813,9 @@ def finish(key, w, j, c1): if pad: open(msl, 'w').write(src) lay = None if j['stage'] == 'vs': # the two depth-convention entry points (see vs_depth); the analysis below uses the source with only main0 + capture = dmsh_geometry.capture(src) src, full = vs_depth(src) + full += capture if j.get('tf'): full += vs_tf(src, j['tf']) # transform feedback capture (see vs_tf) plain = full full, lay = vs_layer_entry(full) # layer entry points for a slice-writing geometry shader (see vs_layer_entry) @@ -776,7 +836,7 @@ def finish(key, w, j, c1): entry = re.search(r'(vertex|fragment|kernel)\s+\S+\s+(\w+)\s*\(', src) dr = drv_reads(src) refl = {'key': key + '_b', 'route': 'B', 'chain': CHAIN, 'dm_ctl': key, 'source': f'{name}#{k}', 'pc_paired': pc_of[key], 'stage': j['stage'], - 'entry': entry.group(2) if entry else 'main0', 'msl_entry_kind': entry.group(1) if entry else None, **({'entry_z': 'main0_z'} if j['stage'] == 'vs' else {}), + 'entry': entry.group(2) if entry else 'main0', 'msl_entry_kind': entry.group(1) if entry else None, **({'entry_z': 'main0_z', 'entry_geometry_capture': 'main0_gs'} if j['stage'] == 'vs' else {}), **({'entry_tf': 'main0_tf', 'tf_strides': [e[2] if e else 0 for e in j['tf']]} if j.get('tf') else {}), **({'entry_layer': 'main0_l', 'entry_layer_z': 'main0_lz', 'layer_from': lay} if lay else {}), **({'entry_u': 'main0_u'} if fu else {}), 'threadgroup_size': j.get('local'), 'c1': c1.hex(), 'notes': res['notes'] + (['not in the answer table, queries use defaults'] if j.get('no_facts') else []), 'drv_reads': dr, 'drv_unfillable': unfillable(dr), diff --git a/dm/gfx/tools/dmsh_chain.lock b/dm/gfx/tools/dmsh_chain.lock index a757326..98de579 100644 --- a/dm/gfx/tools/dmsh_chain.lock +++ b/dm/gfx/tools/dmsh_chain.lock @@ -1,8 +1,8 @@ # Translation chain tool fingerprints (written by dmsh_chain.py --update-lock; regenerate after changing tools and commit it) -dmsh_xlate.dll 34dc61131479cb40 -Ryujinx.Graphics.Shader.dll d0b54941cc2237d9 -Ryujinx.Common.dll 78c38eb78e9e8b4c -xlate_source 7202f939c87f92ea +dmsh_xlate.dll 08d31903d666ea0c +Ryujinx.Graphics.Shader.dll eb315f0da558ca5a +Ryujinx.Common.dll b99db57e72c1fa16 +xlate_source 16bbef6c762573ee spirv-cross d9dc197f061b42a5 metal_macosx Apple metal version 32023.921 (metalfe-32023.921.6) metal_iphoneos Apple metal version 32023.921 (metalfe-32023.921.6) diff --git a/dm/gfx/tools/dmsh_chain.py b/dm/gfx/tools/dmsh_chain.py index c544eae..636f51a 100644 --- a/dm/gfx/tools/dmsh_chain.py +++ b/dm/gfx/tools/dmsh_chain.py @@ -14,7 +14,7 @@ DM_ROOT = os.environ.get('DM_ROOT') or os.path.expanduser('~/dm-work') # Works HERE = os.path.dirname(os.path.abspath(__file__)); GFX = os.path.dirname(HERE); HOME = os.path.expanduser('~') sys.path.insert(0, os.path.join(GFX, '../games')); import game as _game # game profiles GAME = _game.load() -FILES = ['tools/dmsh_chain.py', 'tools/dmsh_build.py', 'tools/dmsh_fetch.py', 'tools/dmsh_vin.py', 'tools/dmsh_facts.py', 'tools/dmsh_xlate/Program.cs', 'tools/dmsh_xlate/dmsh_xlate.csproj', '../ios/tools/ios_metal.py', 'tools/dmsh_chain.lock'] +FILES = ['tools/dmsh_chain.py', 'tools/dmsh_build.py', 'tools/dmsh_fetch.py', 'tools/dmsh_vin.py', 'tools/dmsh_geometry.py', 'tools/dmsh_facts.py', 'tools/dmsh_xlate/Program.cs', 'tools/dmsh_xlate/dmsh_xlate.csproj', '../ios/tools/ios_metal.py', 'tools/dmsh_chain.lock'] TABLES = ['shader_facts.tsv', 'shader_map.tsv', 'shader_map.tsv.conflicts.tsv', 'shader_pairs.tsv'] # in the game profile folder LOCK = os.path.join(HERE, 'dmsh_chain.lock'); HEADER = str(GAME.table('dmsh_chain.h')) # the translator defaults to the in-repo build that matches the lock file (a rebuilt dll has different fingerprints) diff --git a/dm/gfx/tools/dmsh_geometry.py b/dm/gfx/tools/dmsh_geometry.py new file mode 100644 index 0000000..9504a9e --- /dev/null +++ b/dm/gfx/tools/dmsh_geometry.py @@ -0,0 +1,119 @@ +"""Offline geometry helpers. No game IDs or shader keys participate in this ABI. + +VS capture records are 144 words: position 0, point size 4, clip distances +5..12, layer 13, viewport 14, reserved 15, generic attributes 16..143. +This matches ResourceReservations.FillGeometryInputMap. Capture uses the native +vertex fetch, including its instance divisors and format conversions. +""" +import re +import struct + +WORDS = 144 +CAPTURE_SLOT = 13 +HELPERS = {'vertex_output': 0, 'geometry_vb_output': 1, + 'geometry_ib_output': 2, 'vb_info': 3, 'trb_data': 4, + 'vb_input': 1} + + +def capture(src): + """Append a rasterizer-discard vertex entry to the unmodified-depth source.""" + m = re.search(r'\bvertex main0_out main0\((.*?)\)\s*\{', src, re.S) + if not m: + raise ValueError('geometry capture: missing main0 vertex entry') + params = m.group(1) + body = src[m.end():] + if not body.rstrip().endswith('}'): + raise ValueError('geometry capture: unexpected function ending') + pro = '' + for semantic, name in [('vertex_id', 'dm_vid'), ('instance_id', 'dm_iid')]: + found = re.search(r'uint (\w+) \[\[' + semantic + r'\]\]', params) + if found: + pro += f' uint {name} = {found.group(1)};\n' + else: + params += (', ' if params else '') + f'uint {name} [[{semantic}]]' + st = re.search(r'struct main0_out\s*\{(.*?)\};', src, re.S) + if not st: + raise ValueError('geometry capture: missing output struct') + stores = [] + for line in st.group(1).splitlines(): + line = line.strip() + if not line: + continue + v = re.fullmatch(r'(float4|uint4|int4) (\w+) \[\[user\(locn(\d+)\)\]\];', line) + if v: + if int(v[3]) >= 32: + raise ValueError('geometry capture: attribute outside Maxwell map') + stores += [f'dm_p[{16 + int(v[3]) * 4 + c}] = as_type(out.{v[2]}.{s});' for c, s in enumerate('xyzw')] + continue + v = re.fullmatch(r'float4 (\w+) \[\[position(?:, invariant)?\]\];', line) + if v: + stores += [f'dm_p[{c}] = as_type(out.{v[1]}.{s});' for c, s in enumerate('xyzw')] + continue + v = re.fullmatch(r'(float|uint|int) (\w+) \[\[(point_size|render_target_array_index|viewport_array_index)\]\];', line) + if v: + offset = {'point_size': 4, 'render_target_array_index': 13, 'viewport_array_index': 14}[v[3]] + stores.append(f'dm_p[{offset}] = as_type(out.{v[2]});') + continue + v = re.fullmatch(r'float (\w+)\[(\d+)\] \[\[clip_distance\]\];', line) + if v and int(v[2]) <= 8: + stores += [f'dm_p[{5 + c}] = as_type(out.{v[1]}[{c}]);' for c in range(int(v[2]))] + continue + raise ValueError('geometry capture: unknown output ' + line) + params += f', constant dm_geometry_capture& dm_gs [[buffer({CAPTURE_SLOT})]]' + pro += (f' uint4 dm_ci = dm_gs.info; device uint* dm_capture = dm_gs.dst;\n' + f' if (dm_vid - dm_ci.x >= dm_ci.y || dm_iid - dm_ci.z >= dm_ci.w) return;\n' + f' device uint* dm_p = dm_capture + ((ulong(dm_iid - dm_ci.z) * dm_ci.y + dm_vid - dm_ci.x) * {WORDS});\n') + # Initialize missing attributes exactly as the normal vertex builder does. + epilogue = ('{ for (uint dm_k = 0; dm_k < 144; ++dm_k) dm_p[dm_k] = 0; ' + 'dm_p[3] = dm_p[4] = 0x3f800000u; ' + 'for (uint dm_k = 19; dm_k < 144; dm_k += 4) dm_p[dm_k] = 0x3f800000u; ' + + ' '.join(stores) + ' return; }') + if 'return out;' not in body: + raise ValueError('geometry capture: missing return') + return '\nstruct dm_geometry_capture { device uint* dst; uint4 info; };\nvertex void main0_gs(' + params + ')\n{\n' + pro + body.replace('return out;', epilogue) + + +def flatten_sets(path): + """Give auxiliary sets their own binding ranges in the ordinary set-0 ABI.""" + data = open(path, 'rb').read() + w = list(struct.unpack('<%dI' % (len(data) // 4), data)) + sets, bindings = {}, {} + i = 5 + while i < len(w): + n, op = w[i] >> 16, w[i] & 65535 + if not n or i + n > len(w): + raise ValueError('invalid SPIR-V instruction') + if op == 71 and n == 4: + if w[i + 2] == 34: sets[w[i + 1]] = (w[i + 3], i + 3) + if w[i + 2] == 33: bindings[w[i + 1]] = i + 3 + i += n + for ident, (s, at) in sets.items(): + if s: + if s not in (1, 2) or ident not in bindings: + raise ValueError('unknown geometry auxiliary descriptor set') + w[bindings[ident]] += 10000 if s == 1 else 11000 + w[at] = 0 + open(path, 'wb').write(struct.pack('<%dI' % len(w), *w)) + + +def topology_pointer(src): + """Topology remap uses uint words; avoid allocating a texture view per draw.""" + src, n = re.subn(r'texture_buffer trb_data', 'device const uint* trb_data', src) + if n != 1: + raise ValueError('missing geometry topology buffer') + # Match the balanced read argument rather than relying on expression shape. + prefix = 'spvDescriptorSet0.trb_data.read(' + while prefix in src: + start = src.index(prefix) + at, depth = start + len(prefix), 1 + end = at + while depth: + if src[end] == '(': depth += 1 + if src[end] == ')': depth -= 1 + end += 1 + if src[end:end + 2] != '.x': + raise ValueError('unexpected topology read') + src = src[:start] + 'as_type(spvDescriptorSet0.trb_data[' + src[at:end - 1] + '])' + src[end + 2:] + if 'trb_data.read' in src: + raise ValueError('unconverted geometry topology read') + return src diff --git a/dm/gfx/tools/dmsh_xlate/Program.cs b/dm/gfx/tools/dmsh_xlate/Program.cs index 270619c..1b167c6 100644 --- a/dm/gfx/tools/dmsh_xlate/Program.cs +++ b/dm/gfx/tools/dmsh_xlate/Program.cs @@ -30,7 +30,7 @@ static class SwshXlate { readonly byte[] _code; readonly JsonObject _job; int _binding = 1; public readonly List Notes = new(); readonly byte[] _c1; - public Accessor(byte[] code, JsonObject job, Dictionary imageTypes = null) { _code = code; _job = job; _c1 = job["c1"] is JsonNode h ? Convert.FromHexString((string)h) : Array.Empty(); _imageTypes = imageTypes; } + public Accessor(byte[] code, JsonObject job, Dictionary imageTypes = null) { if (job["geometry_topology"] != null) _binding = 40; _code = code; _job = job; _c1 = job["c1"] is JsonNode h ? Convert.FromHexString((string)h) : Array.Empty(); _imageTypes = imageTypes; } // A texture query on an image handle (TXQ on c2 0x120 + 8 r: Unreal's GetDimensions on the RWTexture3D a compute shader writes) asks the type of that handle, which a table built // without the game's PC shaders does not answer, and the 2D default took a 3D image's depth from its width. The shader's own surface instructions give the image's type: the // first translation records that a query went unanswered (ImageQueryGuessed), and Main translates again with the types of the images it found, by c2 handle (ImageTypesOf) @@ -106,12 +106,13 @@ static class SwshXlate public int QueryComputeLocalSizeZ() => Local(2); public int QueryComputeSharedMemorySize() => _job["shared"] is JsonNode n ? (int)n : 0; // the shared memory size in the compute shader's control section (shader_split.py) static AttributeType Attr(string s) => s switch { "sint" => AttributeType.Sint, "uint" => AttributeType.Uint, _ => AttributeType.Float }; + public bool QueryGeometryInputFixed() => _job["geometry_topology"] != null; public GpuGraphicsState QueryGraphicsState() { Array32 attr = default; Array8 fout = default; if (_job["attr"] is JsonObject a) foreach (var kv in a) attr[int.Parse(kv.Key)] = Attr((string)kv.Value); if (_job["fout"] is JsonObject f) foreach (var kv in f) fout[int.Parse(kv.Key)] = Attr((string)kv.Value); - return new GpuGraphicsState(false, InputTopology.Triangles, false, TessPatchType.Triangles, TessSpacing.EqualSpacing, + return new GpuGraphicsState(false, _job["geometry_topology"] is JsonNode gt ? (InputTopology)(int)gt : InputTopology.Triangles, false, TessPatchType.Triangles, TessSpacing.EqualSpacing, false, false, false, false /* depth not rewritten: dmsh_build.py adds the GL entry point (see the file header) */, false, 1f, AlphaTestOp.Always, 0f, attr, false, fout, false, false /* no Y flip */, true /* origin upper-left */, false); } @@ -157,25 +158,33 @@ static class SwshXlate // Job debug = false: turn off DebugMode (DebugMode skips the AST optimizer and the output is full of temporaries; semantics unchanged) var flags = (job["debug"] is JsonNode dbg && !(bool)dbg ? 0 : TranslationFlags.DebugMode) | ((string)job["stage"] == "cs" ? TranslationFlags.Compute : 0); var ctx = Translator.CreateContext(0, acc, new TranslationOptions(TargetLanguage.Spirv, TargetApi.Vulkan, flags)); - ShaderProgram p = ctx.Translate(); + bool geometry = job["geometry_topology"] != null; + ShaderProgram p = ctx.Translate(geometry); Dictionary imageTypes = null; if (acc.ImageQueryGuessed && (imageTypes = Accessor.ImageTypesOf(p)).Count > 0) // a query on an image handle went unanswered: again with the images' types (see Accessor) { acc = new Accessor(code, job, imageTypes); ctx = Translator.CreateContext(0, acc, new TranslationOptions(TargetLanguage.Spirv, TargetApi.Vulkan, flags)); - p = ctx.Translate(); + p = ctx.Translate(geometry); } if (UsesFloat64(p.BinaryCode)) // Tears of the Kingdom 1.4.3: 30 shaders used double and failed in the Metal compiler { job["softfloat64"] = true; acc = new Accessor(code, job, imageTypes); ctx = Translator.CreateContext(0, acc, new TranslationOptions(TargetLanguage.Spirv, TargetApi.Vulkan, flags)); - p = ctx.Translate(); acc.Notes.Add("FP64 lowered to FP32 (DoubleToFloat)"); + p = ctx.Translate(geometry); acc.Notes.Add("FP64 lowered to FP32 (DoubleToFloat)"); + } + if (geometry) + { + // A fresh context: translation mutates the decoded program. + var reader = Translator.CreateContext(0, new Accessor(code, job, imageTypes), new TranslationOptions(TargetLanguage.Spirv, TargetApi.Vulkan, flags)); + File.WriteAllBytes(Path.Combine(outDir, key + ".reader.spv"), reader.GenerateVertexPassthroughForCompute().BinaryCode); } File.WriteAllBytes(Path.Combine(outDir, key + ".spv"), VertexCounterLowering.Apply(code, (string)job["stage"], p.BinaryCode, acc.Notes)); var res = new JsonObject { ["key"] = key, ["stage"] = (string)job["stage"], ["notes"] = new JsonArray(acc.Notes.ConvertAll(n => (JsonNode)n).ToArray()), ["cbufs"] = new JsonArray(), ["sbufs"] = new JsonArray(), ["textures"] = new JsonArray(), ["images"] = new JsonArray(), + ["geometry_stride"] = geometry ? ctx.GetResourceReservations().OutputSizePerInvocation : 0, ["uses_frag_coord"] = p.Info.UsesFragCoord, ["frag_out_map"] = p.Info.FragmentOutputMap, }; foreach (var b in p.Info.CBuffers) res["cbufs"].AsArray().Add(new JsonObject { ["binding"] = b.Binding, ["slot"] = b.Slot }); diff --git a/dm/gfx/tools/dmsh_xlate_bin/Ryujinx.Common.dll b/dm/gfx/tools/dmsh_xlate_bin/Ryujinx.Common.dll index 666816575c2c1c76acc011289b88fe85c026e9ab..7f4fc6e963b96283c92676b6d83832d19a5a074c 100644 GIT binary patch delta 8106 zcmb`MeQ;FQdB)GtS(#BVE*NZzFhM&KAsF)^ge2q^qh+P0PKH1%WP%-;T~>6S1vZ7#QWRPm##4e7ui^p+nV%M@+=Yv!mK|L+Qm{xKcER5x=j`U+_TRX1!2<(3iyjZ}q*QH|Z07x?pBu;#Wp#@8o-h z)u{~y*$oBy@)g~2#D7(1{Z|X7?w-*bTZk&V)bE01yQ=b5f75L7_r`*d2h^*3$Q0}_ z*sXeF5f}H)ebdbD?2V-)jbvI{(lQb!86N;MU{3rY@k#o_;^)O56Q887wVU36Y>P~J z4eQN}qTX1k3wkZ<&1}e^$m5WU(6J05S*jiERwJ!ROB{mpy-P?B_r@|#?jf0;le8g; zleS|p13xeRnD`|93GsD-bPl3(uYQA>&z?oLK>zmia-=<@lISsWEjWJ^``?Q>auQ&JEeEW;K!%>fhsz@n^^b>ZUjC5p$$qZkzYg zBjzjQFCH;V$^Ur7RL!{&jZ9H$rXClTbvRw_t!_YXH=-%A9m_f#%e|HcGaq(FY{#+= z$8ztr22;&RK5H;l`m%S=MzauDz0u6pyxadeOj*MjUfDE2AXn{joCopRxLpXiL}A>pvZ$3#zv zHh4+)1sRv8mLA=*rrMHB{w z4IuL)qEo_*a1gX7iMkVKVN47&LkbFm!iX>>%m{~s!ywQ8m}qsk+rbRTvs@y&RCG`n z0Uu{VN&*?-0LX$vqK84d0-`5GtC>m-s8Fi`S!X6_*V}3D)MnfTUTPhX@DSLbGaVD6 zXU>vzut7iOUEOTv`$t+6klcX#Kz7kDdcbLK-eYEV`AF-igeN4e^d7eplf3jYAh*;Z z%NyRd$IP0}k=BygZuR}bB*=Go2IQfZ%Z;G2kN zKpy)T$QuF4>8;kA66Azxu{=<$ZXPI|!@`S_LCfpOl;wNg>c{O}eGJl$2m3f4oKVlC zNZd#cjDwul6tm0^Q$djPk{o9>#*q{1$u5%P>cETYRxAbbc+OjWEj9)==>9G<7su6! z1LKPZ9X%Yhtp2Mykf$MHwK|djjlR-K9#H>nnL@!7G#eq=h}CF>oKS0yIPMny+>(tA z!e>1)$bx*qf$cw+hD3G=n06Vb$1Bx#FThUmd9xUs(*Ex|JOIxKi}s!q6TDo5y`jYkLVpc~$_tyo#?HIM@;;4Rr|*4G@{UAx$h zZ6)pEfSfu68hv4RMD$LOS8T$@Z+h=5;yg{i1}ANlD!o%)mo2xOSYM}3v@jD z**0^p#+kac-Fz*8M}_sSh~D5>0`g4wL2g_DVOW?DKM7)T@8AwR?u~da?l3PrjLmeT z8=VF@ItQ}Fyw$g2s?qrxq#qI;26>1{kX2j0Yj;!sCbz2uEU(4VAk%Un%aYXU+dK(# z+eo9o+EyZ(H2Or867$H`XTy@QIIc~Kr(@3!YC6s;bzC|qdUz*8vB2^ z$#s?#ra`+9!n{yF;o^Q_0OS#cg-Kyr{G2c^)LY#65|At4r|#tW!V6nSn52PtT9}h~ zUi7$V9dhI9gkjL05z$G}zOc(H0sGK!Kgg9JJB@y@ZBPQF(SK<*myViCHx9DFvaOD_ zAPaw90xU2NVj^$BQ`nNO#YUT1??@ZT zdZewl&BYbSILUa4jc;tP6^4Y(Ap1{T3xV@WZo!sr>@z@ z7YwMK9I$I2NnK*~seL4Mt=0dukE9M+eSIHE-3;3E0PfP$_a`LYZ}kKFN#>mfnKuYF z?9vbI=L;I6;4b~=F_Kz6N!=JDseMo3`4vwr;~)#vws1iY$C^QE-_w@frKj<^7yIec zW(`o;YE_fNVTUuVrh3sxYh9Zg*$?ubqT1cPy+l|BqOvzFYHtg5dz@SnHE&}hzZx~` zxp6OPGh1fhx=6U|r7P*OPPN$^@Fj;Y+D!GFkyh2^l1hYSAZEy}Yd2d^D|==Sc5l?Y zu-ATd;p?N_>s{Y#KF4SHkN24$;0ukqmt6GVejMQ;@7#W~9y^`-o-3_EE=P%IKgbQI zR&+pgNOTxvenNCo{C?4C@dric#2*!{zK?mm?wIkj|Csqu>nF2&pTVl*{xkTxYbyOi zHnBgR{1JI5KK_=QwC;>!vv3fciZ{`D(c_NZZw{FGHQ0@R%=B4}N${d7ZcJPD#B;*D z#P!?sd*XgaZ*_`O8_E2D)WkfXnVjYqS7 zk@Gt3H;#G98VBvFf8a*@KH#^%q+-W?V;CTrwE>8bX-QaQ17Wz_+~(z}>2Gq8<>CD;sN67PD#UW3z;*ciU& zEl8SbbecQIkv;LeQ2)YJ@`3EkZ*@<+OmskW*bwIgIt-s_~WAW1=p!x7_cmEtOJ=J zmUvQ_7C$FCFVz2lI-cn=H8_0zp%k?&ZVZSHJ7$}@3?9t}ysJmd?41Mg^vAB})8H$5 zAf6L_UUXjcxM=+=m+u#rfgBeQT_-v$y4h*3>8RPkd&^NXA6s+y*F3^mjX98`^FsZJ z(|%z<7#1dlX-99#b7n_TPdxppJ?8AG=gbs6=UU7+#`3+fGLW~QI?Kh`bH~i7g;PGj zA5;F*7t4m;PesmCGyYYwEJgKQw=P_vFjmeZ{ny$(K2Q)qGww`7*!# z+?>7*Wj?xTKKat*yZN{OHD@QkHt&Dtd-IOTH}j8Ed^MAACcAd3@0BT&?`Gai-@OHs zFVlXH@8#RDHtX*5-FX|j`Tm!EOKw9qcP#KV-G(xm#lFXHLz#zG_@>{6GCiw&!Tpmz z;WOUxW%f*8^5!R7JJuchi=RDr@XoKN|Lf!I`LeE)R#Zf9NY*IKM#wYe2iv~4ir9G;N5k$@S(dlm_OzzwZV9goh^J-zvKPkY+K07a4 z_>ne;)H3hJ2Zf6p7OSw@hTj@h4MtRzs#M#dt5rE-+wohjRzR2Iccp4Z2EFZgU7@z( mRVBE}`Wz9)KjqE&N#S1?T`shLaDS&fJL9K?H}uKnQ~nR2oN&Sb delta 7986 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 literal 644608 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∨khdkkj1u`A@mWuL(O7^0)MH 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

3&!e$@x6(d_@-|+;Fs9y6G!fFOi3nR+fyx&N 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 A00000 delta 279 zcmZqJz|pXQV?qbZ&QD1{C-%rN9-6o^oUcHSiNT)%2ppIgT$m>+3iBi|G4KHSAwUV4 z$%;%mlOq|`8Ba`Z1d=Y3S2Bh(E}6{8B+Pmvl#zjP`bPmK^UVQFJv$g@Y`(i|=^Dnq z?ak?oi@Vj+aqFjdo7{Zs67jf?+xL8Ctd-#es$n(M zGte`bo-M#6JH1_iNl<78&}JCe1Y#>pR1{-evi+a{lP}{mK_-pqd_qiid@m5H7+x?< zj}l^<$LKNrrx24eqsn$!VW!=T%mxf>({GC~X-|(5Wm*o@8N#Um@!S!+?Sf)V?-?f= Gumb=!Eu!AB58mw%R+PdFQWak?8Ra=0 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 H{{6oIl_-n- diff --git a/dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate.dll b/dm/gfx/tools/dmsh_xlate_bin/dmsh_xlate.dll index 5ed9a74faccc80efd7b970fcdda6db44191d261f..d0b9031855e9cabd93ba1364658d5bcdc48b6f27 100644 GIT binary patch delta 9315 zcma)A3w%_?)ju=$?!9+kH@UmX<^f4I34u*EF9?r>hlq#}1OY(=6)_fk>Zus2OwH)tF|gleHB_?wF0eH>SwE8t7!e8;K#H$YNdU&C!9U__|2+t9H z&#|l6?|GNV1N^fe5iPLS-BoEXW+Pnt_ka|{yU+d_3$y+9lWYY0w*3w(89p8w#4`gg zCkOpvEYbQf5tBG+7dI0NjPu1<4lsy;uEz2ESO0+gw zO61D=Lh<`7%ko9bf%*Me{w&Mv&LC1NFR=U}2a#6h&x%%n85mhY!#| zl;w}Y30DYiXq9uIe+%^IgepOcRsjr*TXF6RlX74bdP3xL`>0x6oAL_t5k^7^)P;nA&-fx6 zo({2$cpcEP7<8?*JfYF{5JxaES|}4vm&J4jdTR7$A5@f8S-OVJ{b2F*7W z+y{m7-0rF14ff}W6!~I7o(3R89_5svFqBURrRtt{JXTJn4ixF``dyzRjY2x*Nd0}t z`#xXt;ERasSNW3n?|sSZmcC5sccv`%tne|fdnODH_*fSEWr}>MAkPxcq_XAx6nVCN z%CX@NwfcJG zo0V^A-;(m(^C0IR(tWvThFU|S^An<1Q2(I_PeF8nzzVHwYv@b@Ps<>WWL8~N+A`%9r36!c6@0h;gF9KeyXCiGZJ2qW78i3jube=Ikpg%FRuLgsZ-?*zSIx%JdKlco?+D253ef?ce}S z`Vbn5@kZba1t-mvJH+8el!@_}Ds`dtpcRjx-wFJOXlFV4=?Ter5d;Tz#$m0WA?bdd z2(^hup*7L=Js+X-HOTgWE}}miIV=nu!@Cf)5ypTXf2~eOz(fLAO6=#t{Wx5%%Hg40 zqL3?;2P}51k6y{u3iYga~3VIOur#G=h2+nZLLL_i{jVYyF6LidW?^D*^hY2JyP&B_^pOE z*zbB8hIE0K<9AzD(WJUbnw6QiXt!QB+H&RZm~XH11`G6kQ6XZ5v)rG zSfO@%b4EG4+5T=u2=G|O@cw>rX1;qXjKGT08u}0WlFSLE+kwk?xb-TYRiSqxcbUhi z(sdb>3L|#feju}Y)Yl+a)_sc@UDkao8h7^&K#x(GW#m<7=I&S`5;CCeE6dUMgPoJX`u|K>PQ`>X%CK{W5?^PoZ}RB z66YAweaxp1GPFk+(*K`^0_V@wuUcxAk{32CHMAR=eig_G$ftxTIk^y!$ex|!VtegH zITP3^`;MG2+hRYLlOHI?gp!D^T2YuP%@u_TKBfMe6PolcYH}$G_bim~iP(vy^E+a# z?JMF!+qNP2>_w?7y<$Gygq1~Ur_$+HG+vDM4&eW7Uy(Z^uLT%{2;W%vswRRld7|&N zcjt~t3^TCV@M!dwqs^^RSQGH9I>DVmJ78O*3dbm2!-{NjYIMItz^M{mC*da&`Xy|4 z&hTio)gj;sb$EtG&r6+4y}vUwde#(UA2VKM8ZDyV87|uC*^_X)=(nDy!PreT+(o9c z2b8P5d)y`!duBRKsx<{XWQ;=%{wHKinxu|%nN;Q;=hEm^DAFiN|Erti2gRh>-f=D$ zwVQj~KKd5qZTb{BsnNYoA$g;#4VwScB_ubvP8$gyJtmbN1WBWHP$v#D!S+e`ZNLCc zqmyO;zdM{XHTnbOH9D$_IQ>?d?~*X63ImV21pK}(;4Ko)lJxD0pge)u=hJky4|@KF zs1zpXRmpfk5n0dIjG zlQKQR^)CZzp^A*CT&)6 zMMa;LNOTtRa|)7FL3JY9gLevk^-)QI=$m%aknBW|#Lo>v$6Ms5Qks{Hs5yLIa-M|s zUeRxs{RR^K#j?LgZ`A78Wo(vKOgYM2z~Ov>#;9D+;lt@S?nR(HNrL_p_jQ^^%{&SE z&seKAmUgmrT7U|vQ=1#a7d6o?n!pkm{6G*0ungzT8mGhM0<-C`d5fmd{z`#u&DGrZ zXgUq664*EBfcCKFqWuy($!78=H8+KDyb_&cUj3lvp;>9{sP=;9rS)m-L+zlJL3@C~ z{z>*Wn3;4q&HRWTMWH;M#^xK%EQ|h@#^$)*(6Z>GG*$;*Hhm_s9$N1GFD;uE)Clvt z=#=+eEr)7rQ_j?@f6(&j;<^-ekTDucYXp{n`5E31v;rDES}=R)P5lk6h}KE$Bzu!J zvmk9qW2YsyC5>rZ@NP|GcW458T4K9stoxr@kp7(JeS@E2#iWjb0oZ#={TvH37r)NI z{z>+zWX_l9NftMR=%O^12GH*y9r0mFsaUdNCc6m{=GM1@Na5+d?B~7$ikr zU1SP43PqMtF4B-w4WJ_FD!nak#(j(tJTp_FXC-AAa+^`7SHMM5#VhD@S|{oMN-2@t zZMZ};`aq6aD~+Z42W9^R=n55}&*-3%naSyd7wa#O!6ecDHTDgo$x_kFP6yqGTla(H zB+bpp0@NrE&_(5dnKV+u1_`G~*eKyV2^UM)3Yd*DD8_aHGP;YQpP*;hOBAH%*$i_8 z9buk~2k97lNO=VCp!q{2k{Ga^b{o&od+dnwIZ)P{FViVjz<)t!*jD{@jJjQa3-E65 zar%UPpuCR{MW^{kdWP1ke+NvOoH_Ytror;q$F2;d^Hbg;_6!|0hOxvmw9Q+=7=Pbg z3(_|4SeC~%_e3_5mzXoyG1{gsU_#~&hnR`ZliZOBwshyuwis9-@uNrDc&S& z;2$eV$Tw+wpu8a<9JaN>0DW3)J76R#&{bw<&S*VcB ze1SA}jWp(D!kClIQf~lU;O*u;6xEN5B8?gex+&lbQf9B3M8DFrg}2DawLs5KzDDX< zgRlHEY#m~ZLy>nR_yh2$S$~K#o^3wPKVe5*Px1yt5%?*$Q2p}QJj7f_DJ{;ADb~jIm6cLwa5v<9f~|y z2q(7k>y*XP>6<{`sN6(n_!i|o{;BsiRfxKT>Wb5#3v5bZ?~qdp)5HrH$Gt zJe_I#wYK;$!pDV@0YVxVX zka<}B9>uf+>K@tefAgL27on3zex;iEFT6O1<6 z3)lrXf|j8cjG)!@TfLgxqyzdX6L1LC0G3icV3^he*3mY=3A7tWRdkGxRW4DkQdTN!ln0eZmER~_EmrH)2K6tL%dTQ^c0W7H z&azBCi7)3-zK!3-&+>ewQ#q`(t2d}S)jjHUhwvdqYEl%g!O!iu5y*=|ns`z@j&j#W z6X!3U)9TasT0MVg>Vk3Z;Ekx{=gU1L$DS*<4@JAri0I+qQC}WpI7K@>Uwu;w3RL(l z4y?5cQvDyH??BDR^$k}T70dDx+d&n42kqx4@SdiC!q`QMlkMjg+pnCU50x@DMD5KV zwwGs4k3`!d9kH&)_O+cIm$a_$eQfwXB{)6O9*H$|L>5M39g+2Oo8s|~m9c2&ij|i{ zV^gDTYkM0jUgASnL^_tv>FmJ3`K=owb0e|F_Uog|nmSse?PR~VJGXau6<7SzBORAV z;?d67vIyEp?E0pT-qPA(N=fMoicl2(MzG&vNTj7`qqG+98oVp0%br%(63D3rGeS++ zV-fVKksWL4diy(d^9ue|L0qb86|%kmsI#?9J$K@QNM*@o->>{^=8#WDud?qPU!~lj z54R7GAD-a8wrt-zZdjeZCSPl|Z!xpF#9u+SwTWl@l0D2y-fRx)Kp=Uu{NL_N?#Q;1 zyP0A5l6P6jz4*r}aMLu1`I4usU}sD;q6MkIp%E)^6gV7YFP|_<-vQLu zoO^UD8?MvQg^>`f^-p2K`mr9Tf2gH|fEy$VaTcW|YhnNW|<`+p| znx?SYhFoA~fx`)Uwl$ks^W-SgfcPy`eeKn&FWM&E4iI(9Bt1SG3#B-5SGOX2t#ru6c;m8_=@NtI6Vyr z2s2FwK0SL9lf;w_>38y!5#$A?V)aZ5>b?S}cnkvoY9GQCpuk}`q3{jnG@Ks%813u1 z!Vs^KincQ&lPQv4NCkyt7%=M;9$4m&A#pz$RwhsN3uR*$U67l2qQEc= zFM-grNihs7`Gnyb=p(+|(lJ}p>P+RV)oCaQ2S>T~Gps#A9b^jP#6U82%`mYwnh<=5 zJ27!?^2|bVKrp!-K4TY%6kQ_H(m;x|iD^7DS~uY1^P-FPCD95kz9nM5pd1l7cz)YI zM0DgBGnGhvf}X*nh0qbZc=FJ)o4M7q-RjxF#pAJhc6la_IvC7y(7B*z|NuAuWT`UYr0Vo`sJS6c#T&?tB+7_ zzq)C}#G0Dml;HAMB)&4ZEZUB9tz&$!Bi7U&Un7sKU|VMgj=XrVV`U`R5?O}%v;^12 zqAOxeZPoU>o3dTkH^qXnNK;EBW>;@4vOnxDwdZcU)*ia4c3O&D9bbEWNqJ>jsQRl; z(aw%YsJ!~3*7l}Y*HoAj^OLj5-SjzI)aU%tIDTa-7S*QI?BQ+fX0?>s%@mY*KnuzC1X)wt&M zJu?p3XYS1B;}6;1yUOv~Vi^T5v?t&7OFOv#-CpzVLS;^qyk9iXIJC=XERCV%xNnTZ z7i$B04QNLJABlG~ZWhZVZ#nvP)C{RHXzL|kjA){!-tN7qM%PU2wf3K8yK43S1D^30 A761SM delta 8229 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 delta 2530 zcmZXW3s6+o8OOi7Z&(%tS6M(10_7p@F1yRVL@W>*!%KpM7?qjIvX_VQWE0j(QG6%SJzTF6{8CR#Z9{b{T$)r8$yltclrF>H!2FeEdAYbQ zR}n3;fOF~^UEu7xw~a}gk7bW$E$jU}(W0wUY5pc5QmnZmNe)mGaj2<;&_dxa-cluDQFG!2gqRNC>N@N>eFC6&^D+W>VXbI_n;pkg@q#xe(=nPBdsvP zWlA0>h5MYr`wnJLf^Q&3_7y7rD6$%S7yMuR7?uwM@01diBgS|>cp;|vfXG^K6l&3* zKfe&14W1VB;oy3-y-s8uc(;PQ{wZY*Mj&t>1+St&3XTM`&uPpk<0Nn)_;rYJGMGn6 z48%AET+eQSWZ)&t!Djj@Ht-x+Ifr#%)f|on z2Y?M?JLXo$L zc?CLP>;#t}*9(P#mw{RT#6~n9fei76cfeY3mdI>I7J#!w#s;E=k8t=SteeAZ1|q;Y z;{D0s$Qf>ci|2z!#R5;DfGt!5#CRq6HIbvhPl^q&O}6L}j-JD;!x(U$SRV_H1Lq4S zc@)Vln5{jdvA#ioH- z9lZ}5fi=h`^E23J|M9b!R>P0=9}Gkn;bZHUM|G5Biw4Qvp7 zESMD0+%JVX8*`GC!hEt@=`NHDL}u4u9sYz=8@I`!|OlXvU?)YbRa%L?n) z%BGgu_6iR#_0%^7&a|qxrkP^(WvzTmtG>$IRNd&-KOBO7b_fYoyg9wX>2&F>=?;rN z-D0!oU2b=(MQ=9S>@JhrnP#qX2DVnVRCp?Dnkw9~Efp;uX`^eSvW2hXD_VJ@P!Sj* z^aMm|dwu=By}kp!zxuBErhRvFeGj^%!*2%!a^C;XblYNUI>+5#b)^QJ&Z>!UZ24yN zt@U5V-CXT{>F{vP#ZN4{@vf&Pu{Vc=l7bJ?=6!VKLCWsT6xY->g!;mVH=Ly4zzLUmB};j>3GKlPsOd;IY2!-LkN zOZO;iOS>0roxC2qF>Ax7HeK%c{pn*_f}lL{-X|l4wcTNx`kw8O@Q2!VC+zsGU^ZE>%>4dzeyK^_q!d~oo)!mn$tY0srxNLahp z64)Jndm#V7)YNw8>)&rIT|fFe?_ko|RXx2o4heflw>+3QHR0S|uQvVqOzMk8ZE9;$ z(e+EMRrwd@JI4xcybxY=;_&6y&i-Y3Bz(eq^_+VwLu_IfAHhqXN*<-?AD2~{Nay7c3#TAp&fX`wf~DfRlz~u z_6O~lxV~K{`?+sW$P0>2ez*{fvkSo}u0`X+wP<8(@ueVpa;4qmbXjJe<(WyxS-Q&6 zWB&|&qr888!7IeIPfQWNP!2bg#|^o;p$2Yf7dJG} zHGpH#?As-*ur(Kk(PI+4m5dVX&teGGu{QfY9sbs?<)Te^`G+oE zro@XhK~2Wav2AK9SK_G9kZ*L@;Jn9$mW2={HfmJ#6I!LBIEh8rkP#!4XDnUZz8r6Q Zl5bwFKr6`|>Fi>B&dL5_seMPc{tq^LA#?x$ diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/IGpuAccessor.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/IGpuAccessor.cs index f29312a..979df4f 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/IGpuAccessor.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/IGpuAccessor.cs @@ -8,6 +8,9 @@ namespace Ryujinx.Graphics.Shader /// public interface IGpuAccessor : ILogger { + // Fixed VS capture ABI used by the offline Metal geometry path. + bool QueryGeometryInputFixed() => false; + ///

/// Reads data from the constant buffer 1. /// diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContext.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContext.cs index 62dd9e2..0e39de2 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContext.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContext.cs @@ -156,6 +156,20 @@ namespace Ryujinx.Graphics.Shader.Translation this.Store(StorageKind.LocalMemory, ResourceManager.LocalGeometryOutputVertexCountMemoryId, Const(0)); this.Store(StorageKind.LocalMemory, ResourceManager.LocalGeometryOutputIndexCountMemoryId, Const(0)); + if (ResourceManager.Reservations.GeometryInputFixed) + { + this.Store(StorageKind.LocalMemory, ResourceManager.LocalGeometryPrimitiveOpenMemoryId, Const(0)); + for (int i = 0; i < ResourceManager.Reservations.OutputSizePerInvocation; i++) + this.Store(StorageKind.LocalMemory, ResourceManager.LocalVertexDataMemoryId, Const(i), ConstF(0)); + void DefaultOne(IoVariable variable, int location, int component) + { + if (ResourceManager.Reservations.TryGetOffset(StorageKind.Output, variable, location, component, out int offset)) + this.Store(StorageKind.LocalMemory, ResourceManager.LocalVertexDataMemoryId, Const(offset), ConstF(1)); + } + DefaultOne(IoVariable.Position, 0, 3); + DefaultOne(IoVariable.PointSize, 0, 0); + for (int i = 0; i < 32; i++) DefaultOne(IoVariable.UserDefined, i, 3); + } } } } @@ -560,7 +574,7 @@ namespace Ryujinx.Graphics.Shader.Translation Operand writtenIndices = this.Load(StorageKind.LocalMemory, ResourceManager.LocalGeometryOutputIndexCountMemoryId); - int maxIndicesPerPrimitiveInvocation = TranslatorContext.Definitions.GetGeometryOutputIndexBufferStridePerInstance(); + int maxIndicesPerPrimitiveInvocation = TranslatorContext.Definitions.GetGeometryOutputIndexBufferStridePerInstance(ResourceManager.Reservations.GeometryInputFixed); int maxIndicesPerPrimitive = maxIndicesPerPrimitiveInvocation * TranslatorContext.Definitions.ThreadsPerInputPrimitive; this.BranchIfTrue(lblExit, this.ICompareGreaterOrEqualUnsigned(writtenIndices, Const(maxIndicesPerPrimitiveInvocation))); @@ -570,7 +584,7 @@ namespace Ryujinx.Graphics.Shader.Translation Operand primitiveIndex = this.Load(StorageKind.Input, IoVariable.GlobalId, Const(0)); Operand instanceIndex = this.Load(StorageKind.Input, IoVariable.GlobalId, Const(1)); Operand invocationId = this.Load(StorageKind.Input, IoVariable.GlobalId, Const(2)); - Operand vertexCount = this.Load(StorageKind.ConstantBuffer, vertexInfoCbBinding, Const((int)VertexInfoBufferField.VertexCounts), Const(0)); + Operand vertexCount = this.Load(StorageKind.ConstantBuffer, vertexInfoCbBinding, Const((int)(ResourceManager.Reservations.GeometryInputFixed ? VertexInfoBufferField.GeometryCounts : VertexInfoBufferField.VertexCounts)), Const(0)); Operand primitiveId = this.IAdd(this.IMultiply(instanceIndex, vertexCount), primitiveIndex); Operand ibOffset = this.IMultiply(primitiveId, Const(maxIndicesPerPrimitive)); ibOffset = this.IAdd(ibOffset, this.IMultiply(invocationId, Const(maxIndicesPerPrimitiveInvocation))); diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContextInsts.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContextInsts.cs index 3d19586..1367540 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContextInsts.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContextInsts.cs @@ -233,11 +233,31 @@ namespace Ryujinx.Graphics.Shader.Translation public static Operand EmitVertex(this EmitterContext context) { + if (context.VertexAsCompute && context.ResourceManager.Reservations.GeometryInputFixed) + { + Operand end = Label(); + Operand count = context.Load(StorageKind.LocalMemory, context.ResourceManager.LocalGeometryOutputVertexCountMemoryId); + context.BranchIfTrue(end, context.ICompareGreaterOrEqualUnsigned(count, Const(context.TranslatorContext.Definitions.MaxOutputVertices))); + context.Store(StorageKind.LocalMemory, context.ResourceManager.LocalGeometryPrimitiveOpenMemoryId, Const(1)); + context.Add(Instruction.EmitVertex); + context.MarkLabel(end); + return null; + } return context.Add(Instruction.EmitVertex); } public static Operand EndPrimitive(this EmitterContext context) { + if (context.VertexAsCompute && context.ResourceManager.Reservations.GeometryInputFixed) + { + Operand end = Label(); + Operand open = context.Load(StorageKind.LocalMemory, context.ResourceManager.LocalGeometryPrimitiveOpenMemoryId); + context.BranchIfTrue(end, context.ICompareEqual(open, Const(0))); + context.Store(StorageKind.LocalMemory, context.ResourceManager.LocalGeometryPrimitiveOpenMemoryId, Const(0)); + context.Add(Instruction.EndPrimitive); + context.MarkLabel(end); + return null; + } return context.Add(Instruction.EndPrimitive); } diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceManager.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceManager.cs index 2fc1534..0d688ef 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceManager.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceManager.cs @@ -52,6 +52,7 @@ namespace Ryujinx.Graphics.Shader.Translation public int LocalVertexIndexInstanceRateMemoryId { get; private set; } public int LocalGeometryOutputVertexCountMemoryId { get; private set; } public int LocalGeometryOutputIndexCountMemoryId { get; private set; } + public int LocalGeometryPrimitiveOpenMemoryId { get; private set; } public ShaderProperties Properties { get; } @@ -137,6 +138,8 @@ namespace Ryujinx.Graphics.Shader.Translation LocalGeometryOutputVertexCountMemoryId = AddMemoryDefinition("local_geometry_output_vertex", AggregateType.U32); LocalGeometryOutputIndexCountMemoryId = AddMemoryDefinition("local_geometry_output_index", AggregateType.U32); + if (Reservations.GeometryInputFixed) + LocalGeometryPrimitiveOpenMemoryId = AddMemoryDefinition("local_geometry_primitive_open", AggregateType.U32); } } diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceReservations.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceReservations.cs index c89c4d0..ac66096 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceReservations.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceReservations.cs @@ -24,6 +24,7 @@ namespace Ryujinx.Graphics.Shader.Translation public int ReservedStorageBuffers { get; } public int ReservedTextures { get; } public int ReservedImages { get; } + public bool GeometryInputFixed { get; } public int InputSizePerInvocation { get; } public int OutputSizePerInvocation { get; } public int OutputSizeInBytesPerInvocation => OutputSizePerInvocation * sizeof(uint); @@ -81,16 +82,30 @@ namespace Ryujinx.Graphics.Shader.Translation if (vertexAsCompute) { _offsets = new(); + GeometryInputFixed = gpuAccessor.QueryGeometryInputFixed(); if (vacInput.HasValue) { - InputSizePerInvocation = FillIoOffsetMap(gpuAccessor, StorageKind.Input, vacInput.Value); + InputSizePerInvocation = GeometryInputFixed ? FillGeometryInputMap() : FillIoOffsetMap(gpuAccessor, StorageKind.Input, vacInput.Value); } OutputSizePerInvocation = FillIoOffsetMap(gpuAccessor, StorageKind.Output, vacOutput); } } + // Matches dmsh_geometry.py: independent stages meet through the Maxwell attribute map. + private int FillGeometryInputMap() + { + for (int c = 0; c < 4; c++) _offsets.Add(new(StorageKind.Input, IoVariable.Position, 0, c), c); + _offsets.Add(new(StorageKind.Input, IoVariable.PointSize), 4); + for (int c = 0; c < 8; c++) _offsets.Add(new(StorageKind.Input, IoVariable.ClipDistance, 0, c), 5 + c); + _offsets.Add(new(StorageKind.Input, IoVariable.Layer), 13); + _offsets.Add(new(StorageKind.Input, IoVariable.ViewportIndex), 14); + for (int a = 0; a < 32; a++) for (int c = 0; c < 4; c++) + _offsets.Add(new(StorageKind.Input, IoVariable.UserDefined, a, c), 16 + 4 * a + c); + return 144; + } + private int FillIoOffsetMap(IGpuAccessor gpuAccessor, StorageKind storageKind, IoUsage vacUsage) { int offset = 0; diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ShaderDefinitions.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ShaderDefinitions.cs index c11e658..c2126ac 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ShaderDefinitions.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ShaderDefinitions.cs @@ -337,8 +337,12 @@ namespace Ryujinx.Graphics.Shader.Translation return _graphicsState.AttributeTypes[location].HasFlag(AttributeType.PackedRgb10A2Signed); } - public int GetGeometryOutputIndexBufferStridePerInstance() + public int GetGeometryOutputIndexBufferStridePerInstance(bool fixedInput = false) { + // Even a strip with fewer than three vertices can be ended. Empty + // ends are ignored by the fixed-input emitter, so at most one + // restart per emitted vertex is needed. + if (fixedInput) return MaxOutputVertices * 2; return MaxOutputVertices + OutputTopology switch { OutputTopology.LineStrip => MaxOutputVertices / 2, @@ -347,9 +351,9 @@ namespace Ryujinx.Graphics.Shader.Translation }; } - public int GetGeometryOutputIndexBufferStride() + public int GetGeometryOutputIndexBufferStride(bool fixedInput = false) { - return GetGeometryOutputIndexBufferStridePerInstance() * ThreadsPerInputPrimitive; + return GetGeometryOutputIndexBufferStridePerInstance(fixedInput) * ThreadsPerInputPrimitive; } } } diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/GeometryToCompute.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/GeometryToCompute.cs index 573acc9..234e4eb 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/GeometryToCompute.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/GeometryToCompute.cs @@ -142,7 +142,7 @@ namespace Ryujinx.Graphics.Shader.Translation.Transforms Operand baseIndexOffset = GenerateBaseOffset( resourceManager, node, - definitions.GetGeometryOutputIndexBufferStride(), + definitions.GetGeometryOutputIndexBufferStride(resourceManager.Reservations.GeometryInputFixed), definitions.ThreadsPerInputPrimitive); Operand outputBaseIndex = Local(); node.List.AddBefore(node, new Operation(Instruction.Add, outputBaseIndex, new[] { baseIndexOffset, outputPrimIndex })); @@ -197,7 +197,7 @@ namespace Ryujinx.Graphics.Shader.Translation.Transforms Operand baseIndexOffset = GenerateBaseOffset( resourceManager, node, - definitions.GetGeometryOutputIndexBufferStride(), + definitions.GetGeometryOutputIndexBufferStride(resourceManager.Reservations.GeometryInputFixed), definitions.ThreadsPerInputPrimitive); Operand outputBaseIndex = Local(); node.List.AddBefore(node, new Operation(Instruction.Add, outputBaseIndex, new[] { baseIndexOffset, outputPrimIndex })); @@ -212,7 +212,7 @@ namespace Ryujinx.Graphics.Shader.Translation.Transforms private static Operand GenerateBaseOffset(ResourceManager resourceManager, LinkedListNode node, int stride, int threadsPerInputPrimitive) { Operand primitiveId = Local(); - GeneratePrimitiveId(resourceManager, node, primitiveId); + GeneratePrimitiveId(resourceManager, node, primitiveId, true); Operand baseOffset = Local(); node.List.AddBefore(node, new Operation(Instruction.Multiply, baseOffset, new[] { primitiveId, Const(stride) })); @@ -303,8 +303,10 @@ namespace Ryujinx.Graphics.Shader.Translation.Transforms return vertexElemOffset; } - private static LinkedListNode GeneratePrimitiveId(ResourceManager resourceManager, LinkedListNode node, Operand dest) + private static LinkedListNode GeneratePrimitiveId(ResourceManager resourceManager, LinkedListNode node, Operand dest, bool outputIndex = false) { + if (resourceManager.Reservations.GeometryInputFixed && !outputIndex) + return node.List.AddBefore(node, new Operation(Instruction.Load, StorageKind.Input, dest, new[] { Const((int)IoVariable.GlobalId), Const(0) })); int vertexInfoCbBinding = resourceManager.Reservations.VertexInfoConstantBufferBinding; Operand vertexCount = Local(); @@ -312,7 +314,7 @@ namespace Ryujinx.Graphics.Shader.Translation.Transforms Instruction.Load, StorageKind.ConstantBuffer, vertexCount, - new[] { Const(vertexInfoCbBinding), Const((int)VertexInfoBufferField.VertexCounts), Const(0) })); + new[] { Const(vertexInfoCbBinding), Const((int)(resourceManager.Reservations.GeometryInputFixed ? VertexInfoBufferField.GeometryCounts : VertexInfoBufferField.VertexCounts)), Const(0) })); Operand vertexIndex = Local(); node.List.AddBefore(node, new Operation( diff --git a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/TranslatorContext.cs b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/TranslatorContext.cs index c7c5629..e5adf6b 100644 --- a/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/TranslatorContext.cs +++ b/dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/TranslatorContext.cs @@ -460,7 +460,7 @@ namespace Ryujinx.Graphics.Shader.Translation { if (vertexAsCompute) { - return new ShaderDefinitions(ShaderStage.Compute, 32, 32, 1); + return new ShaderDefinitions(ShaderStage.Compute, 32, GpuAccessor.QueryGeometryInputFixed() ? 1 : 32, 1); } else { diff --git a/docs/development.md b/docs/development.md index d67c9e6..23bb942 100644 --- a/docs/development.md +++ b/docs/development.md @@ -592,7 +592,7 @@ The game's own work and its frame rate stay as they are; the host avoids work of **AI: THE SOMNIUM FILES (`010089B00D09C000`)** - **Status:** brought up on the Mac: the Spike Chunsoft logo movie, the title (its background movies), a new game (language, auto save notice), the opening at the merry-go-round and the first investigation with its conversation tutorial, both sticks; loading the autosave from the title. 60 fps (present interval 1), about 2.27 GB resident, flat over 5 minutes; audio through FMOD's AudioOut. Playable on an iPhone. - **Engine:** Unity 2017.4.17f1 IL2CPP with FMOD on SDK 6.4.2, update 1.0.1 (v65536). `subsdk0` is the movie module; the 168 movies (`StreamingAssets/Movie`, H.264 and AAC in MP4) play through Unity's video player, NV12 into CPU buffers copied to an R8 + RG8 texture pair each frame. -- **Shaders:** 13,057 (6,572 vertex, 6,482 pixel, 3 geometry) in the AssetBundles of `StreamingAssets` (Cuphead's Unity 2017.4 layout) and `main`. The 3 geometry shaders (Unity's DX11 depth of field, a wireframe effect) do not build; none was drawn. The ComputeShader objects of `Data/resources.assets` have no type tree (red line in the split, as in Cuphead); no dispatch has missed one so far. +- **Shaders:** 13,057 (6,572 vertex, 6,482 pixel, 3 geometry) in the AssetBundles of `StreamingAssets` (Cuphead's Unity 2017.4 layout) and `main`. All build for Mac and iOS. The 3 geometry shaders (Unity's DX11 depth of field, a wireframe effect) use the general native-VS-capture / GS-compute path; GPU readback tests check their output, but none was drawn in the opening observed so far. See [geometry support and limits](geometry-metal-research.md). The ComputeShader objects of `Data/resources.assets` have no type tree (red line in the split, as in Cuphead); no dispatch has missed one so far. - **Host changes:** an H.264 drain held up by a full set of output slots (the logo movie never ended, [03](agents/03-bringup.md)), and the per-stage composite programs restored after the precompile prediction ([04](agents/04-graphics.md)); both general. - **Memory:** no system resource; Unity sets a 3.11 GB heap (pool − used) in the 4 GB layout, `mem_used` 104 MB for the rewritten modules. - **Input:** controller only, docked (1280x720 in the cropped 1920x1080 window, by the game's choice), with the 3D pad layout: the investigation moves its cursor with the left stick and the view with the right one. diff --git a/docs/geometry-metal-research.md b/docs/geometry-metal-research.md new file mode 100644 index 0000000..0b601f8 --- /dev/null +++ b/docs/geometry-metal-research.md @@ -0,0 +1,94 @@ +# Geometry shader support on Metal 4 + +Research and implementation checked on 2026-10-23 against Apple documentation, the installed Xcode SDK, this worktree, and AI: THE SOMNIUM FILES. The implementation now has GPU readback tests; the initial compilation probe described below predates it. + +## Implemented compute path + +The offline builder keeps the existing slice-writer fold and builds other geometry shaders as compute kernels, with five input-topology variants and an output-reader vertex function. Selection uses shader metadata and the NVN draw topology, with no game IDs or shader-key rules. Each vertex library also contains a rasterizer-discard capture entry. This runs native vertex fetching, including instance divisors and the host's existing format conversions, and writes a fixed 144-word record: position, point size, clip distances, layer, viewport and 32 generic attributes. Separately bound VS and GS programs therefore need no precomputed pair table. + +Replay captures the VS once per unique vertex and instance, dispatches the GS using logical NVN stage 2 resources, compacts emitted strips into ordered lists, and draws the output through the original fragment shader. Depth conversion occurs in the final vertex reader. Each input primitive, instance and GS invocation has its own bounded output region. Empty `EndPrimitive` operations are ignored, short strips have room for their restart markers, and output beyond the declared vertex maximum is bounded. The compactor preserves strip winding and the last vertex of each primitive. + +`dm/gfx/tests/t_geometry.m` checks primitive assembly, strip compaction, native capture, indexed and indirect replay, restart, base vertex/instance, multiple GS invocations, and a draw exceeding the previous 4 MiB arena allocation. With the external AI shader cache passed as its argument, it additionally checks the generated capture entry and all three translated GS kernels against numeric expectations. On Apple M4 Pro, **498 checks passed with Metal API validation enabled**. The vertex-binding regression passed 43 checks and the draw-skip regression passed 38. All **13,057 AI shaders** built for Mac and iOS, including the previously failing three geometry shaders; the profile's chain header, constant-buffer guards and extents were regenerated and the Mac host rebuilt. The changed Metal replay translation unit also compiled against the iOS SDK. + +A 90-second Mac run reached the title screen at 60 fps with no `[RED]` diagnostics. Its final `CRASH sig=14` is the test harness's time limit, not a game failure. The run used a separate test save folder. Evidence: `run/geometry-boot.log`, `geometry-build/boot-3000.png`, `geometry-build/full-build.log` and `geometry-build/test-results.log` under the game's work folder. + +Current limits are explicit: GS transform feedback and tessellation combinations are rejected; triangle-strip adjacency, quad strips and polygons are not assembled. Geometry storage-buffer addresses in the NVN driver table remain uncharacterized (addresses carried in guest uniform buffers use the existing binding path). Provoking-vertex mode, GS-written primitive IDs, viewport-index outputs and multiple output streams are not validated. Indexed and indirect draws wait for a coherent CPU snapshot for assembly; compaction is one ordered GPU thread per draw. Scratch is capped at 256 MiB and input counts at 4,194,304, with a red diagnostic instead of truncation. Other games and iOS device execution are unvalidated. AI's opening did not previously issue these GS draws, so a successful opening alone cannot establish their in-game appearance or performance. + +The external build and test artifacts are under `010089B00D09C000-work/geometry-build/` beside the game's NSPs. To repeat the GPU tests, build `t_geometry` with `GAME=010089B00D09C000`, then run it with the current `cache/b-` directory as its optional first argument. No extracted shader code is stored in the repository. + +## Conclusion + +General geometry shader emulation is feasible. A mesh pipeline can keep expansion inside a render pass; compute expansion followed by an ordinary draw is a more explicit implementation with temporary buffers. Neither is a switch that makes the existing geometry-stage SPIR-V compile unchanged. The mesh route replaces the vertex stage too, and therefore needs the vertex and geometry programs connected through a new translation ABI. Keep the existing proven slice-writer fold as an optimization. These are engineering conclusions from the interfaces and current implementation below. + +**The implementation uses the compute route.** The vendored translator already lowers GS to compute and generates a vertex function to read its output. Native VS capture supplies an independent-stage ABI. The original isolated probe established compilation feasibility; the GPU validation above now establishes the tested output semantics. Mesh shaders remain a potential optimization. + +## AI: THE SOMNIUM FILES evidence + +The registered profile contains exactly three geometry keys. Existing build logs fail these with an `unknown` MSL stage declaration. The profile maps the following effects; candidate vertex keys come from adjacent entries of the same Unity shader, not a captured runtime binding. [Shader inventory](../dm/games/010089B00D09C000/shader_map.tsv), [existing bring-up observations](development.md). + +| GS key | Effect | Body and declared output | Candidate VS | +| --- | --- | --- | --- | +| `1b378c5c014e3a32` | `Hidden/DepthOfField/BokehSplatting` | Reads input vertex 0, expands its screen position to a four-vertex triangle strip; maximum 4, one invocation | `ba2512f7f6973541` | +| `d57cdb168fdf6927` | `Hidden/Dof/DX11Dof` | Same expansion math as the first, with input varying locations 0 and 1 exchanged; maximum 4, one invocation | `771d597a6eb545aa` | +| `2341c1be4fcbf690` | `UCLA Game Lab/Wireframe/Single-Sided` | Reads all three positions, computes screen-space edge distances, emits three vertices in input order; maximum 3, one invocation | `ce9cbd7dca9fda74` | + +The output maxima and invocation counts were read from shader headers. Input topology is supplied by the translator accessor: the probe selected points for the bokeh shaders and triangles for wireframe, consistent with their bodies. These are not independently captured NVN draw topologies. Wireframe cannot be implemented by simply dropping the GS: its fragment inputs depend on the other two vertices. The bokeh shaders actually expand geometry and also fail the existing layer-only fold. + +Probe artifacts remain beside the game, outside the repository: + +`/Volumes/T7/nsp/AI THE SOMNIUM FILES/010089B00D09C000-work/geometry-probe/` + +This contains `Program.cs`, `Probe.csproj`, `translation.log`, `compile-results.json`, native GS GLSL, compute/passthrough SPIR-V and MSL, and Mac/iOS libraries. The small C# probe references the pinned binaries in this worktree's `dmsh_xlate_bin`; it does not rebuild or replace the production translator. It reads package records directly and uses float attribute defaults and deliberately separate helper/resource bindings. It is not the production reflection or binding ABI. + +Validation: nine generated programs (three VS kernels, three GS kernels, three output-reader vertex functions) compiled and linked for each platform: **18 successful metallibs, zero failed final compile/link steps**. The final probe uses fresh translator contexts for each translation. Reusing a context first for native GS and then compute produced a translator warning and different output; that preliminary result was replaced. SPIRV-Cross uses the repository's MSL 2.3/native texture-buffer flags; Metal compilation uses its Mac/iOS flags. No pipeline creation, dispatch, pixel comparison, or iPhone execution was performed. Existing bring-up documentation says none of these GS effects was drawn in the tested opening; compiling them does not establish a visible improvement there. + +## Existing implementation to reuse + +[`TranslatorContext.Translate(asCompute: true)`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/TranslatorContext.cs) activates [`VertexToCompute`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/VertexToCompute.cs) and [`GeometryToCompute`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/Transforms/GeometryToCompute.cs). Connect the stages with `SetNextStage` and `SetVertexOutputMapForGeometryAsCompute`; `GenerateVertexPassthroughForCompute` supplies the final vertex reader. The current [offline wrapper](../dm/gfx/tools/dmsh_xlate/Program.cs) calls only ordinary `Translate()`. + +The compute lowering already writes output to fixed regions per input primitive and GS invocation. `EmitVertex` stores attributes and indices; `EndPrimitive` stores restart markers, and the emitter fills unused index positions with restart markers. This preserves an ordered layout without a global atomic append cursor. It still needs host allocation and output-topology handling. [`ResourceReservations`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/ResourceReservations.cs), [`VertexInfoBuffer`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/VertexInfoBuffer.cs), and [`EmitterContext`](../dm/third_party/ryujinx/src/Ryujinx.Graphics.Shader/Translation/EmitterContext.cs) define the auxiliary binding/layout contract. The default compute local size is 32×32×1; validate pipeline limits and occupancy before retaining it. + +## Original implementation plan and remaining coverage + +1. Add explicit offline variants and reflection for VS-as-compute, GS-as-compute, and the output reader. Include input topology, invocation count, maximum output, interface strides, helper bindings, and logical NVN stage in metadata. Solve VS/GS interface selection for separately bound programs: the current build translates stages independently, while the existing GS lowering consumes its VS output map. A canonical interface or offline compatible-pair variants are design choices; runtime compilation is not available. +2. Extend host resource encoding for logical geometry stage 2 while executing a Metal compute function. `encode_args` already accepts an NVN stage, but `c0_ssbo_base` currently supports only VS, FS, and CS. Do not accidentally source GS uniforms from compute stage 5. Supply helper buffers and vertex-format decoding, index/topology remapping, base vertex/instance and draw counts. +3. Add a draw path: finish preceding conflicting render work, execute VS into an intermediate stream, execute GS into bounded output/index buffers, then draw through the output reader with the original fragment shader. `ixc_run` provides an existing compute-before-draw integration example. Preserve original order and restart/winding semantics, apply clip-depth conversion only at the final rasterizing stage, and account for indirect counts without a CPU readback. Bound multiplication/allocation and split large work without silently truncating geometry. +4. Integrate resource lifetimes, barriers, dirty-buffer tracking, deferred uniform updates, layered attachments, program/pipeline caches, and prewarming. Existing `tf_draw` captures VS outputs only; a GS path must capture the final pre-rasterization stage when transform feedback is enabled. Keep the layer-only fast path. +5. Validate GPU output against synthetic point expansion and triangle edge-distance cases before testing an actual effect in game. Cover zero/variable emission, multiple strips, indexed/instanced/indirect draws, adjacency, order-sensitive blending, layer writes and resource writes as support expands. Use Big Brain Academy's documented, actively drawn line-renderer GS as an additional end-to-end target; AI's opening is not a sufficient visual test. Run the full required shader-chain rebuild procedure for every affected profile after production changes. + +The implemented subset and measured validation are recorded above. GPU-only indirect assembly, parallel compaction, GS transform feedback, additional topology coverage, and validation on further games remain follow-up work. + +## Verified platform capabilities + +Apple lists mesh shading for Metal 3 and 4 starting at Apple7 (A14 and M1), but indirect mesh arguments and mesh draws in indirect command buffers start at Apple9 (A17 Pro and M3). Ordinary indirect draw/dispatch arguments start at Apple3. Consequently an indirect mesh implementation must not assume that all Metal 4 devices support it. The table gives a 16,384-byte payload maximum, reduced by up to 32 bytes for specified built-ins/debugging, and a 4 GB per-draw payload/geometry limit on Apple7/8. [Apple feature tables, pages 2, 4–5, 9–10](https://developer.apple.com/metal/Metal-Feature-Set-Tables.pdf). + +Mesh shaders replace the vertex stage with object and mesh stages, and feed rasterization directly. Traditional and mesh draws can share a render encoder. Apple's explanation describes point, line, or triangle output; 256 vertices, 512 primitives, and 16 KB total mesh output per mesh are the documented baseline limits. These constrain one-to-one mapping of guest GS invocations with large output declarations. [Apple WWDC22: Transform your geometry with Metal mesh shaders](https://developer.apple.com/videos/play/wwdc2022/10162/). + +The installed SDK confirms `MTL4MeshRenderPipelineDescriptor`, available on macOS/iOS 26, with object, mesh, and fragment function descriptors, payload length, and threadgroup limits. `MTL4RenderCommandEncoder` has direct and indirect mesh dispatch methods; its object stage is optional. Its indirect method consumes `MTLDispatchThreadgroupsIndirectArguments` at a 4-byte-aligned GPU address, and the buffer must be resident. Sources: installed `Metal.framework/Headers/MTL4MeshRenderPipeline.h` and `MTL4RenderCommandEncoder.h` under `xcrun --show-sdk-path`; corresponding [mesh descriptor](https://developer.apple.com/documentation/metal/mtl4meshrenderpipelinedescriptor) and [render encoder](https://developer.apple.com/documentation/metal/mtl4rendercommandencoder) documentation. + +Apple also ships a sample converting HLSL geometry/tessellation pipelines through mesh shading. This establishes a supported implementation approach, not compatibility with this repository's translator. Shader Converter's normal input is DXIL, whereas the current build consumes the existing translator's SPIR-V. Adding that tool would require another translation and binding path. [Apple sample catalogue](https://developer.apple.com/metal/sample-code/), [Shader Converter input and requirements](https://developer.apple.com/metal/shader-converter/). + +## Candidate implementations + +| Route | Proposed mapping | Main integration cost | +| --- | --- | --- | +| Mesh | One mesh workgroup per input primitive/GS invocation initially; run the required vertex work, then GS logic, then publish vertices and primitive indices. An object stage is optional. | Vertex fetching, indexing, instance IDs, and the VS-to-GS interface must be supplied explicitly. Output limits may require splitting. GPU-driven dispatch needs a fallback on Apple7/8. | +| Compute plus ordinary draw | Run VS/GS work into an output stream; write indirect draw arguments; a simple vertex shader fetches the stream and feeds the existing fragment shader. | Output allocation, variable emitted counts, primitive conversion, explicit barriers, and render-pass interruption. | + +These are proposed designs, not measured implementations. Apple's mesh presentation identifies the extra device-memory buffer and compute-to-render synchronization that the second route needs and the first can avoid. Neither route's speed can be inferred for this game's workloads without a capture. [Apple WWDC22 mesh pipeline discussion](https://developer.apple.com/videos/play/wwdc2022/10162/). + +A correctness-first compute prototype can reserve a fixed output region per guest input primitive/invocation, recording emitted counts separately. Compact in original order with a prefix sum if needed. A single atomic append cursor is insufficient as an ordering design: scheduling decides append positions, potentially changing blending order. For mesh lowering, explicitly verify Metal primitive order against guest input/invocation/emit order before treating it as equivalent; the sources examined here do not establish that full correspondence. + +Both routes need deliberate handling of indexed/nonindexed draws, primitive restart, strips and adjacency, base vertex/base instance, `PrimitiveId` and invocation ID, `EmitVertex`/`EndPrimitive`, layer/viewport writes, flat varyings and provoking vertices, clipping, and transform feedback. Treat these as coverage requirements to check against the actual shader inventory rather than requirements proven to occur in the example game. Re-running VS independently for every GS primitive can also duplicate work or shader side effects; an intermediate VS stream may be needed for the general case. + +## Synchronization and repository integration + +Metal 4 requires explicit synchronization of conflicting resource accesses. A compute expansion writes vertices and draw arguments that the following draw reads: the dependency needs both execution order and device-memory visibility. [Apple resource synchronization](https://developer.apple.com/documentation/metal/resource-synchronization). + +The installed `MTL4CommandEncoder.h` distinguishes queue producer/consumer barriers from barriers within one encoder. `MTL4VisibilityOptionNone` is execution-only; `MTL4VisibilityOptionDevice` flushes to device coherence; `ResourceAlias` additionally covers aliased virtual addresses. Queue barriers do not synchronize commands within the same encoder. Thus count clearing, expansion, and argument generation inside a compute encoder need encoder barriers where their memory accesses depend on one another. Cross-queue dependencies need events rather than assuming a fence applies across queues. [Apple fence synchronization](https://developer.apple.com/documentation/metal/synchronizing-passes-with-a-fence). + +Mesh draws execute object/mesh/fragment stages, rather than vertex/fragment stages. [Apple render-encoder stage mapping](https://developer.apple.com/documentation/metal/mtl4rendercommandencoder?language=objc). In this worktree, `enc_r_begin_pass` binds only vertex and fragment argument tables, while `enc_r_end_pass` has a narrowed producer mask containing vertex/fragment. Mesh integration therefore requires auditing stage bindings, barrier masks, resource lifetimes, and timing instrumentation; changing the PSO and draw call alone is incomplete. [Host implementation](../dm/gfx/nvn/nvn_mtl.m). + +The build retains the narrow GS pattern in `gs_slice`, whose metadata lets `prog_fold_gs` select a suitable vertex variant. Other supported GS stages use the compute path, with reflection for output topology, maximum emitted vertices, invocation count, stride and helper resources. [Shader builder](../dm/gfx/tools/dmsh_build.py), [host program composition](../dm/gfx/nvn/nvn_mtl.m). + +The compilation probe established that the example shader bodies can pass through the existing compute lowering; the subsequent GPU tests exercise their output. In-game use of an active effect and iOS device execution remain validation gaps. Production shader-chain changes require the header, Mac/iOS shader, guard/extent, and host rebuild procedure for affected profiles.