dhkatzandClaude Opus 5.5 065c7e9300
CI / build (push) Successful in 1m15s
Never make the client wait for drawing, or hold up its steps
The renderer process now takes each view's chunks on a thread of its own as
they come, and draws the newest frame on its main thread: the client no longer
waits for the previous frame to be drawn (on a VM, 22 of a frame's 25 ms).

The adapter records the client's steps (SceneViewer::step, by replacing its
entry in the exported IFrameListener vtable, after checking it), and the frame
pacer doesn't ask for a frame that wouldn't end before the next step is due: a
late step made the client catch up two at once, which showed as hitches. While
the renderer process covers the view, the client's renderer doesn't begin or
present frames, which could wait for the display.

The engine's stats now include the time in the client renderer's methods.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 21:30:46 -07:00
2026-10-28 03:31:00 -07:00
2026-10-28 05:17:03 -07:00
2026-10-28 05:17:03 -07:00
2026-10-28 05:17:03 -07:00
2026-10-28 05:17:03 -07:00

t5de-renderer

A new 3D renderer for the IMVU Classic client. Part of T5DE; unofficial, not affiliated with IMVU.

Two programs (docs/architecture.md): an adapter, t5deRenderEngine.dll, which IMVU Classic loads as a renderer plugin, and a 64-bit renderer process, t5de-renderer.exe, which draws with Diligent Engine. For now the client's own Direct3D renderer still draws the scene, and the renderer process proves the setup by drawing a small box over it. docs/interface.md has what we know of IMVU's renderer interface.

Building

Needs Visual Studio Build Tools 2026 (the C++ workload) and CMake 3.28 or newer. One preset per program:

cmake --workflow --preset adapter    # build/windows-x86/adapter/Release/t5deRenderEngine.dll, and the tests
cmake --workflow --preset renderer   # build/windows-x64/renderer/Release/t5de-renderer.exe

The renderer's first configure fetches Diligent Engine (pinned in renderer/CMakeLists.txt) and builds it, which takes a while.

Trying it

Copy both programs into a T5DE client folder built with the t5de-renderer patch, which has the OpenGL setting load the adapter in place of glRenderEngine.dll, then choose OpenGL in Settings > Advanced. The adapter's log is %TEMP%\t5de-renderer.log.

S
Description
A renderer replacement for the IMVU client.
Readme
453 KiB
0 Stars 2 Watchers 0 Forks
2026-10-29 05:47:11 +00:00
Languages
C++ 91.5%
Python 3.6%
HLSL 2.5%
CMake 2.4%