mindbuffer / cohen_gig Goto Github PK
View Code? Open in Web Editor NEWWash lighting and LED visualisation and DMX control for the upcoming Josh Cohen gig.
Wash lighting and LED visualisation and DMX control for the upcoming Josh Cohen gig.
I just pulled down the latest master and got it working after a really long build process. The nannou windows then opened and I could see the visualisation going on.
I then navigated to the shader/src/lib.rs file and tried mutiplying the uniforms.time varibale by 0.0 to see if I could freeze time. After saving I could see it compiling and trying to hot reload but the visualisation stayed the same. I tried manipulating other parameters as well but seemed the changes were making no effect.
I then closed the window, reset all of my changes in the shader/src/lib.rs file and went to run the cohen_gig again, and cargo is now trying to rebuild all 345 crates from scratch again.... Are you seeing this bahviour as well @mitchmindtree ?
May have to thread the DMX sources and send the colours via a channel.
At the moment, each shader has a params struct that contains all of the shaders tweakable parameters. For example, the gilmore acid shader has a params struct like below:
struct Params {
speed: f32,
displace: f32,
colour_offset: f32,
grid_size: f32,
wave: f32,
zoom_amout: f32,
rotation_amount: f32,
brightness: f32,
saturation: f32,
}
It would be nice to be able to tweak these values during the show. Currently, the way i've mapped the midi controller is I can tweak the 2 most fun params for each shader. In this instance though, the gilmore acid shader has 7 more variables that aren't able to be tweaked, and since my mac cant hot-reload I will be unable to 'live code' during the performance.
I was thinking it would be awesome if somehow, when a shader is selected via the Drop Down Menu, the params associated with that shader showed up as sliders.... I haven't been sure about the best way to auto-populate this with out some crude hand coded solution for each shader... maybe there is a nice dynamic way of achieving this?
GUI Example (would be nice is the sliders were named after the params they were controlling)
Just a heads up for future reference as it's never a good idea to match on strings for a couple of reasons:
Currently, it looks like the wash_colors and led_colors are being packed into the same dmx buffer. We will need to be able to send 2 unique lines of dmx, one to the LED's and one to the house lighting console which will control the house wash lights and 2 spot lights.
The Vertex
input should look something like this:
struct Vertex {
position: Point3,
light: Light,
}
enum Light {
Wash {
index: usize,
},
Led {
index: usize,
row_col: [usize; 2],
normalised_coords: Point2,
}
}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.