XXX4Fans
relativisticgame from patreon

relativisticgame

patreon


relativisticgame posts

Week 68: rendering shadows

I worked on shadows this week… yet another explorative task. Rendering shadows correctly is one of the biggest technical challenges still to solve in the game, as the levels are 2D and shadows tend to give away the 3D shape of objects. The solution I prototyped is based on shadow maps. The idea is to construct, for each (po...

View Post

Week 67: camera logic and virtual joystick

This week I did an exploration around camera logic. I want the camera to zoom and move as the player explores the scene. The camera should zoom-in when the player approaches objects that need attention and should zoom-out when the player flies away. Why? Well, I find that keeping the camera zoomed-out gives a good view of whe...

View Post

Week 66: tools

This week I focused on tools. I am attaching a video that shows some of the stuff I did.

During the weekend I created a tool to measure how long it takes for the game to carry out various tasks. The game must produce at least 60 frames every second. That corresponds to 16 milliseconds per frame. In this time, the softwa...

View Post

Week 65: demo for patrons

Mostly work under the hood this week. I restructured the build system and how game levels are loaded. I am preparing the ground for the creation of a game editor, which will allow creating levels more rapidly.

I also looked into publishing a dev build only accessible to patrons. Itch has an option that allows patrons to...

View Post

Week 64: more sounds

This week I worked on sounds. I started by looking into the software libraries that I am using to manage sounds in my engine: SDL and SDL_mixer. After inspecting the source code of SDL_mixer, I concluded that I’ll need more functionality than what this library provides. In particular, I’d like sounds to be played slower (...

View Post

Week 63: virtual buttons and sounds

I’ll keep the summary short this week as I just published a lengthy retrospective post about my latest YouTube video. One thing I did this week was create virtual buttons to allow playing the game from mobile devices. This was in the TO-DO list for the next demo release that I plan to do in the next month or so. You can see...

View Post

Lessons learned: Time Dilation Video

A couple of weeks ago I posted a video about “Time Dilation” on YouTube. It reached ~670 views and it  is running out of steam now. My former video on Length Contraction was stuck on ~50 views for the first month and slowly exploded o...

View Post

Week 61-62: YouTube video and Christmas Holidays

relativisticgame post Week 61-62: YouTube video and Christmas Holidays from patreon

I was mostly off during these two weeks, but I took some hours to finish the “Time dilation” video and publish it on YouTube. I used this time to shorten and improve the script, create the thumbnail and the video description. I was a bit in a hurry to do all this. I forced myself to publish the video before the New Year, ...

View Post

Week 60: work on animations

I spent the whole week working on the video. It took me one day or so to finish adjusting the assets and their logic. The rest of the week was spent animating and creating the actual video. That was truly exhausting. Partly, it’s due to the tools I am using: none. Well, it’s all software coded by myself and certain aspect...

View Post

Week 59: new video on time dilation

As anticipated in my last post, this week I started working on a new video. The video will be about time dilation. It will be centered on a scenario I came up with while thinking about possible game mechanics. It is similar in structure to my previous video about the ladder paradox, but it’s for time dilation rather than le...

View Post

Week 58: unstable keys and room 2

I spent this week working on room 2 and introducing some related game mechanics: unstable keys and key fusion. Unstable keys are keys that vanish after some time. They behave like some real-world particles, say muons, and decay after some time. Similar...

View Post

Week 57: game save and reload

I started the week adding a new simple game asset to complete room 1. This is the first room and is very simple: the player needs to take a key from a key-holder and drop it into a keyhole. This opens the door that gives access to room 2.

Before starting to work on room 2, I thought I’d have a go at implementing game ...

View Post

Week 56: collision avoidance: it’s done!

his week I finished the relativistic implementation of the new collision avoidance algorithm. The new code is much better than the old one. Well, this is what I expected after working on the classical proof of concept a couple of weeks back. Here is 2023-11-24 18:38:29 +0000 UTC View Post

Week 55: improving collisions… still!

My week started working on the relativistic implementation of the new collision avoidance algorithm. I soon hit a problem I didn’t foresee: the new algorithm requires trying trajectories, evaluating them and accepting/rejecting them. While this functionality is super easy to implement for a classical point-like body (just d...

View Post

Week 54: improving collisions

I started the week investigating changes to the collision avoidance algorithm, the code that keeps the robot from penetrating walls and doors. My aim was to improve how the navigation felt, especially close to walls where the robot could easily get stuck. I also wanted to get rid of the annoying bounces that happen when the r...

View Post

Week 53: graphics enhancements and planning

This week I worked on improving the engine’s graphics capabilities. The problem was that my engine was only capable of supporting 2D textures (sampler2D in the GLSL language). In the last couple of weeks I used workarounds to cope with this limitation. So - you may say - why not stick with these? Well, using “dirty tricks...

View Post

Week 52: tile rendering and light paths

I started the week looking into improving the rendering of the level. I designed 6 tiles (one for flat walls, one for corners, one for the background, etc) The picture below is obtained putting together some of these different kinds of tiles (except for the door and the keyhole apparatus)

2023-10-27 18:05:01 +0000 UTC View Post

Week 51: tiled-based levels

I spent Monday and Tuesday improving support for bitmap animations in my engine. I am using this feature to render animations on the robot’s screen. Well, you may have noticed that I included one experimental animation in the last video I posted. That one, however, was achieved by loading the animation frame by frame. With ...

View Post

Week 50: key-keyhole game mechanics

This week I started working on object collection and the key-keyhole game mechanics. I decided to go for an easy implementation, where the key is pulled towards a docking point that moves with the player. A more physically accurate implementation would involve the player sending out information about where the docking point i...

View Post

Week 49: first demo released

relativisticgame post Week 49: first demo released from patreon

On Tuesday (3rd of October) I released the first demo. To me it was a big milestone, although I understand that it may feel a little bit underwhelming to others. At this stage there isn’t much to see for a lot of effort that I put into the project. Hopefully, it’ll pay off at some point. I confess this project comes with ...

View Post

Published Demo 1.0 on itch.io

relativisticgame post Published Demo 1.0 on itch.io from patreon

I finally published my very first demo on itch.io. You can find it here:

https://relativisticgame.itch.io/demo

The demo is very minimal. It’s just a robot that you can move inside a room and that’s it.

The focus of this release...

View Post

Week 48: more bugfixing

Last week I got the demo working on multiple devices. These included four Operating Systems (Linux, Android, Windows, MacOS) and five browsers (Chrome, Firefox, Edge, Safari, Samsung Internet.) I found it amazing to see my software run on all these different platforms. The demo, however, wasn’t working perfectly, yet. The a...

View Post

Week 47: bugfixes and release work

Apologies for being late with the weekly reports. I put my energies on the release preparation and on writing other posts. I didn’t have enough bandwidth to do all the writing. But the release is out of the door now (I’ll soon post about it), so here is the report for week 47, covering the period 18-22 September.

Th...

View Post

On the "Train in a tunnel paradox" video

In my last post I talked a bit about the "Train in a tunnel paradox" video that I published on TikTok and YouTube a few months ago. I didn't mention that originally the video was a bit longer. Here is the initial version I published on TikTok!

As you can see, the scene opens with lamps turning on - one ...

View Post

It’s almost one year!

relativisticgame post It’s almost one year! from patreon

October 2022 was my last month as an employed man. In November I started my new and interesting life. This means it's been almost 11 months since I started working on this project. I think it’s time for me to look back, evaluate what happened and think where to go next.

When I started, I set two main objectives for th...

View Post

Releasing on itch.io

Hey Patrons!

I think I am getting close to releasing the very first demo.

This one will be super minimal. It won't be playable. The only thing you'll be able to do is move the robot. The focus for this first demo is ironing out the process of building the game and publishing it on the web.

The plan is to pub...

View Post

Week 46: support for touch screen devices

This week I worked on improving support for mouse and touch devices. This was one of the items I listed in the to-do list for the minimal demo that I hope to publish soon. It ended up being all Lua coding work.

In the first part of the week I focused on menus. It is now possible to launch and select items using touch ge...

View Post

Week 45: completed switch to biquaternions

This week was a short one. It started on Wednesday, after my return from the summer vacation. I used all of it to complete the switch from matrices to biquaternion in the game. I just published a lengthy post explaining how that went. There isn't much else to report for this week.

View Post

Using biquaternions for Lorentz transformations

What’s the problem?

A long time ago, while debugging my game, I found a curious issue when using single-precision floating point numbers (floats) rather than 2023-09-18 17:45:22 +0000 UTC View Post

Week 43-44: YouTube "blessing" and biquaternions

In the past two weeks I was mostly on holiday. Well, the nursery was closed and my kid had to be looked-after full time. It was a pretty good incentive to go on holiday and spend time with our families. During these two weeks I still made some progress:

I hacked together an implementation of collision avoidance ...

View Post