@xenogon My slicer (PrusaSlicer) reads STEP files directly. Yours probably does too.
If you still need an STL, slicers can export STL.
Crusty geek. Retired software developer, aspiring musician. Used Unix way before it was cool.
I'm in New York, but my heart is in Oregon. My cardiologist hates that.
Once I built a pumpkin chucker. Another time, I built an LED cube.
Interests: 3D printing and making in general, synths (playing and making them), learning the bass guitar (rock, jazz, funk), FPGAs and electronics, pinball. I spent 40+ years obsessively coding and studying computing, but that interest has finally cooled.
@xenogon My slicer (PrusaSlicer) reads STEP files directly. Yours probably does too.
If you still need an STL, slicers can export STL.
@Siff It's fun to notice how his clothing changes as the workshop gets cooler and warmer with the seasons. He worked on that thing for a _long_ time.
@Siff To be clear, that is not me. It's an impressive hacker/musician who hasn't made many Youtube videos.
I don't think I've ever posted a music video here, but this needs to be seen by all my people.
Time lapse of a custom analog synth build
https://www.youtube.com/watch?v=9srLonLwwfY
@Andrew For an installation, I'd definitely run this on a PC with a good GPU. Then you could handle lots of pixels and special effects.
@Andrew I thought this watch face based gizmo was unbearably cute, so I bought one a couple of months ago. It's 1.69 inches diagonal, 240x280.
Could maybe do that. It rapidly gets more expensive to compute (and uses more more memory). I'll be pushing the ESP32 just to make this much run.
https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-1.69#Pinout_Definition
Karl Sims, of course, is The Man when it comes to reaction diffusion eye candy. Try his RD tool, and click on the Example button a few times to get an idea of the visual effects it can produce.
https://www.karlsims.com/rdtool.html
He's also got a great tutorial. I relied heavily on this while writing mine.
https://www.karlsims.com/rd.html
🧵 8/N
It runs!
It's slow though. This demo, sped up for the short attention crowd (that's you), is 1800 simulation steps per second. It uses > 60% of one CPU core. I'm certain the ESP32 will be a lot slower.
I believe I can find another factor of two through optimization.
And there's near infinite scope to make it prettier/more interesting.
🧵 7/N
@guenther Very true. And I want to try embedded Rust someday. But for this project I want to lean on ESP-IDF, lvgl, and some other libraries. And wgpu, the primary reason I started in Rust, is not on ESP32, AFAIK. (I doubt it would fit.)
After two solid days of hacking, I've got a simple canvas that I can draw on. In Rust, using wgpu, running on a Mac. Now I can actually start working on reaction diffusion.
Rust calls C for the actual pixel painting. I will implement the actual R-D code in C, too, because this is ultimately going to run on an ESP32 with a touch screen. That's also why the canvas is such an odd size. 240 × 280.
🧵 6/N
But this thread isn't about the wgpu cube. That's just the introductory anecdote.
Today I started another Rust/wgpu project and remembered how very hard this stuff is. wgpu is at least 0.4 on the Vulkan scale of overengineered complexity.
This is going to be an exploration of reaction-diffusion algorithms, and just maybe fluid flow. I'm using wgpu as a way to get 2D pixels onto the screen.
🧵 5/N (reposted to attach this toot to the thread)
@oldperl Maybe so. I didn't try to resist, so I don't know.
Here are the sources. Today's changes haven't been committed or pushed yet.
https://github.com/kbob/wgpu-cube
🧵 4/N
Stuff I learned:
- wgpu
- Rust
- virtual trackball
- lighting
- MSAA
- shadows
- textures
- PBR
- "Disney principled shading"
- light bloom
- resampling/decimation
- reflected lights
- render graphs
- Metal debugger
- Lanczos filter
+ (edit) tone mapping
Each of those turned into a research project, generally exceeding how I used them here.
🧵 3/N
Here's a short video. And yes, this is where my Mastodon avatar comes from.
In 2018-19 I made an actual LED cube from panels, 3D printed parts, and electronics. This app was originally going to be a simulator for new light patterns, but I got carried away with the visual effects and never got around to any patterns except the bouncing bands.
https://makertube.net/w/fXb6YiGxeZjZLrG27AphCm
🧵 2/N
In 2022 I explored wgpu and made this rotating cube demo. In the last three years, it stopped running. Today I debugged it and got it running again. I didn't actually find the bug, but narrowed it down to a dependency. I upgraded the dependency I was using by 37 versions and rewrote my code to use the current API.
Anyway, it works again. I'd forgotten what a lot of work I'd put into this.
E.g., note the reflected glow on the floor and the bloom around the LEDs.
🧵?
@Siff I don't know. I should check. (I really don't want to learn Windows sysadmin today, though.)
@gsuberland Ah. I missed that the price was equal to the fossil fuel price.
I don' get it.
This story has gotten a lot of traction. The headline result is that solar energy can provide 97%, year round, of an arbitrary amount of energy using an abitrary amount of power and storage in an arbitrary sunny city for an arbitrary price. And some less sunny city would get 62%. Why those specific numbers? Why not 10% more or less of any of those?
Am I missing something?
@esden Now modulate the power voltage to make the green LED pulse too.