Blogs
September 2025 Update
The bad news upfront: I once more failed to deliver the geoscape experience. There are a handful of reasons for this.
First of all, I made the mistake of buying MegaBonk. I’m a bit of a sucker for games likes Vampyre Survivors, and this one hits the same grind and addictivness.
Secondly, the Windows 10 deprecation and subsequent switch to Linux. This took some time away that I wanted to spend on game development, as I had to not just re-setup my Windows workstation to run Linux, but also to adapt the current code to work on this new OS. This is not all bad, though, because cross-platform support was something I wanted to have anyway.
October 10, 2025
Switching to Linux
The last week I spent a lot of time switching my Windows development machine over to Linux. Microsoft is ending support, and arbitrarily decided that my CPU isn’t suitable for Windows 11. So this was kind of a necessity. Long story short, I have switched to Kubuntu, a Linux Desktop envrionment that I have used in the past. And yes, it can also run games! The ones I play the most perform surprisingly well through Steam with Proton.
September 28, 2025
August 2025 Update
Another month has passed. As mentioned in the July update, the goal was to recreate the class Geoscape view from the original X-Com game. So, what’s the status with that? Well, it’s unfortunately not done. There are a few reasons for this: the weather here in Iceland was surprisingly good, so more time was spent enjoying it before the inevitable harsh and dark winter returns. Also, implementing mouse picking and fixing some issues with the skybox took a bit longer than expected.
September 5, 2025
July 2025 Update
The end of July 2025 also marked 6 weeks since I started this project. During this time I made a surprising amount of progress on many – but not all – of my goals:
Gained experience with open source libraries
For starters, I learned that there is no need to learn Vulkan itself. Instead, SDL3 provides a new SDL3_GPU module to
interface with modern GPU APIs. I am sure that there are use cases where more fine-grained control is necessary, but for
my use case SDL3_GPU is sufficient so far.
August 6, 2025
Project layout
Every non-trivial project benefits from a bit of organization. One aspect of this is the layout of the project directory.
June 26, 2025
Choosing open-source libraries for game development
At the beginning of each project there are a lot of decisions to be made. For example, one of the decisions for Z-Com was to not use an existing game engine like Godot or Unreal. Instead, I want to gain experience with various cross-platform open-source libraries.
June 22, 2025
Integrating Clang with vcpkg
One major benefit of using a package manager like vcpkg is that it automatically builds all your dependencies with a compiler of your choice, as long as it knows about the compiler. In case of vcpkg, the finer details of this process are managed through a mechanism called triplets. Out of the box vcpkg ships with triplets for many different compilers and platforms. However, unfortunately there is no such triplet available for using clang on Windows.
June 17, 2025
Setting up the development environment
One of my goals for this project is to build it with open-source libraries:
- Gain experience with a variety of open-source libraries for cross-platform development.
Another goal is to practice my skills in modern C++:
- Have a project with which I can practice more modern C++.
Both of these goals pose some interesting constraints on the development environment.
June 16, 2025
And so it begins
Welcome to the first Z-Com dev blog!
Today marks the day this project takes off. As stated on the about page, this is a hobby project, so I am not sure how long it’s going to take to finish it.
I am also not sure how exactly this blog is going to look. But we all have to start somewhere, and so this will have to do as the first post.
June 15, 2025