In the script PhysicsProperties.cs, gravity (f=mg)
is already implemented. You should implement viscous drag (f=-k_d*v)
for this project.
In the script PhysicsSimulation.cs, compute a sphere's
position and velocity by solving the system of forces using Euler's
method in the function ComputeSphereMovement.
You must detect collision and respond to other spheres and planes that can be added to your scene:
Plane collision: A natural position for the plane is to have it act as a ground for your scene,
but it could be placed anywhere. Planes have a width and height which correspond to the x and z
scale of the Transform component.
Sphere collision: Objects colliding with the sphere should reflect off the sphere depending on the sphere's normal at the point of collision and the sphere's incoming velocity direction.
With your physics engine working (spheres should collide and bounce off other colliders), navigate to
the MazeGameController.cs script to implement the necessary steps to make the MazeGame scene work.
In the scene, the ball should roll around the maze and collide with the Collectibles (SphereCollider) and the walls (PlaneCollider).
In part C you will use your creativity to design and implement a Rube Goldberg machine. This part is more open ended. You will have to implement springs and force fields.