Round 0 has finally finished!
I learned a lot in this 1 week. Especially how simple things like jumping are actually not as easy to program. Some major problems I ran into involved animation, cliff collisions, and rotational angles.
One thing I really should’ve added (and will, but won’t be able to present) is a timer to record completion times. This would improve the replay value of the game I feel. It would show improvement over time, allow people to beat their previous high scores and compare scores as well.
-For animation, making Animators and manipulating the animations were easy but modifying them so they looked fluid was hard. Blend trees seem to solve this problem but I had more luck using basic transitions with my Unity character model.
-Jumping was one of the hardest issues and my game can still use some fixing in this regard. Proper jump animations are split into three parts. First animation starts when your character is still on the ground, 2nd animation is for in-air, and 3rd animation is for landing. The 2nd, depending on the animation itself, has to be clamped so it doesn’t keep repeating while in the air and stays on the last frame. This way, when your character jumps from a high point, he won’t be able to walk on air and will stay in his in-air jump animation.
-Cliff collision was another issue which I did not spend too much time on because the focus was on creating an interactive world. The problem is your character can walk up any kind of slope (assuming you’re not using Unity’s default character controller). In this case, you can use physics and dot product your force versus the cliff side to get an idea of whether or not your character can walk up the slope. Another simpler solution is shooting a small Raycast from the knees of your character but this short fix can lead to some problems as you continue making your game.
-Rotational angles are hard for me to get my head around. Although it’s easy to manipulate euler angles, rotation affects many other things such as any position transforms you may have on the object. Rotation comes into play a lot in manipulating the camera, lights, character rotation, and game physics.