XXX4Fans
relativisticgame from patreon

relativisticgame

patreon


relativisticgame posts

Week 42: collision avoidance

This week I did quite a bit of writing. I wrote one article to explain how rigid bodies do not entirely live in the present, but have parts of their future trajectory determined by the rigidity constraint. The article also captures my thoughts on how physically correct collisions involving rigid bodies may be put together and...

View Post

New article: collision avoidance

relativisticgame post New article: collision avoidance from patreon

This week I have been experimenting a new approach for the dynamics in my game. After working on implementing collisions and being unsatisfied about the results obtained so far, I decided to try something different. I am explaining it all in a 2023-08-18 16:40:08 +0000 UTC View Post

New article: the quirks of relativistic rigidity

As described in the weekly status update that I just posted (I am one week behind, sorry) I spent a good part of last week thinking about relativistic rigid bodies and collisions. Yesterday, I took some time to write down some of the key conclusions. I hope you will find 2023-08-17 14:03:41 +0000 UTC View Post

Week 41: improving collisions

This week I mostly worked on improving the implementation of collisions in the game. Unfortunately, this is a challenging area of my project. I consider it one of the biggest technical challenges (in terms of difficulty rather than amount of work to do.) I wrote down some notes on paper. I will document some of the key findin...

View Post

Week 40: Robot's video and work on collisions

relativisticgame post Week 40: Robot's video and work on collisions from patreon

I continued to work on the CPU implementation of graphics primitives for the Robot’s screen. I spent one day creating a short video to capture and showcase the end result. I posted the video on TikTok and a slightly mo...

View Post

Week 39: the robot screen comes alive

This week I tried to make the robot’s LED screen come alive. I added some Lua code for this. The new code deals with the high level operations, such as controlling the cursor, the animations, etc. I attached a video that shows what I got so far. You can see I used the new capabilities to produce a fake boot animation.

View Post

Week 38: the robot's LED screen

I started the week by working on the shader code that renders the robot’s LED screen and I finally completed it. It was quite challenging to get the texture filtering right (antialiasing, mipmaps), but I got there in the end. I am attaching a video to this post showing the final result.

I also did some final adjustmen...

View Post

Week 37: browser support with Emscripten

relativisticgame post Week 37: browser support with Emscripten from patreon

This week I mostly worked to make my engine support Emscripten. It ended up being a good amount of build system work and figuring out how to convince CMake do what I wanted, but also to try to understand how Emscripten asset packaging can be done.

By the en...

View Post

Week 36: lighting in my game engine

relativisticgame post Week 36: lighting in my game engine from patreon

I did more work on the engine rendering code, completing the big code-refactoring I started some weeks back. I finally have a generic mechanism that I can use to set the light uniforms. I used this to add lights to the player for the engine’s flames. You can see the attached picture.

I also painted the robot’s body,...

View Post

Week 35: flames on the robot's engine

On Monday I focused on getting the flames right. In particular, the flames now flow in the right direction and do that in a continuous way, i.e. they don’t switch on/off abruptly. They also change direction smoothly. I am satisfied with the final effect. I did some experiments rendering shadows, just to see whether they add...

View Post

Designing the main character of my game

Here is a short video demonstrating the work I have done so far around the character of my next game demo. It was unexpectedly difficult to render the led screen with proper filtering (antialiasing & mipmaps.) I had to use textureGrad in the GLSL shader and spent almost an entire morning with pen and paper, figuring out t...

View Post

Week 34 progress update

relativisticgame post Week 34 progress update from patreon

This week I did the first significant work on my game prototype. The main game character will be a little robot that can move inside rooms and solve puzzles in there. You can see a rough sketch in the attached image. After thinking a bit about it, I decided to go for a “drone-like” shape. There is a good reason for this s...

View Post

Week 33 progress update

I spent all my time this week working on improving the engine’s C++ code. I introduced a new ECS system that simplifies sharing parameters across the entity tree. This ECS system will be the basis for future changes, in particular around how shader uniforms are set.

This work is overdue. I have coped with my engine's ...

View Post

Week 32 progress update

relativisticgame post Week 32 progress update from patreon

This week I did some more preparatory work for “the next thing”, i.e. the first game prototype. I created a minimal template of a game project using my engine. This is a directory that I will copy whenever I want to create a new demo or game level.

I also introduced a manifest file that lists all the assets...

View Post

Week 31 progress update

