Sh4der Jockey
a tool for realtime visual performances using Rust and OpenGL
1
Speaker: @sp4ghet
Co-Creator: slerpy
Photosensitivity warning
2
Table of Contents
3
VJ
4
Livecoding / Algorave
Lots of tools e.g. ORC∧, Improviz, Quartz Composer, vvvv, etc.
5
6
Demoscene
Small executable computer graphics and weird/oldschool hardware.
Shader battle tool = Bonzomatic
7
8
Shader Showdown/Royale
9
VRChat Club Scene
10
Similar tools
11
Why a New Tool?
12
Table of Contents
13
Demo
14
https://github.com/slerpyyy/sh4der-jockey
15
Table of Contents
16
Rust and OpenGL
17
imgui-rs
No support for docking beta branch. (yet https://github.com/imgui-rs/imgui-rs/issues/249 & 462)
Adding support for docking branch seemed relatively trivial, so add support for docking.
Broke builds on linux due to winit version related errors, fix was just to bump the winit version used for various libraries.
18
NDI™ (Network Display Interface)
NewTek NDI™ is a proprietary protocol for sending video/audio over LAN.
The OBS-ndi plugin can be used to send arbitrary video data into sh4der jockey.
No good rust crate for NDI was found. Made a new wrapper crate for the NDI 4 SDK.
19
Async Pipeline Build
Building a pipeline can take a long time. (~Minutes if loading big textures in debug mode)
Ameliorate the pipeline build time across multiple frames using Async.
Building a pipeline is usually quite short (~10ms) especially in release mode, but can easily go > 16 ms.
20
What’s (possibly) next?
Suggestions and feedback welcome, nothing is set in stone yet.
21
That’s all folks
22