{{{
    "planted": "12/30/2020",
    "repotted": "12/10/2025",
    "nobreak": "true"
}}}

*gardener's note: These are not all my tweets. This is a conversation with [loren schmidt](https://twitter.com/lorenschmidt), which feels weird to put here. I still love this work though, and I think it's worthwhile. Check out her updated work at [https://www.patreon.com/vacuumflowers](https://www.patreon.com/vacuumflowers)*

---

*replying to [loren schmidt](https://twitter.com/lorenschmidt/status/1344517562193891328)*

#### ValerADHD *12/30/2020*
* Just wanted to say that I really enjoy all of these little updates you’re giving. I’ve made a heightmap renderer previously, but not to this complexity! All of these little spells and areas are lovely

#### loren schmidt *12/30/2020*
* thank you so much! oh that's wonderful, i don't run into many people who are into these! i find them somewhat magical. do you have any images or video of yours anywhere?

#### ValerADHD *12/30/2020*
* I'm not sure I do anymore! I think it may be on an old github though, I can dig it up!

#### ValerADHD *12/31/2020*
* I found it! this was one of my earlier projects, so it's written in Java in an SDL window. I actually managed to get it quite accurate by using precise raycasting close by, and then lowering quality as it gets further away. As you can see, FPS fluctuates massively. (640x360)

![https://twitter.com/ValerADHD/status/1344546198447923200](media/12_31_2020_1.gif)

#### loren schmidt *12/31/2020*
* oh this is so beautiful, one of my favorite things is how they do terrain. it feels so luminous.

#### ValerADHD *12/31/2020*
* I did end up expanding on it! I didn't include it at first because it's more based on Ken Silverman's Voxlap ([advsys.net/ken/voxlap.htm](http://advsys.net/ken/voxlap.htm)), but it was one of my first attempts at #voxelgamedev! It's fully software rendered, so it's laggy even at an internal resolution of 320x180

![https://twitter.com/ValerADHD/status/1344564479372177409](media/12_31_2020_2.gif)

* I also did an extremely promising test of GPU acceleration on the base rendering algorithm, which ended up being able to get 100FPS at 720p on an IntelHD card. (can you tell I don't get to talk about this often either? :P)

* I forgot to note that I didn’t include a gif of the last one because the laptop it’s on couldn’t create a stable gif of it with the recorder I’m using 😅

#### loren schmidt *12/31/2021*
* ha i hear that, this is such a specific special interest.
    and wow, i have never done a voxel renderer! that's neat. how did the gpu acceleration work? was the entire thing a shader? or did you go polygonal?

#### ValerADHD *12/31/2021*
* I was finally able to record my GPU accelerated version! I had to switch over to my development computer, but now it runs even better! I'm on a Nvidia 960m, and I can hit 200FPS with 1080p. There's a couple of artifacts still to fix, but it's definitely promising!

![](media/12_31_2020_3.gif)

#### loren schmidt *12/31/2021*
* oh wow! so this is the compute shader based approach? which operations are done which way?

#### ValerADHD *12/31/2021*
* Yep! All of the inputs and setup is handled by the C++ code, and then dispatched to a compute shader with some details like position, direction, horizon, etc. Then, each execution of the compute shader does all of the ray casting and calculations for a single column of the screen

#### [Tom Mulgrew](https://x.com/tommulgrew) *1/1/2021*
* How did you implement your compute shader? CUDA? OpenCL? Something else?

#### ValerADHD *1/1/2021*
* I'm using SDL2 with OpenGL, using the OpenGL compute shader system. I mostly chose it since it was the easiest for me to get set up with, since I already had experience with SDL and the OpenGL pipeline/GLSL shaders.

*gardener's second note: I really like these tweets. You can see a few of my non-Pico-8 hyperfixations popping out. I'll have to write up a more complete overview of these projects--they're a large part of how I learned to program and what I'm interested in now.* 