Skip to content

Releases: nautymac/tridef3d-win11-injector

v3.3.0 - window front end, no console

Choose a tag to compare

@nautymac nautymac released this 07 Oct 22:28

v3.3.0: a window instead of a console

Both launchers now open a small window: the games registered in TriDef 3D
Ignition (most recently launched at the top), a Launch in 3D button, and
a log pane that shows what the launcher is doing. No console window at any
point: the 32-bit injection helper runs hidden and Steam is started through
the shell.

  • Tridef3D_Play.exe and Tridef3D_Play_SR.exe behave the same way; the SR
    one adds the SR panel weaving as before.
  • Korean UI when Windows' display language is Korean, English otherwise.
    --lang ko / --lang en forces one.
  • A game name on the command line still launches it right away, with the
    window showing progress.
  • --console keeps the old terminal flow for scripts. --dry-run works in
    both.
  • Everything printed during a launch is also written to launcher.log next
    to the exe, so a failure can be reported even after the window is closed.
  • Per-monitor DPI aware: crisp and correctly sized on 4K / scaled displays.

The injection logic is unchanged from v3.2.x. Weaving DLLs under sr\ are
the same builds as v3.2.1.

Files

File Needed for
Tridef3D_Play.exe Regular TriDef launch
Tridef3D_Play_SR.exe TriDef + SR panel weaving
sr\x86\*.dll, sr\x64\*.dll Weaving DLLs used by the SR launcher
Inject32.exe 32-bit games. Same folder as the exe
*.bat Old console-era wrappers, no longer needed

v3.2.4 - white lettering on the launcher icons

Choose a tag to compare

@nautymac nautymac released this 28 Sep 04:49

v3.2.4: white lettering on the launcher icons

The "3D" and "Tridef" lettering on the icons is now white, with a light
raised edge, instead of dark blue on blue.

  • Tridef3D_Play.exe: blue glass tile, white "3D" over "Tridef".
  • Tridef3D_Play_SR.exe: purple tile, white "3D" over "Tridef SR".
  • At 40 px and below only the "3D" lettering is shown.

The icons are now drawn by res/make-icon.ps1 rather than cut from
artwork, so the letters stay crisp at every size.

No functional changes. Launcher behaviour and the weaving DLLs under sr\
are the same as v3.2.2.

If Explorer keeps showing an older icon after you replace the files, that
is Windows' icon cache. Run ie4uinit.exe -show, or restart Explorer.

Files

File Needed for
Tridef3D_Play.exe + .bat Regular TriDef launch
Tridef3D_Play_SR.exe + .bat TriDef + SR panel weaving
sr\x86\*.dll, sr\x64\*.dll Weaving DLLs used by the SR launcher
Inject32.exe 32-bit games. Same folder as the exe

v3.2.3 - new launcher icons

Choose a tag to compare

@nautymac nautymac released this 28 Sep 04:36

v3.2.3: new launcher icons

The launcher icon from v3.2.1 (two overlapping screens with a play
triangle) looked too much like the SRCapture3D app's icon. Replaced with a
TriDef-style design: a blue glass tile with raised "3D" lettering.

  • Tridef3D_Play.exe: blue tile, "3D" over "Tridef".
  • Tridef3D_Play_SR.exe: the same tile in purple with a "Tridef SR" label,
    so the two launchers can be told apart at a glance.
  • At 40 px and below only the "3D" lettering is shown, enlarged, since the
    smaller text is unreadable at those sizes.

No functional changes. Launcher behaviour and the weaving DLLs under sr\
are the same as v3.2.2.

If Explorer keeps showing the old icon after you replace the files, that is
Windows' icon cache. Run ie4uinit.exe -show, or restart Explorer.

Files

File Needed for
Tridef3D_Play.exe + .bat Regular TriDef launch
Tridef3D_Play_SR.exe + .bat TriDef + SR panel weaving
sr\x86\*.dll, sr\x64\*.dll Weaving DLLs used by the SR launcher
Inject32.exe 32-bit games. Same folder as the exe

