Ghost Ship

January 26, 2022

One other thing I have managed to work on during the break is the next ship in the roster. I have mainly based it on the Blackbird spy plane, which is a plane that has fascinated me since I was a little kid.


This being a spy plane, its power is that it can become a ghost and go through other ships. I needed a cool transition to showing that and I thought it was the time to flex the shader muscles a bit in Godot. After a few stupid mistakes and reading a lot of the docs and some examples, I managed to get what I wanted working. During the transition you pass a receeding X value that marks where the transition between real ship and ghost is. At that point I chose to draw a bright white line, and in front and behind it there are two different colours with different alpha values. I am quite pleased with the effect and hopefully it is easily identifiable as to what it actually does.


Productive Xmas

January 22, 2022

Over Xmas back in my hometown, I have been able to advance on the game quite a bit. I finished a rough prototype which includes just one ship, with no powers yet, and tried to add all the visual flair I could for now:


The main thing I have worked on is tuning the physics and getting all the lights to change and the thing to look “finished”. Now I need to add powers and other ships, but I have spent the better part of January just getting back to my routine. The only reason why I’m posting is because I have finally refactored the script so that it is usable, it was a big mess. Since I need to reuse it on the other ships with minor modifications, I made sure it was relatively easy to do so. It is the least satisfactory job though, because you are not implementing anything new and are just breaking things initially to then try to get them back to normal!

Modelling Advances

December 2, 2021

I have finally braved into starting the Tron Warp game properly. Last weekend I went back to my hometown, which meant a four and a half hour long trip by train. Apart from reading Dune compulsively (with more ideas triggering in my head for videogames that I probably will never make, mainly because I’d be using IP that’s not mine hehe) I also clocked some work into modelling with Blender.

Now, I am an aerospace engineer. That means that I have had proper CAD training and I should be able to figure out Blender by myself with some tutorials and be able to make some decent models. Truth is, I have either never had the patience or the wits necessary to do so, plus I am doing this project on the Macbook Air I bought and on the go which usually means no mouse. The logical conclusion is that rather than modelling by drawing on the screen, I am going to do things through code.


The first ship I have designed is above: the hull is different ellipsoids combined together, the “wings” (or pushers actually) at the side are made out of parabollas over straight lines and the connectors are a truncated cone. The pushers are actually to push other ships towards oblivion!

What I have not decided on yet is how to render these models. I am going to give Godot a try, because I have used it for 2D and everything was super simple to set up and a pleasure to code in actually, and I can’t be bothered to write all the code to do the 3D rendering in C or C++ (not if I actually want to finish the game that is). I was thinking about going for a low resolution toon rendering, to give it a very old school feel, but this morning while I was still in bed I thought that a look similar to Antichamber might work better. I guess I’ll A/B test it on myself and friends in order to choose.

Migration to Hugo

November 26, 2021

I haven’t published anything in a while in the blog because I was busy migrating it to a new technology. I was using Django, which is very powerful and easy enough to use. It is based on python too, which means that I could flex a bit the rusty muscles I had. However, it is mainly designed to be used with dynamic webpages, and this being a blog plus projects up here, it did not make a lot of sense (I do not want comments on the posts because well, then I would have to enter into the world of filtering spam, moderating behaviour, etc etc which I am not keen in doing at all.

So, I obviously started with reinventing the wheel and wanted to make my own static site generator written in python. It would obviously end up being really not general at all or reusable and with lots of quirks about how to use it because I would not devote time to it. Suffice it to say, the effort was short lived (thankfully).

After some common sense shone inside my head, I decided to go with Hugo. It is a static site generator written in Go, but just browsing through a couple of tutorials I realised that I could probably port it in a couple of days. Alas, that is what happenned: over this week in little spaces of free time I managed to port it, and then in the train trip to Seville I finished it! And here’s the result, for you all to bask in its glory.

Tron Warp

October 15, 2021

So after a long time of not developing anything at home, I have finally set up everything again for C++ development with OpenGL, and it is all because of updating to Windows 11 (to be fair I am a bit bored at work so that contributes a bit too). Since I now not only have all the Linux tools available in Windows, but can also run graphical applications, it is very exciting.

I had a few abandoned projects, but I think I am going to go forward with TronWarp (name to be improved…), which is a remake with improvements on a silly game I made for a quick ludum dare jam back in 2014 or so. It was basically a crossbreed of Hexagon and G-switch, you race motorcycles through an octogonal tunnel avoiding the missing tiles, and you can jump over to the opposite side of the tunnel at any point. It featured crazy graphics (the floor would smoothly change colour every frame) and it was mostly in 2D, doing the calculations for the tunnel in the CPU and then just drawing the triangles myself rather than uploading models to the GPU.


Now, because part of me weants to do some creative OpenGL shader coding rather than doing it in an engine such as Godot ( I know I know, deprecated, old and useless, kind of want to do it anyway) I am moving the whole thing to 3D, with a retro look. Maybe I will even implement a CRT filter, who knows. I also want to beef up the gameplay, giving the ships that race through the tunnel some kind of power so that they can push other racers off the track. However, the main design constraint is the fact that I want 4 players and I want them to be able to play on a single keyboard, which was a feature of the original Warp, so the control scheme is going to be a bit tricky.

Chessy Feelings

October 14, 2021

I have recently come back to playing chess. I have actually started studying a bit, not only solving puzzles and playing but looking at openings and some pro games. I have to say I am enjoying it massively, in a way I never had when I just played my father and lost endlessly. I still cannot beat him, but hopefully soon enough.

After starting at the mandatory 1200, I plummetted down to the high 800s, which is when I started paying for the gold tier at At 3 euros per month it is not expensive, and I can get all the games I play analysed. It is the best way I have found to improve other than studying the openings and trying them out numerous times. That has landed me this week in the mid 1100s, which is good but not great. Let’s see if I can keep it up and make it to the 1600-1800s by the end of the year!

A hard days knit

October 11, 2021

So today I spent all day knitting a hat. Wanted to do many things: compose a bit, program a bit, maybe advance in the game I am trying to make (the pixel art is very hard) but nope, I just knit all day. At least I got a hat out of it.

I had wanted to make one with earflaps for a while, and while the result could have been better, I think it is quite decent taking into account it was the first time I was using a circular knitting needle. It is quite hard to use and there is no way to stick it under your armpit, so I ended up awkwardly holding the needles in my hands and against one leg. I bet there is a proper way to knit with them, I just didn’t go and research it.

I also had to do a bit of cheating because the hat ended up being a tad bit too big. What I did was saw it tighter with the grey wool around the front and back, and the end result is not too bad. I also learned to do a pompom, which is nice! Anyway, here’s a picture of the end result with my ugly mug on it.