Portland based and interested in Zig? We're putting together a hang out!
Details TBD.
24.4.2025 20:37Portland based and interested in Zig? We're putting together a hang out!Details TBD.https://zig.day/usa/portland/If you want to get notified when I post new writing, sign up for my newsletter.
https://gamesbymason.com/newsletter/
23.4.2025 02:39If you want to get notified when I post new writing, sign up for my newsletter.https://gamesbymason.com/newsletter/"🕓 A More Objective Approach to Optimization"
Read more on my devlog: https://gamesbymason.com/devlog/2025/#perf-baselines
23.4.2025 02:39"🕓 A More Objective Approach to Optimization"Read more on my devlog: https://gamesbymason.com/devlog/2025/#perf-baselinesAlright, you’ve installed a profiler and instrumented your code–what next? It’s showing you a bunch of numbers, how do you assign meaning to them?
*What counts as slow?*
23.4.2025 02:38Alright, you’ve installed a profiler and instrumented your code–what next? It’s showing you a bunch of numbers, how do you assign...For hot paths you could could manually check the generated code, but if you’re trying to analyze your entire program you’re going to want a profiler.
23.4.2025 02:38For hot paths you could could manually check the generated code, but if you’re trying to analyze your entire program you’re going to...A couple of weeks ago while working on the beta release of my ECS, I noticed my command buffer abstraction was slow.
It turns out I was assuming the optimizer could do a few things it couldn’t. The fix wasn’t all that interesting, but how do you catch this sort of mistake?
23.4.2025 02:38A couple of weeks ago while working on the beta release of my ECS, I noticed my command buffer abstraction was slow.It turns out I was...Sound interesting? Sign up here!
Sharing much appreciated.
https://gamesbymason.com/newsletter/
21.4.2025 00:30Sound interesting? Sign up here!Sharing much appreciated.https://gamesbymason.com/newsletter/If you sign up for my newsletter, I’ll send you regular writing covering:
* Game design
* Game marketing on Steam
* Updates on my open source game engine in Zig
* Links to worthwhile articles on game dev from around the internet
I’ve also spoken at events like Handmade Seattle and Software You Can Love. You can find links to all this stuff on my website https://gamesbymason.com.
21.4.2025 00:29I’ve also spoken at events like Handmade Seattle and Software You Can Love. You can find links to all this stuff on my website...Hey, I’m Mason.
I’m an independent game developer, and a board member on the Zig Software Foundation. In the past I taught grad & undergrad students to make both games and game engines, and programmed for various tech companies and start ups.
21.4.2025 00:29Hey, I’m Mason.I’m an independent game developer, and a board member on the Zig Software Foundation. In the past I taught grad &...Interested in game design, game engines, and the business of indie games?
Sign up for my newsletter to receive regular writing on game development.
https://gamesbymason.com/newsletter/
21.4.2025 00:29Interested in game design, game engines, and the business of indie games?Sign up for my newsletter to receive regular writing on game...And you can find the documentation here:
https://docs.gamesbymason.com/zcs/
12.4.2025 05:54And you can find the documentation here:https://docs.gamesbymason.com/zcs/For more details, see the write up in the original post.
You can find the code on GitHub:
https://github.com/games-by-Mason/zcs
12.4.2025 05:53For more details, see the write up in the original post.You can find the code on GitHub:https://github.com/games-by-Mason/zcsI think my command buffer extension implementation is a particularly interesting solution to a problem I've seen in a lot of ECS implementations.
12.4.2025 05:53I think my command buffer extension implementation is a particularly interesting solution to a problem I've seen in a lot of ECS...Key features of my implementation include:
* Persistent keys
* Archetype based iteration
* Command buffer support
* Command buffer extension support
* And Tracy integration
I’ve written a number of ECSs in the past. Going through this process a few times has given me a chance to hone in on what I want out of an ECS, and I’m really happy with how this one turned out.
12.4.2025 05:53I’ve written a number of ECSs in the past. Going through this process a few times has given me a chance to hone in on what I want out of...I’m writing a new game engine in #Zig and I’m open sourcing each module as I write it.
Today I released the beta version of my entity component system ZCS, I’ll consider it a beta until I’ve shipped my next game using it.
https://gamesbymason.com/blog/2025/zcs/
12.4.2025 05:53I’m writing a new game engine in #Zig and I’m open sourcing each module as I write it.Today I released the beta version of my entity...And, mlugg's site can be found here: https://mlugg.co.uk/
3.3.2025 04:56And, mlugg's site can be found here: https://mlugg.co.uk/The full proof and details on the out of range divergent points can be found on my devlog:
https://gamesbymason.com/devlog/2025/#Fast-Quaternion-Normalization-Proof
3.3.2025 04:55The full proof and details on the out of range divergent points can be found on my...If you try to extend this to my empirically tested range, it 'mostly' works but there are some divergent points represented by the dashed black lines here:
3.3.2025 04:54If you try to extend this to my empirically tested range, it 'mostly' works but there are some divergent points represented by the...⬆️
⬇️