v3.2.2 - steamflags variant removed

Choose a tag to compare

@nautymac nautymac released this 28 Sep 03:31

v3.2.2: steamflags variant removed

Tridef3D_Play_steamflags.exe is gone. It launched Steam with
-no-browser -no-cef-sandbox and shipped as a just-in-case backup from
v3.0.0 to v3.2.1. Those flags never made a difference once the DLL load
order was fixed, and nothing has needed the backup since.

  • Removed the steamflags exe, its .bat, and the code path behind it,
    including the write of those flags into Ignition's per-game Argument
    value. The launcher now only sets Ignition's LastGameName.
  • --steam-flags and --no-steam-flags are still accepted and ignored, so
    existing shortcuts keep working.
  • Tridef3D_Play.exe and Tridef3D_Play_SR.exe both carry the launcher
    icon introduced in v3.2.1.
  • Weaving DLLs under sr\ are the same builds as v3.2.1.

Checked after the change: Left 4 Dead through Tridef3D_Play_SR.exe
reaches the first woven frame as before.

Files

File Needed for
Tridef3D_Play.exe + .bat Regular TriDef launch
Tridef3D_Play_SR.exe + .bat TriDef + SR panel weaving
sr\x86\*.dll, sr\x64\*.dll Weaving DLLs used by the SR launcher
Inject32.exe 32-bit games. Same folder as the exe

v3.2.1 - launcher icon, SR weaving fixes for DX9 and DX11

Choose a tag to compare

@nautymac nautymac released this 27 Sep 08:30

Same launcher as v3.2.0 with two things fixed and its own icon.

What changed

  • The launchers have a proper icon instead of PyInstaller's Python one (Tridef3D_Play.exe, Tridef3D_Play_SR.exe, Tridef3D_Play_steamflags.exe). Source: res\make-icon.ps1.
  • SR weaving now works on games that wrap the device or the swap chain fully (--sr / Tridef3D_Play_SR.exe):
    • DX9: on Binary Domain the throw-away device's GetSwapChain(0) returns D3DERR_INVALIDCALL, so no hook was installed and the game stayed 2D on the panel. The real device is now found inside TriDef's device wrapper instead.
    • DX11: on Gone Home TriDef's DXGI layer returns a fully wrapped swap chain, same story. The real swap chain is now found inside that wrapper.
    • Verified: Left 4 Dead and Binary Domain (DX9, 32-bit), Gone Home (DX11, 64-bit) - hooks land in d3d9.dll / dxgi.dll, weaver created, first weaved frame at 3840x2160, weaving visible on the panel.
  • The weaving DLL source now lives in this repo under srweave\ (it used to sit in a separate project), so one clone has everything.

What is in the zip

Tridef3D_Play.exe (pick a game from the list), Tridef3D_Play_SR.exe (same plus SR panel weaving), Tridef3D_Play_steamflags.exe (backup variant), Inject32.exe (required for 32-bit games), the matching .bat wrappers, and sr\x86 / sr\x64 with the weaving DLLs.

Keep the folder layout as it is. Needs TriDef 3D installed with the game registered in Ignition once, and - for --sr - the SR / SpatialLabs runtime (the 32-bit runtime too for 32-bit games).

🤖 Generated with Claude Code

v3.2.0 - SR panel support (SpatialLabs / Simulated Reality)

Choose a tag to compare

@nautymac nautymac released this 22 Sep 23:37

v3.2.0: SR panel support (SpatialLabs / Simulated Reality)

New Tridef3D_Play_SR.exe (same as Tridef3D_Play.exe --sr): after TriDef's
DLLs it injects one more, SRWeaveDX9.dll (32-bit games) or
SRWeaveDX11.dll (64-bit games), which weaves TriDef's side-by-side output
for a lenticular SR panel inside the game process, right before Present.
No capture step, no extra frame of latency, exclusive fullscreen works.

