The calm before the storm
December and some of January have been the first vacation we've had in like 5 years. It was strange to NOT do things, and we probably cheated by doing some work when boredom was at its highest. I promise to keep it a secret if you will ;)
The wind is picking up speed
Art-wise, we are doing a makeover on all the graphics. The reasons are:
- There are some assets from week 1, which were made, integrated, and have since become stale.
- The png files themselves are exported with old versions of Photoshop and our game engine prefers recent renders.
- There are some assets that we aren't using anymore and need to be tracked down and removed.
To be clear, we're not chacking the art style, merely bringing it to 2022
Code-wise, there is much work to be done, and I will write it in a separate paragraph.
"Toto, I don't think we're in Kansas anymore."
Upgrading the framework to DOTS/ECS.
Until now, the entire game ran on internal modules. Small and numerous modules. This allowed programming to be easy to read, easy to write and if a bug happens, it won't collapse anybody but the system it's in. It also made fixing the bugs easy because they could only BE in a single place.
But now, most of the gameplay, especially the racing scene will be converted to ECS. Long story short, it's a way to organize data and game mechanics to the likings of modern computer hardware. With the current code, we can stay over 30fps but not guarantee 60fps. In a racing game, I would like to stay over 100fps if I could. We are talking about a few dozens of "things" interacting on the race track.
ECS technology allows hundreds of thousands of "things" to exist in the scene and the game engine wouldn't bat an eye, even if they do physics.
Unfortunately, I can't show anything here as it's just code. I will leave you with this video (time 24:52)
2D racing to 3D racing.
The original prototype called for simplicity and having a 2D sidescroller was easy to achieve.
Our mistake was relying on the prototype and building what NOW is painfully obvious to be a shoddy foundation :(
We are recreating the gameplay in a 3D world with all the trimmings:
- Procedurally generated terrain, textures, and props (like trees, volcanos).
- Biomes and props that you expect to be found there (forest, lava, arctic, etc.).
- Fully physical world (like meteors in the background will hit trees and burn them).
- Day/night lighting and weather (rain hitting the car)
- Environmental dangers (lightning bolts, meteorite showers, volcanos, etc.)
Here's a taste:
There's no place like home
Next up, the immediate step is to have a rudimentary ECS implementation. I want the cars (cubes) to spawn, accelerate, switch lanes, and the basic starting-line and finish-line lifetime of a race.
I already made the terrain and some trees procedural during the vacation. It's possible to random different biomes but for now, the forest biome will suffice.
On a personal note, both of us have overcome the financial difficulties that the 5 years invested in and the recent world crisis inflicted and can be in a healthy & creative mental space. It's not a lie to say that people supporting, praising, and even harshly criticizing us have given us energy and we hope to rely on you in the months to come.
The next update will be either in 2 weeks or 4 weeks, depending on how lucky we are with the ECS upgrade. Till then, stay safe, wish us luck, and have fun!
