Work continues in FormulaProc in anticipation of the 2022 Formula One Championship starting. For this update, we have contributions from Esteban Martinez over the narrative front. Check out formulaproc.com for full info.
I set up and ran the events for France, United Kingdom, and Belgium Grand Prixes and their qualifier sessions, each event has had something new as detailed below. Esteban continued providing the foundations of the narrative, presented as news articles on the main website.
The most visible addition is, of course, the overhead view of the tracks and the cars running through them. This is a jump we had to take in order for the races to feel less abstract; I found out the people who like this kind of content are very attracted to the visual aspects so we had to break from the “flat” type of race we were showing.
Of course, this meant I could no longer spread all the cars side by side, and instead I had to put them over the road. For this, I created a system of “lanes” or “tracks” taking inspiration from slot car racing with the exception that cars here can switch lanes after surpassing.
I reused a lot of what was coded for the minimap, adding rotation to the equation and doing a lot of work to make setting up the scale of things more easily instead of trial and error.
In order to provide a sense of depth, I also added a layer drawn over the cars (currently used for things such as bridges and tunnels).
I created a short video detailing the process of setting up a track under this new system.
Added a “Flying lap” qualifier system, the cars to a warm-up lap, and then all of them stack in the starting line and start their flying lap at the same time, retaining the speed and acceleration they had. This means all of them have the same chance of having a quick lap.
I also scaled the acceleration values so they are more realistic, cars were moving just too fast in the track (and this was hard to visualize in the linear view, but was much more noticeable in the top down view)
Cars also now fly past the finish line when the race ends, as them staying there was no longer needed with the introduction of the positions table, and it looked weird for them to stack there in the new overhead view.
Improved the format of tables, and removed clutter from the HUD over the cars since most of things were now redundant with the driver info box and didn’t look good in the new overhead view.
First steps to make an automatic camera; before this I had to manually scroll thru the race, trying to find interesting moments to record; now the camera warps automatically to ongoing combats or drivers approaching each other, so now there is no human intervention in the creation of the videos! this still needs more work to be less instantaneous and maybe also allow replays or parallel cameras.
Tweaked the AI to have something of a state model, entering a braking phase before a corner based on a calculated risk, and sticking to it until close to the corner. This is in contrast to the model before where such evaluation was made every AI cycle, which led to very erratic gas/brake behavior.