The weaving DLLs come from the
SRCapture3D project (weave/,
release weave-v1.0.0) and are bundled here under sr\x86 and sr\x64.
Keep that folder structure next to the exe.

Verified with TriDef 3D active:

  • Left 4 Dead (DirectX 9, 32-bit)
  • Binary Domain (DirectX 9, 32-bit), seen on the panel
  • Gone Home (DirectX 11, 64-bit)

Requirements on top of v3.1.0: the SR / SpatialLabs runtime installed and
its service running. 32-bit games need the 32-bit runtime as well
(C:\Program Files (x86)\Simulated Reality\Platform\bin). Administrator
rights are not required for the SR launcher; Steam starts the game with
normal rights and injection works as-is.

In-game hotkeys: Ctrl+Alt+W weave on/off, Ctrl+Alt+S swap eyes, Ctrl+Alt+T
red/blue test pattern, Ctrl+Alt+L lens on/off. SRWeave.ini and
SRWeave.log live next to the DLL (sr\x86 or sr\x64).

Everything from v3.1.0 is unchanged: DirectX 9 + 11 through TriDef's own
DLLs, sequential loading, configuration-window games handled, exe-registered
games supported, Tridef3D_Play_steamflags.exe kept as a backup.

Files

File Needed for
Tridef3D_Play.exe + .bat Regular TriDef launch (no SR weaving)
Tridef3D_Play_SR.exe + .bat TriDef + SR weaving
sr\x86\*.dll, sr\x64\*.dll Weaving DLLs used by the SR launcher
Inject32.exe 32-bit games. Same folder as the exe
Tridef3D_Play_steamflags.exe + .bat Backup variant, not normally needed

v3.1.0 - Games with a configuration/launcher window (Binary Domain)

Choose a tag to compare

@nautymac nautymac released this 22 Sep 15:19

v3.1.0: games with a configuration/launcher window

Fixes the case documented for Binary Domain: Steam first opens
BinaryDomainConfiguration.exe (a resolution/options window), and the real
BinaryDomain.exe is only spawned when you press Start in it. v3.0.0 picked
the configuration window as the "main exe", injected there, reported
success, and the actual game then ran in 2D.

What changed:

  • Main exe selection. An exe whose name matches the install folder
    (Binary Domain → BinaryDomain.exe) is preferred. Configuration,
    options, settings, setup, launcher, updater and crash-handler exes are
    skipped, and the skipped ones are printed in the log so a wrong guess is
    visible.
  • Wait for the real game. The tool only injects into a process with the
    target exe name. A configuration/launcher window opening first is ignored,
    and the tool keeps waiting for up to three minutes with a periodic
    reminder. Click Start in the window as usual; injection happens when the
    real game process appears.
  • Registering by exe works too. If you add the game to Ignition by
    pointing it at the exe instead of as a Steam title, that exe is used as-is
    with no guessing, which is the surest way to pin games like Binary Domain
    to BinaryDomain.exe. The game is still launched through Steam: the AppID
    is looked up from the exe's install folder via Steam's appmanifest files,
    so the exe must live under a Steam library's steamapps\common.
  • Already running? If the target game is already open, the tool says so
    and exits immediately instead of waiting; Steam won't start a second copy.

Everything else is as in v3.0.0: DirectX 9 (32-bit) and DirectX 11
(64-bit) through TriDef's own DLLs, sequential DLL loading, LastGameName set
to the launched game, plain steam:// launch by default with the Steam-flags
build kept as a backup.

Files

File Needed for
Tridef3D_Play.exe Always. Self-contained, no install, no Python.
Inject32.exe 32-bit games only. Must sit in the same folder.
Tridef3D_Play.bat Optional double-click wrapper.
Tridef3D_Play_steamflags.exe + .bat Backup variant launching Steam with -no-browser -no-cef-sandbox. Not normally needed.

Run as Administrator. Cross-process injection requires it.

Requirements

