Installation Field-tested
VSK travels as one plugin folder. Copying it into a project and pressing three Studio Setup buttons rebuilds the whole studio - the procedure below is the same one used to move the plugin between real machines.
Requirements
| Requirement | Why |
|---|---|
| Unreal Engine 5.8 (Windows) | The plugin targets EngineVersion 5.8.0; audio capture is WASAPI/Win64. |
| C++ toolchain (Visual Studio) | VSK has one C++ Runtime module; first open compiles it (turns a Blueprint-only project into a code project). |
| Blackmagic Desktop Video + DeckLink card | SDI capture/output. Field-tested on a DeckLink Quad 2 at 1080p50. |
| ffmpeg on PATH | MP4/MOV recording and video thumbnails. winget install Gyan.FFmpeg, then restart the editor. |
| NDI runtime (optional) | Only for NDI in/out - free from ndi.video. Without it NDI features stay quietly inert. |
Install steps
- Copy the plugin folder into
<Project>/Plugins/VirtualStudioKit/. DeletingIntermediate/andBinaries/first is fine - they rebuild. - Open the project and accept the “missing modules - rebuild?” prompt. The module compiles in seconds.
- Enable the Blackmagic Media plugin (Edit ▸ Plugins) and restart when asked.
- Open Window ▸ VSK Project and press STUDIO SETUP ▸ Apply Project Config, then restart. This writes the required engine config (HTTP bind address,
r.AllowGlobalClipPlane=True, the VSK game mode) - the first start after it recompiles shaders once. - Press Create SDI Input Assets (idempotent - safe to re-press) and Create SDI Output Asset. This materializes the whole media chain under
/Game/VSK/Media. - Build or migrate the level: a Camera Director, one
AVS_Billboardper talent, CineCameras, lights, and a Planar Reflection actor. Point each billboard’sPlateat itsVS_MT_CamNtexture and add aVS Media Inputcomponent. - SHOW FILE ▸ Import a
.vskshowto restore a complete studio - settings, scenes, boards, bindings and shelf media in one step.
Firewall (one-time) - to reach the web remote from other devices, allow the port in an admin terminal:
netsh advfirewall firewall add rule name="VSK Web Remote 8090" dir=in action=allow protocol=TCP localport=8090What travels, what doesn’t
Everything inside the plugin folder travels: the module, all Blueprint content, keyer materials
and the web remote page. Project-side state (settings, scenes, keyer values, boards…) lives in
SaveGame slots and travels via show files instead. Two assets are still hand-made because
they use device pickers: VS_Genlock_BM (custom time step) and VS_TC_BM (timecode provider).
Build cycle - when developing on the plugin source: close the editor, run
Build.bat (≈6-9 s), reopen. The editor locks the module DLL while it runs.