Proposal: DisplayXR for Adobe Substance 3D Modeler (closed legacy OpenXR app, dedicated 3D window, Leia SR tested) #2394
Replies: 2 comments
Final update (2026-10-27)#2393 is fixed in v2.55.0. Modeler was re-tested without
Released runtimes reject unknown camera-rig keys. v2.55's
Depth strength (
One constant can't serve both the clay and imported scenes, which supports a content-bounds + display-info fitter (#2385). Fill is still about 20 % of the view. Gaps found on the panel:
Repo: 🤖 Generated with Claude Code |
Done (2026-10-28)
|
Uh oh!
There was an error while loading. Please reload this page.
Summary
Substance 3D Modeler 1.22.8 runs its VR mode on DisplayXR today (Windows, Vulkan
XR_KHR_vulkan_enablev1, one side-by-side swapchain). The status light reads "3D active". Modeler is closed, with no render hook or scripting for the viewport, so it can't do texture mode. Its target class is the dedicated 3D window from the architecture direction, driven by the shared host library through a thin adapter (launcher + rig + coupling list).The overlay PRs used to get here (#2332 embed + UI peek, #2350 live depth) are test scaffolding only, not a request to merge. #2333 (gamepad Touch emulation), #2334 (rig pitch/pull-back) and #2347 (mouse hand + stylus) carry the input and framing ideas below.
What was measured (the tested display: a 3840×2400 tracked panel, 34.4 cm wide)
ipdFactor0.1 in the per-title rig, the clay sits at 0.16 % front, with nothing behind the glass.pitchDegrees −30andpullbackMeters 0.6(Proposal: legacy camera profile pitchDegrees + pullbackMeters (starting framing) #2334). With the narrow comfort vFOV (0.355 rad) only the backdrop was visible; 1.05 rad frames the block.What a closed legacy app needs from the shared host library
DXR_HostedDepthRelscaffolding).Constants that are named gaps
Glass 0.8 m, vFOV 1.05 rad, pitch −30°, pull-back 0.6 m, ipdFactor 0.1, menu inset 33.4 DIP. Each should come from display info, or from the app's own window and camera, through the host library.
Code
A private adapter repository: launcher, rig JSON, a
couplingmodule listing every Modeler/runtime internal relied on (each marked "not a contract"), and a status-label script. Apache-2.0. Available on request.🤖 Generated with Claude Code
All reactions