The adapter starts one renderer process per client, with the first engine (again if it has exited), and attaches each engine's channel to it through a control section (protocol version 5: Control, the -attach event). The renderer process keeps a window, swap chain and scene per channel on one Direct3D device, takes the views' frames in turns, and closes a view when its engine does. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
6e4fe589e5
commit
8055099920
5 files changed
+404
-195
No files matched your search
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
// The renderer process (t5de-renderer.exe, 64-bit) an engine draws through: started with the engine, sent the
|
||||
// command stream through a shared memory channel (include/t5de/protocol/channel.hpp), and told to exit with it.
|
||||
// The renderer process (t5de-renderer.exe, 64-bit) an engine draws through: one for the whole client, started with
|
||||
// the first engine; each engine sends it the command stream through a shared memory channel of its own
|
||||
// (include/t5de/protocol/channel.hpp), and closes the channel when it's destroyed.
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
@@ -14,7 +15,8 @@ namespace t5de {
|
||||
|
||||
class RendererProcess {
|
||||
public:
|
||||
// Starts t5de-renderer.exe from this DLL's folder, drawing into part of window; null if it can't.
|
||||
// A channel to the renderer process (t5de-renderer.exe from this DLL's folder, started if it isn't running),
|
||||
// drawing into part of window; null if it can't.
|
||||
static std::unique_ptr<RendererProcess> start(HWND window, protocol::View view);
|
||||
|
||||
RendererProcess(const RendererProcess&) = delete;
|
||||
|
||||
Reference in new issue
Block a user