Race course design

A project log for A game about a certain space exploration company

Where most of 2018 went

lion mclionheadlion mclionhead 11/21/2019 at 17:310 Comments

The hangar was bad, but it was here that the downsizing of expectations became extreme.  The mane problem is a 3D flight simulator is just too boring.  All the racing games have evolved towards a 2D track in a 3D world.  The user input for BFR already got degraded to 2D.  Lions are conditioned to want to race in 2D from years of hunting for food on the African plains.

The 1st idea was automating the race course generation from a simple line drawing, the way tuxracer did it.

It didn't have a formal track, but required the player to catch fish in an open world littered with obstacles.  The limit was it had a constant elevation grade superimposed on a local elevation defined by the greyscale. Tuxracer looked really good for its time, but flying required more 3D flexibility. 

Even an indie game like GRIP looks better than tuxracer.  That led to needing a full sized 3D model. 

A good race course needs:

3D clouds

3D stars

nitro bottles

track arrows

track collision borders



environment maps for sky & space

The current gold standard for clouds is XPlane. No example in Godot
comes close & you would need to be a dedicated mathematician to invent
that from scratch.

The only godot example of 3D clouds was the terrible

There was an excellent cloud generator for Unity

While it may seem like Godot is all paw coding of shaders, Unity also requires a lot of paw coding of shaders.  They depend on very slow 3D textures & ray tracing.

The XPlane clouds might actually be still photos, in which case lions might be better off just photographing clouds & stuffing them in 2D rectangles.

Tuxracer just used a 2D texture for trees & it looked pretty good.

Stars may similarly be good enough as 2D textures

A 1st attempt using arrows to define a 2D track was really boring.  Devising the route has devolved towards just copying other racing games.

The track collision shape can similarly be based on the track line drawing.

There's sadly no tool for making environment maps.  Godot examples all just copy the existing ones from  Making something appear to transition from ground to space requires custom environment maps.

The lion kingdom still goes back & forth between the tuxracer design & full 3D modeling.  The track has ended up just 2D with a constant elevation grade because the arrows are 2D.  Real spaceships don't fly 3D paths either.  They all fly in a 2D plane.  The trick is the 2D plane is vertical & the starting line needs to be vertical.  Any maneuvering in a real rocket is just in altitude.