relativisticgame post Week 31 progress update from patreon

I started the week working on improving the TikTok video I published last week and making it ready to be published on YouTube. In particular, I played with Gimp and learnt a few tricks. My aim was to put together a thumbnail for the video. I hear this is quite important for YouTube. The result is attached to this post.

...

View Post

Week 30 progress update

relativisticgame post Week 30 progress update from patreon

On Monday I added another tool to my game engine using Dear ImGui. The tool provides a new window that allows stopping the user time and slowing down or speeding up the evolver time. I used this tool to do the final edits to the TikTok video that I mentioned in previous posts. I published the video on Tuesday. You can find it...

View Post

Week 28-29 progress update

I was abroad on holiday during the past two weeks. I only worked three days and mostly focused on using Dear ImGui to create the first prototype for the game editor. This was time well spent as I now have a tool that is usable and will definitely improve my productivity. I attach a video that shows the current state of the ed...

View Post

Week 27 progress update

On Monday did some work to enable better integration of Dear ImGui with my game engine.

I spent the remaining time in the week finalising the video which I published on Friday on TikTok. Needless to say, it took much more time than I expected. Also, shortly after publishing the video I decided to delete it. The reason? ...

View Post

Week 26 progress update

I spent the whole Monday fixing a non-trivial engine bug that I encountered on Friday last week. I spent the rest of the week working on the video that I am planning to publish on TikTok (and maybe as a YouTube short). This is slow and tedious work. I will need a good part of next week to finish. I haven't much else to report...

View Post

Week 25 progress update

relativisticgame post Week 25 progress update from patreon

I finally managed to run the game engine inside a browser (Google Chrome) after compiling it with the emscripten toolchain. As can be seen from the attached screenshot, I tested a minimal example that only uses one asset (a crappy analog clock that I created a long time ago), but I am satisfied for now. It is all I wanted to ...

View Post

Week 23-24 progress update

I started the week working on a new video which I aimed to publish on TikTok. Unfortunately, soon after starting work on this project I caught a bad bacterial throat infection. It gave me a fever and it got gradually worse as the long bank holiday weekend approached. I had to call 111 and got saved by antibiotics.

On th...

View Post

Week 22 extra video

relativisticgame post Week 22 extra video from patreon

View Post

Week 22 extra image

relativisticgame post Week 22 extra image from patreon

View Post

Week 22 progress update

relativisticgame post Week 22 progress update from patreon

Work on the demo continues. This week I made the train engines spit some fire. The flames grow as the train accelerates, see the video. This was fun work! It also improves the appearance of the demo somewhat, although I am learning that it is all about adding more and more details, while keeping it all coherent to “a chosen...

View Post

Week 21 progress update

relativisticgame post Week 21 progress update from patreon

This week I worked on improving the terrain in the demo. I replaced the green box placeholder with a procedurally generated terrain. The way this is handled in the shader is pretty inefficient and there are issues with antialiasing and more. Well, I did some work and now, as a result, I have even more work to do.

I also...

View Post

Week 20 progress update

relativisticgame post Week 20 progress update from patreon

So far I have made all my game assets using shader code, similar to what is done in Shadertoy. Doing things this way (rather than using more traditional tools like Blender and Gimp) has helped me to gain more familiarity with GLSL and with various visual effec...

View Post

Week 19 progress update

relativisticgame post Week 19 progress update from patreon

This week I focused on improving the visual appearance of the “train in a tunnel paradox” demo. My objective was to replace the remaining placeholder art in the demo with something less rough.

First, I replaced the train rail with a simple repeated texture. The new asset is very simple, but still better than the fla...

View Post

Week 18 progress update

This was a short week, as I went on holiday abroad and also had to look after my little one, who caught a cold. I spent most of my working time improving shaders. Last week I concluded that I couldn’t get rid entirely of the normal maps by using depth maps, as the results were unsatisfactory around borders between fully opa...

View Post

Week 17 progress update

This week I did a lot of work on the game engine to improve its capabilities. I refactored all the remaining ECS Systems so that they use entity registration. This enables building entire scenes programmatically in Lua.

I implemented spot-lights (directional lights and point lights were already supported) and introduced...

View Post

Week 16 progress update

relativisticgame post Week 16 progress update from patreon

This week I investigated using AI for asset generation. After watching a video about ControlNet, I think this one, I decided to give it a try. Rationale: I curren...

View Post