Scene demonstrating the use of game physics using the Bullet physics engine, OpenGL (3D graphics), and SDL (audio only)
Castle, walls are box objects, towers are cylinder and cone objects
The arrow is created using compounds shapes, and fired right-clicking
Arrows destroy individual castle blocks, with sound effect
The exploding balls are created using sphere objects. Fired using the middle mouse button, they explode on impact with castle triggering an explosion at the point of impact, with sound effect
Castle walls destroyed by exploding ball
The letters are created using compound shapes, and have a different points value and effect to the castle blocks
Tower exploding after being hit by exploding sphere object
Learning Game Physics with Bullet Physics and OpenGL
Requires Visual Studio. Created with Visual Studio 2017, and SDL dll files
No. | File | Description |
---|---|---|
1 | Audio.h | Game sound effects and music manager header |
2 | Audio.cpp | Game sound effects and music manager functions |
3 | JoeScene.h | Scene header file |
4 | JoeScene.cpp | Creates the actual scene used, and its game objects |
5 | JoeSceneV2.h | Testing version of scene header file |
6 | JoeSceneV2.cpp | Testing version of scene |
7 | SDLInit.h | Initialise SDL Audio |
8 | Text.h | Game text header file |
9 | Text.cpp | Functions to add text to the game, with singleton to access |
No. | File | Description |
---|---|---|
1 | GLDebugFont.h | Example Program text functions |
2 | GLDebugFont.cpp | Example Program text functions |
No. | File | Description |
---|---|---|
1 | BasicDemo | Example basic demo scene |
2 | BulletOpenGLApplication | Application layer code |
3 | CollisionFilteringDemo | Collision filtering demo scene |
4 | DebugDrawer | Interface to render debug data |
5 | FreeGLUTCallbacks.h | Header file |
6 | GameObject | Objects used in the scene |
7 | Main.cpp | Create a scene using JoeScene class |
8 | OpenGLMotionState | Motion state class |
9 | SoftBodyDemo | Tutorial example demonstrating the use of soft body objects |