FPC_cyclone-physics
The Physics engine that accompanies the book "Game Physics Engine Design" rewritten in FreePascal
- Active · last change 11-7-2025
- ★ 1 on GitHub
README
FPC cyclone-physics
As i got stuck in writing my own 3D physics engine CorP3D i decided to "recode" a existing one in order to learn enough to finish CorP3D.
FPC cyclone-physics is a 3D physics game engine. It is developed in the book Game Physics Engine Development, second edition.
Ian Millington starts from scratch in his book, and so do i here in this repository. The plan is to read trough the book and implement step by step the whole engine in FreePascal (aka crossporting the C++ code given in the book).
Goal is to have at the end a fully working 3D physics library (the same as in the book) and also port the Demos.
There are eleven demo's available in total. The first seven demos are part of the particle engine and the last four for the rigid body physics.
| Number | Page in Book | Name |
|---|---|---|
| 001 | 63 | ballistic |
| 002 | 66 | fireworks |
| 003 | 151 | bridge |
| 004 | 152 | platform |
| 005 | 153 | blob |
| 006 | 241 | flightsim |
| 007 | 247 | sailboat |
| 008 | 65 | bigballistic |
| 009 | 441 | ragdoll |
| 010 | 446 | fracture |
| 011 | 457 | explosion |
The orig source from the book is hosted here.
What is needed to compile and run the code ?
- clone this repository
Now you have everything to compile the engine.
What is needed to compile and run the demos ?
- install LazOpenGLControl into the Lazarus IDE
- download dglOpenGL.pas
- download uvectormath.pas
- download uopengl_ascii_font.pas
- download uopengl_ascii_font.ressource
- download uopengl_font_common.pas
Progress
- 2025.05.23: created repository, readme.md and license.md
- 2025.05.25: demo 001 ballistic
- 2025.05.26: demo 002 fireworks
- 2025.10.26: demo 009 ragdoll
- 2025.10.30: demo 011 explosion
- 2025.10.31: demo 003 bridge
- 2025.11.01: demo 004 platform
- 2025.11.02: demo 005 blob
- 2025.11.03: demo 006 flightsim
- 2025.11.04: demo 007 sailboat
- 2025.11.05: demo 008 bigballistic
- 2025.11.06: demo 010 fracture

