| Crates.io | pilka |
| lib.rs | pilka |
| version | 0.8.2 |
| created_at | 2021-02-20 14:45:22.368602+00 |
| updated_at | 2024-07-08 07:24:40.821333+00 |
| description | Another live-coding tool for creating shaders demos. |
| homepage | |
| repository | https://github.com/pudnax/pilka/ |
| max_upload_size | |
| id | 358049 |
| size | 4,671,044 |
Pilka is a cross-platform live-coding tool for creating shader* demos, similar to Bonzomatic, KodeLife or sh4der-jockey.
Available features:

In current state pilka tries to seek shaders folder with the files
shader.vert and 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 after each save.
Time and Pos = 0)Pos(per-draw-update)
| name | type | range |
|---|---|---|
| position | vec3 | (-∞, ∞) |
| time | float | [0, ∞) |
| resolution | vec2 | [0, a] |
| mouse | vec2 | [-1, 1] |
| mouse_pressed | bool | |
| frame | uint | |
| time_delta | float | |
| record_period | float | |
| prev_frame | texture |
--record f32 - Specify duration of recorded video--size u32xu32 - Specify window size and lock from resizingVulkan 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.
Make sure 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 git@github.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.
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 vulkano, erupt, vulkanism, vkvk.
Ffmpeg is used to record videos. For my concerns it's temporary solution after which I switch to rav1e on it's release.