-
-
Notifications
You must be signed in to change notification settings - Fork 306
Nannou Workshop
The Nannou Creative Coding Framework is a collection of code aimed at making it easy for artists to express themselves with simple, fast, reliable, portable code. Whether working on a 12-month laser installation or a 5 minute sketch, this framework aims to give artists easy access to the tools they need. Nannou was created by MindBuffer for this purpose and released as open source in the hope it can be useful to other artists and technologists.
- Brief overview or Rust, goals, benefits and differences to other languages
- Getting setup with VS-Code and installing the correct plugins to use for Rust
- Cargo and Crates.io
- Basic rust primitives
- Void and return functions
- Rust documentation
- Cargo doc for automatically generating documentation for your project
- Examples for graphics, audio, communication (OSC, Artnet), gui
- Types and Modules
- Safety and Immutability by default
- Generating FFI code to link C++ libraries
- Advanced graphics (Shaders, FBOs, Vulkan, GP-GPU, RLSL)
- Gantz Graph
- User Interface builder
Nannou is built using the Rust programming language. Thus, the first step is to download and install Rustup on your machine. To do so, open up the terminal, copy and paste the below text into the terminal and hit enter.
curl https://sh.rustup.rs -sSf | sh
Please see this link if you would like more information on the installation process.
We recommend using VS-Code as your editor and IDE for Nannou development. Currently it seems to have the best support for the Rust language including syntax highlighting, auto-complete and code formatting etc... It also comes with a handy integrated unix terminal and file navigation system. Below are steps we recommend for getting started with Nannou development using VS-Code.
- Download VS-Code for your OS.
- Nannou new
- Simple draw
- Builder patterns
- Events and how the Nannou Model compares to openFrameworks / Processing
- Simple Audio
- Simple Gui
- Simple OSC communication
- Artnet to Capture
- Etherdream and Laser output
- Nature of Code examples (go through some examples with the Processing code side by side)
- Generative Gestaltung