IMVU's projections give depth from -1 to 1; its Direct3D renderer maps it to 0 to 1, and now so does ours. Without that, the nearer half of the depth range was clipped, the whole 2D overlay (name tags, the frame rate, the room's title) with it. The adapter also draws drawTrianglesFromMemory without indices, and sums up what the client draws in its log. Co-Authored-By: Claude Opus 5.5 <[email protected]>
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.