Andrew Nakas
951fa2ca46
Merge 14371ab94a into f6e0ae87fd
2026-08-11 14:23:36 -06:00
andrewnakas
14371ab94a
native-scene: decode k_32_32_32_FLOAT texcoords
...
decode_uv handled vertex formats 25, 26, 31, 37 and 38 and fell through to
"default: break" for anything else, leaving the UV at (0,0). Community custom
maps (ArenaBuilder-built worlds) declare their texcoord as
k_32_32_32_FLOAT (xenos enum 57), so every vertex of every world surface got
a zero UV, every pixel sampled one texel, and the map rendered as flat
untextured colour - the "custom maps have no textures on the native renderer"
report. The emulated renderer is unaffected: it replays the guest's own vertex
fetch and never re-decodes.
x is at +0 and y at +4 exactly as for the other 32-bit float pairs, so 57
joins the existing 37/38 case.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-11 13:52:01 -06:00
andrewnakas
d486b5b217
native-scene: don't drop world meshes whose VB size isn't a stride multiple
...
BuildItemFromMesh required vb_bytes to be an exact multiple of the vertex
stride and discarded the entire mesh otherwise. Community custom maps
(ArenaBuilder-built worlds) ship vertex buffers with a few trailing bytes
past the last vertex - e.g. 43968 bytes at stride 36 leaves 12 over - so
their terrain was rejected wholesale and the world rendered with no ground.
Measured on one such map: 608-656 "world item build FAILED" lines per
session (rate-limited, so the real count is higher) against 0 on stock
content.
Relax the requirement to "there is room for at least one vertex". Every
consumer already derives the vertex count as vb_bytes / stride with integer
division - BuildMeshBuffers does exactly that and sizes the GPU buffer from
it - so the trailing bytes were always ignored. The exact-multiple test was
redundant with handling that already existed downstream.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-11 07:12:01 -06:00
mchughalex
f6e0ae87fd
render: declare copy-source usage on the readback source textures
2026-07-24 21:49:05 +01:00
mchughalex
d1a3e3d255
installer: read the ISO install directory before the wizard moves the paths (SDK bump)
2026-07-24 20:47:39 +01:00
mchughalex
ceefe4dc37
docs: drop the antivirus section from the readme
2026-07-24 20:20:59 +01:00
mchughalex
15db3f9adb
sdk: bump for the startup build-title log line
2026-07-24 19:54:03 +01:00
mchughalex
27667a79a5
docs: explain antivirus false positives in the readme
2026-07-24 19:40:48 +01:00
mchughalex
671e74ba59
build: embed version resources in the windows binaries (SDK bump)
2026-07-24 19:40:48 +01:00
mchughalex
12e71d3172
sdk: bump for the opt-in inexact vulkan render target transfer cvar
2026-07-24 19:39:41 +01:00
mchughalex
b6c6196c3e
build: raise the dev version floor to 2.0.0
2026-07-24 19:13:37 +01:00
mchughalex
ebe14fcd1f
render: recover streaming-revoked guest read faults on linux and macos
2026-07-24 19:03:31 +01:00
mchughalex
a37e74fb4d
render: derive the auto frame cap from a refresh-scaled margin (SDK bump)
2026-07-24 13:38:02 +01:00
mchughalex
49690b290b
sdk: bump for present-cadence logging and the native_rhi cstddef fix
2026-07-24 13:38:02 +01:00
mchughalex
a16314df0c
capture: place sort-list batched piece clones with their instance matrix
2026-07-24 13:38:02 +01:00
mchughalex
14acde031b
render: key rigid pose rings by instance identity and make their mispair gates rotation-aware
2026-07-24 13:38:02 +01:00
mchughalex
020af8ae90
capture: serve rigid instance worlds from the guest mesh context owner matrix
2026-07-24 13:38:02 +01:00
mchughalex
89360e53fc
capture: pair deferred rigid clone worlds by identity instead of submission order
2026-07-24 13:38:02 +01:00
mchughalex
186c7de6f4
render: stand the static sun shadows down in venues with no sane world lighting capture
2026-07-24 13:38:02 +01:00
mchughalex
c9e501e298
render: pin the guest auto-exposure at its zone max while luminance readbacks are unavailable
2026-07-24 13:38:01 +01:00
mchughalex
5e52ef82e4
render: never adopt a material's own surface map as streamed ad art
2026-07-24 13:38:01 +01:00
mchughalex
a6efbc9553
readme: point the showcase link at the new video
2026-07-24 13:38:01 +01:00
mchughalex
587f5dc17f
src: include cstddef in headers that use size_t
2026-07-24 13:38:01 +01:00
mchughalex
b046a436c5
video: use the 2x first-run render scale on macOS too
2026-07-24 13:38:01 +01:00
mchughalex
414015f525
macos: name the app bundle and window title skate3recomp
2026-07-24 13:38:01 +01:00
mchughalex
b2e4fc48a7
readme: link the native rendering showcase video
2026-07-24 13:38:01 +01:00
mchughalex
7329af15a8
render: default the frame cap to Auto (display refresh - 4)
2026-07-24 13:38:01 +01:00
mchughalex
7b0d690cf3
render: skip rebuilding occlusion-culled statics on most frames
2026-07-24 13:38:01 +01:00
mchughalex
8f8642aec2
render: time the submit-record loop and pre-size per-frame bookkeeping
2026-07-24 13:38:01 +01:00
mchughalex
2aef1222a0
render: skip guest draw-list dispatch for occlusion-culled statics
2026-07-24 13:38:01 +01:00
mchughalex
73c19c8cd3
render: occlusion-cull statics hidden behind rendered geometry
2026-07-24 13:38:01 +01:00
mchughalex
13447a041f
render: profile the per-item CPU pipeline with occlusion-grid visibility attribution
2026-07-24 13:38:01 +01:00
mchughalex
70a7c55183
app: unload stream-probe cells before map transitions tear them down
2026-07-24 13:38:01 +01:00
mchughalex
87b27dc2a9
app: keep the stream-probe fan out of map loads
2026-07-24 13:38:01 +01:00
mchughalex
c0ba909c86
render: accumulate the static world-shadow map incrementally (SDK bump)
2026-07-24 13:38:01 +01:00
mchughalex
ceb98c34ec
render: march sun shafts at quarter res with reach-proportional steps
2026-07-24 13:38:01 +01:00
mchughalex
4d616e4d45
render: mark the native scene passes for GPU-time attribution (SDK bump)
2026-07-24 13:38:01 +01:00
mchughalex
5fa92705a5
third_party: bump rexglue-sdk
2026-07-24 13:38:01 +01:00
mchughalex
e1ec3ac6b0
third_party: bump rexglue-sdk
2026-07-24 13:38:00 +01:00
mchughalex
dbb049bed4
third_party: bump rexglue-sdk
2026-07-24 13:38:00 +01:00
mchughalex
5a18cd8960
docs: README overhaul for the v2.0.0 native renderer release
2026-07-24 13:38:00 +01:00
mchughalex
b32b4332a8
third_party: bump rexglue-sdk
2026-07-21 11:40:02 +01:00
mchughalex
2b43fb2474
macos: self-contained application bundle with user files beside it (SDK bump)
2026-07-21 11:40:02 +01:00
mchughalex
25c68a89d7
ui: guard the settings-menu gamepad poll against runtime teardown
2026-07-21 10:50:13 +01:00
mchughalex
9fb6e5505f
render: widen the content-store count caps now that byte budgets bound VRAM
2026-07-21 10:34:23 +01:00
mchughalex
6a52dcad6e
system: macOS crash-free exit and Finder app launcher docs (SDK bump)
2026-07-21 10:33:27 +01:00
mchughalex
0224fdf74e
render: budget the content stores by GPU bytes and LRU-evict the cube cache
2026-07-21 10:21:37 +01:00
mchughalex
1185533295
input: SDL controller backend option, res-scale seam and MnK stuck-bind fixes (SDK bump)
2026-07-21 10:11:01 +01:00
mchughalex
7fa9585285
render: compile the showcase gates out of the standard shader variants
2026-07-21 09:50:17 +01:00
mchughalex
137d97c190
render: keep showcase staging fully inert while no showcase frame is live
2026-07-21 09:31:00 +01:00