Development Update: Programming and Gameplay
Author: indiefoldcreator
Date:
Thu, 22 Feb 2024
Game: Children of Liberty
Here's a quick update on programming and gameplay. Brian has just finished the core of the final version of Children of Liberty's movement and camera code. The core of the code is all math: we get to define paths in 3D space which define movement and boundaries for entities in our scenes. Before, the only movement tracks we could easily implement were linear. Now, Brian has made new functions available for more complex path types, like Catmull-Rom and Bezier curves, and made them all easy for us to work with.
In particular, these curves will help solve a lot of problems we had with our old camera. In-game, Brian will use them to make particular transitions smoother than they currently are, like turning around a corner. The test case for these curves was to write the code for a video fly-through system that would accept keyframe locations and generate a smoothly curved path for the camera to take. As a result, it's now very easy for us to make videos of our new scenes from within Unity.
The rest of the new code lets us be much less reliant on Unity physics to determine certain interactions. The result is a game that is much less vulnerable to unexpected physics behavior. There will still be bugs for now, but there will be fewer of them, and they will be easier to solve. Overall, it's a major improvement in the stability of our gameplay.
The core of the new movement and camera code is finished, but there are many more features that could be added for our building convenience. Those will be added when there's time. Meanwhile, Brian will be quickly converting our existing scripts to use the new movement system and testing, as well as managing the rest of the project. Once everything is stable, we'll be able to start making videos of our scenes, putting together gameplay test chambers, and hooking up our scenes for playable preview! We can't wait to show you what we've been working on!
Write your comment!