|0.3.0||Feb 24, 2021|
|0.2.9||Feb 20, 2021|
|0.2.8||Feb 20, 2021|
|0.2.7||Feb 20, 2021|
|0.2.6||Feb 20, 2021|
#19 in Rendering
- Saving shaders
- Taking screenshot
- Record video
In current state
pilka tries to seek
shaders folder with the files
shader.frag, on fail
pilka will generate
default setup for you. Then open shader in your favourite code editor (VS,
emacs, vim, ed etc.) and
pilka would fetch changes recompiling
shaders after each save.
F1: Print help
F1: Toggle play/pause
F2: Pause and step back one frame
F3: Pause and step forward one frame
F4: Restart playback at frame 0 (
F5: Print parameters
F10: Save shaders
F11: Take Screenshot
F12: Start/Stop record video
ESC: Exit the application
Vulkan SDK is required.
On recent macOS, to allow sound input to be captured (for FFT textures to
be generated), you need to: Open up System Preferences, click on Security
& Privacy, click on the Privacy tab then click on the Microphone menu item.
pilka is in the list and ticked...
erm, probably. I don't have macOS.
cargo install pilka
You also can install the application by to downloading the source code and build locally.
# or through ssh email@example.com:pudnax/pilka.git git clone https://github.com/pudnax/pilka.git cd pilka cargo install --path .
winit is the "default" window library in Rust ecosystem. And it covers the most of cross-platform issues for you.
RustFFT is used to perform Fast FFT for generating sound textures.
cpal is used to capture sound from microphone and probably MIDI devices in the future.
png is used to encode screenshots into png files.
notify is a file watcher and maintains the hot-reload.
ash is a Vulkan bindings. I choose
ash because I see
pilka as a
learning project and want to touch the maximum untouched Vulkan. For the
same reason I didn't use
Ffmpeg is used to record and save to video. For my concerns it's temporary solution after which I switch to rav1e on it's release.