Bret Hudson
@brethudson
He/They • AuDHD • Goofball ✏️ Code/edu/tutorials @write.games. 🎙️ Used to run indieFunction.com. Opinions are mine – feel free to make them your own
Just started up my Discord bot for the first time in 3 months. It's very obedient
[Back to the current Pixelscapes hardware shuffle] And would you look at that 😍 We have vertex SSBOs!! It was 99% visually identical to the other rendering modes - all that was needed was to add the container's scroll offset to the camera
"Why do you keep all your old tech??" - people when they see my collection of phones and laptops Looking up specs, it turns out that my old Pixel 3 supports SSBOs AND has OpenGL drivers that play nicely ((Please please please work omg PLEASE))
I made an edit... and didn't see the change on my device. Confused, I made sure my code was executing the SSBO pipeline Uh oh Despite my Pixel 8 Pro having support for SSBOs, the driver restricts it to compute/fragment shaders in OpenGL. I'd have to switch to Vulcan (😱) for better compatibility
What made it so tricky to debug was that I realized that elements were anchored to three different radii: inner, outer, or middle The next step was to add some debug overlays to visualize the alignment of each element. You can see that the notches & handles were center-aligned to the outer radius
While the UI is starting to look good, the code behind it... was a mess. Lots of duplicated magic numbers and computations, making it very difficult to refactor But hey, the best part about messing with math in graphics is that you get all sorts of fun bugs! :)
The wedges have been replaced with pills (gonna add a three-line icon to indicate drag-ability). I also made the screen responsive for landscape orientations The #Pixelscapes schedule screen is slowly but surely coming together :)
Lots of refactoring around settings going on, and while I was deep in the trenches, I decided to add an overlay debug menu for #Pixelscapes Gonna post a video tomorrow to show it in action, as pictures don't explain it too well
Slowly but surely the schedule screen is coming together :) I hooked up a ViewModel to separate the state/logic out of the UI. I'm loving Kotlin and find Jetpack Compose's UI system to be really neat
MUCH better. There might be an optical illusion that makes it look more vibrant as you scale the image down. Might need to double check this later to make sure my math is right
Sometimes you get pretty far before realizing that your scaling ratio is inverted 😛
Here's what it looks like with sRGB, for comparison. You can see the colors are more muted/washed out. This effect gets more visible when the start/end colors are less similar
It's starting to look presentable! Using the gradient backgrounds for each wallpaper looks better than I was anticipating, largely due to Android supporting the Display P3 color space P3 gradients > sRGB gradients by a loooong shot
Today's #Pixelscapes update: a very WIP radial input for scheduling wallpapers Prior to this addition, you were either stuck with a single wallpaper or beholden to the hardcoded schedule built into the app Now, users can customize which wallpapers render when
I am amazed at how much time I spent (literally all day) on what looks like so little 😛 This screenshot is the start of the settings update for Pixelscapes 2.0, allowing folks to adjust values with a real-time preview Next post details why this took me all day
...and then you come across things like this, where you understand what it does, but have no idea how this was the solution you came to... or why one of the case groups returns a value directly
I moved the vertex & fragment shaders out of Java strings, and into their own files. To ensure the app was using the new files, I edited the shader without thinking twice about it Ten years ago... I barely understood GLSL
Here we are! A checklist of extensions So far: - extensions are provided via the user in settings.json - installed extensions are checked on load - extension names are cached in globalState
post the best picture you have ever taken of your pet (if you feel like it):
Hot tip for git users! Wanna add files (todo lists, notes, images, etc) to your project but don't want to commit them to your repo? 1) create a new folder (I call it `.ignore`) 2) create a global .gitignore with ".ignore" as its content (guide for global .gitignore: stackoverflow.com/a/7335487)
Before/after making some changes on my mom's bakery's website - border-radius (rounded corners) weren't a thing in 2014 when I first made this site A much needed facelift :)
I ended up finding AutoSubs, which exists as both a stand-alone editor and a DaVinci Resolve plugin. Thanks for sending me down the right path! github.com/tmoroney/aut...
Throwback to when I was 13 and obsessed with @maddymakesgames.com's An Untitled Story and wanted to make my own
Foiled again by text rendering!! There's a lot of fonts out there that don't handle outline strokes well at large values (or in this case, even a width of 10)