Windows 10/11 64-bit, your own licensed TriDef 3D install, Steam, and the
game added once in Ignition's UI (Ignition need not be running afterwards).
No TriDef binaries are included or redistributed here.

v3.0.0 - DirectX 9 + 11, bypasses the TriDef Ignition pop-up

Choose a tag to compare

@nautymac nautymac released this 20 Sep 12:23

A way around the TriDef Ignition pop-up

Press Play in TriDef 3D Ignition on Windows 11 and you get the dialog
"this game did not use Direct3D 9, 10 or 11", with the game running in
plain 2D. This release exists to get around that pop-up.

Register the game in Ignition once so its per-game 3D profile is available,
then launch with Tridef3D_Play.exe instead of Ignition's Play button.
Injection is done from scratch against the correct process, so TriDef's real
DLLs hook the game, stereo 3D works, and no dialog appears.

The pop-up was never a licensing or compatibility check. It is a post-mortem
report: Ignition watched a throwaway steam.exe process instead of the game,
saw no Direct3D there, and said so.

What's new in v3.0.0

  • DirectX 9 support, using TriDef's own engine. Confirmed on Left 4 Dead,
    The Cave and Torchlight, every launch.
  • What made DirectX 9 work: load order. TriDefIgnition.dll must be
    initialised before TriDefD3D9.dll, or the D3D9 DLL stays inert. The old
    32-bit helper loaded both in parallel, so the order was random and DX9
    worked about one launch in three. Inject32.exe is now a 4 KB native
    helper that loads them strictly in order.
  • The right profile for the right game. TriDef finds a game's profile
    through Ignition's LastGameName registry value. The launcher now sets it
    to the game being launched, so you get that game's profile rather than
    whichever one was last clicked in Ignition.
  • DirectX 11 unchanged, confirmed on Gone Home.
  • Renamed to Tridef3D_Play.exe (was Play3D.exe in v2.0.0).
  • Supersedes v2.0.0, which was DirectX 11 only.

Files

File Needed for
Tridef3D_Play.exe Always. Self-contained, no install, no Python.
Inject32.exe 32-bit games only. Must sit in the same folder.
Tridef3D_Play.bat Optional double-click wrapper.
Tridef3D_Play_steamflags.exe + .bat Backup variant, see below. Not normally needed.

Run as Administrator. Cross-process injection requires it.

About the backup variant

While chasing the DirectX 9 problem, a forum tip suggested launching Steam
with -no-browser -no-cef-sandbox. It happened to be in place for the first
success, so it looked like the fix for a while. With sequential loading it
makes no difference: Left 4 Dead, The Cave and Gone Home all work without it.
Tridef3D_Play.exe therefore opens the plain steam:// URI. The
_steamflags build still launches steam.exe directly with those flags,
and writes them into Ignition's per-game Argument value, in case some title
turns out to care. The main exe accepts --steam-flags for the same thing.

Depth comes from the profile

With a matching TriDef profile you get real stereo geometry, proper
separation and convergence. Without one you still get a side-by-side split,
but it is flat with no depth. A game that injects cleanly yet looks flat has
no profile. That is not an injection failure.

Known limitation

The DLL set is chosen by executable bitness: 32-bit gets DirectX 9, 64-bit
gets DirectX 11. A 32-bit DirectX 11 game is not covered yet, as no such
title was available to test against. Never inject both sets into one
process. TriDefIgnition(64).dll is shared state for both, and loading both
hook DLLs at once makes TriDef report that the game did not use Direct3D.

Requirements

Windows 10/11 64-bit, your own licensed TriDef 3D install, Steam, and the
game added once in Ignition's UI. Ignition does not need to be running
afterwards. No TriDef binaries are included or redistributed here.

v1.0.0

Choose a tag to compare

@nautymac nautymac released this 13 Sep 05:06

Prebuilt Play3D.exe - no Python required. Requires TriDef 3D already installed and the game registered once in TriDef 3D Ignition.