Jumping in with the absolute basics here, let’s get a window on screen, the GPU API initialized, and clear the render target to a known color. The source code for this post is under the Example1-GettingStarted directory in the project repo . Here’s the end goal: We’ll start with a single Example1.c file, using SDL3’s new main functions . We’ll need to implement four functions: SDL_AppInit ,…
Ok, so. I want to learn how to use a modern GPU API, and since SDL3 was just released with a new GPU API abstraction over the major 3 GPU APIS (Direct3D 12, Vulkan, and Metal), it seems like a good time! Except, it’s maybe a little too new: the documentation on it is great, but it feels like it assumes you already know how to work with one of the big 3 APIs. I don’t. I never really moved beyond…
It’s the first weekday of summer vacation, and we don’t quite have childcare worked out yet, so my poor kids are stuck in the office with me this afternoon. A few things come to mind. First, thank goodness for the Switch. Kayla’s playing Breath of the Wild quietly. Second, yay, there’s a new Monument Valley out today! That helps a ton. Mostly though, I think I need to load up that computer in the…
It started with me being curious: if I use an Integer in Kotlin, am I going to be paying a penalty for using a boxed primitive? So I wrote some silly benchmarks to confirm. First, in Java: public class SumTestPrimitive { public static void main ( String [] args ) { long sum = 0 ; for ( long i = 1 ; i <= Integer . MAX_VALUE ; i ++) { sum += i ; } System . out . println ( sum ); } } public class…
I ended up turning to a Clojure REPL to solve an issue in that project I totally didn’t sneak Clojure into before and realized I did some things the hard way last time. First up: you don’t need to create and compile a Java class from Clojure to call into Clojure code from Java. If I had actually read the Java Interop reference guide on Clojure.org , I would have noticed that there’s a section on…