Add the renderer process
The renderer becomes two programs: the adapter (t5deRenderEngine.dll, 32-bit, in IMVU's process) and a 64-bit renderer process (t5de-renderer.exe) drawing with Diligent Engine, fetched with FetchContent and pinned. For now a spike: the adapter starts the renderer process for each engine and signals each frame through a shared memory channel, and the renderer process draws a box into a child window in the client's 3D view. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
0d126574bf
commit
9a7d7d2908
18 files changed
+491
-57
No files matched your search
+33
-12
@@ -3,29 +3,43 @@
|
||||
"cmakeMinimumRequired": { "major": 3, "minor": 28, "patch": 0 },
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "windows-x86",
|
||||
"displayName": "Windows, 32-bit (Visual Studio Build Tools)",
|
||||
"description": "IMVU Classic is a 32-bit Visual C++ program: build for Win32 with MSVC.",
|
||||
"name": "windows",
|
||||
"hidden": true,
|
||||
"generator": "Visual Studio 18 2026",
|
||||
"architecture": { "value": "Win32", "strategy": "set" },
|
||||
"binaryDir": "${sourceDir}/build/${presetName}",
|
||||
"installDir": "${sourceDir}/build/${presetName}/install",
|
||||
"installDir": "${sourceDir}/build/install",
|
||||
"condition": { "type": "equals", "lhs": "${hostSystemName}", "rhs": "Windows" }
|
||||
},
|
||||
{
|
||||
"name": "windows-x86",
|
||||
"inherits": "windows",
|
||||
"displayName": "Adapter (32-bit)",
|
||||
"description": "t5deRenderEngine.dll, loaded into IMVU Classic, a 32-bit Visual C++ program.",
|
||||
"architecture": { "value": "Win32", "strategy": "set" }
|
||||
},
|
||||
{
|
||||
"name": "windows-x64",
|
||||
"inherits": "windows",
|
||||
"displayName": "Renderer process (64-bit)",
|
||||
"description": "t5de-renderer.exe, with Diligent Engine (fetched and built on the first configure).",
|
||||
"architecture": { "value": "x64", "strategy": "set" }
|
||||
}
|
||||
],
|
||||
"buildPresets": [
|
||||
{ "name": "debug", "configurePreset": "windows-x86", "configuration": "Debug" },
|
||||
{ "name": "release", "configurePreset": "windows-x86", "configuration": "Release" }
|
||||
{ "name": "adapter-debug", "configurePreset": "windows-x86", "configuration": "Debug" },
|
||||
{ "name": "adapter-release", "configurePreset": "windows-x86", "configuration": "Release" },
|
||||
{ "name": "renderer-debug", "configurePreset": "windows-x64", "configuration": "Debug" },
|
||||
{ "name": "renderer-release", "configurePreset": "windows-x64", "configuration": "Release" }
|
||||
],
|
||||
"testPresets": [
|
||||
{
|
||||
"name": "debug",
|
||||
"name": "adapter-debug",
|
||||
"configurePreset": "windows-x86",
|
||||
"configuration": "Debug",
|
||||
"output": { "outputOnFailure": true }
|
||||
},
|
||||
{
|
||||
"name": "release",
|
||||
"name": "adapter-release",
|
||||
"configurePreset": "windows-x86",
|
||||
"configuration": "Release",
|
||||
"output": { "outputOnFailure": true }
|
||||
@@ -33,11 +47,18 @@
|
||||
],
|
||||
"workflowPresets": [
|
||||
{
|
||||
"name": "release",
|
||||
"name": "adapter",
|
||||
"steps": [
|
||||
{ "type": "configure", "name": "windows-x86" },
|
||||
{ "type": "build", "name": "release" },
|
||||
{ "type": "test", "name": "release" }
|
||||
{ "type": "build", "name": "adapter-release" },
|
||||
{ "type": "test", "name": "adapter-release" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "renderer",
|
||||
"steps": [
|
||||
{ "type": "configure", "name": "windows-x64" },
|
||||
{ "type": "build", "name": "renderer-release" }
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
Reference in new issue
Block a user