blob: dab90978fe7a365fcfd65001c304e0c720330af7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<article>
<h1>Introduction: Rigid Body Physics</h1>
<section>
<p>
You're most likely here because you have some interest in the world of rigid body physics. Maybe you have some knowledge of rendering via OpenGL or Vulkan,
and you want to begin watching your up-until-now static scene come to life. Well, you're in the right place! In the course of this tutorial series I will walk
you through the entirety of a 2D rigid body physics system entirely in the web. All of this information will be extendable to other languages, but we will use
JavaScript and WebGL in these blog posts. Additionally, much of the information presented here can be extended to 3 dimensions, but 3D carries some complications
with it, that we will discuss in future blog posts.
</p>
<p>
In implementing a rigidy body physics system, we're primarily interested in two sub-fields of physics, namely <b>dynamics</b> and <b>kinematics</b>. Although I'm
far as can be from being an expert in either of these fields, I will explain - from a programmer's persepctive - what they mean to me:
<ul>
<li>
<b>Kinematics</b> is the study of how an object's movement changes over time. These are the classic position, velocity, and acceleration equations
that you're most likely familiar with from high school or college physics.
</li>
<li>
<b>Dynamics</b> is the study of whats <i>causes</i> kinematic movement. These are the classic force and momentum equations that you may already be familiar
with as well.
</li>
</ul>
</p>
<p>
Finally, I must provide a disclaimer that all of rigid body systems are very math-y. You will need to know a decent amount of vector calculus and linear algebra to really understand
what's going on here. I am going to assume that you have this knowledge. If you don't already have this knowledge, I will try and provide some resources on the Books
n' References page of the website.
</p>
</section>
</article>
|