Projects

Personal Projects

Bounce Lite (GitHub Repository)

This slideshow requires JavaScript.

Bounce Lite is an open-source and portable 3D physics engine for games written in C/C++. Its feature list is available on the repository above.

Bounce

This slideshow requires JavaScript.

Bounce is a proprietary 3D physics engine for games. Some physics demos using the engine are spread over here. The engine is an extension of Bounce Lite, supporting many different features, focusing mostly in on linear performance and an easy-to-use interface. Currently there are no  persuasive examples in an executable format of the full version of Bounce. However, it is possible to obtain some samples or having questions related to its implementation details answered by contacting the author (Irlan). Nevertheless, some of its features are written below.

  • Sphere, capsule, hull, and triangle mesh shapes.
  • Optimized broad-phase collision detection (CD) using a dynamic BVH.
  • Optimized mid-phase CD using a static BVH.
  • Highly optimized and numerically robust narrow-phase CD using GJK for distance computation, SAT with Gauss-Maps for separation computation, and generic algorithms for symmetric shapes.
  • Mouse, spherical, conical, revolute, distance, and spring joints.
  • Shape stacking.
  • Projected Gauss-Seidel for solving velocity constraints.
  • Full-Non Linear Gauss-Seidel for solving position constraints.
  • Simulation islands and body sleeping.
  • Continuous Collision Detection.
  • Ray and bounds cast.
  • Built-in math library and memory management.
  • Well commented, simple to integrate, use, and understand physics engine.

Bounce Engine

This slideshow requires JavaScript.

Bounce Engine is a 3D (mini) game engine that has been developed since 2014. Some related articles about the engine are on the present website.

Student Game Projects

Ice Wars

Ice Wars is a 3D game created in C++, OpenGL, and SFML. By adding AABB-AABB collision detection, static and dynamic bodies, and an interpolation-based camera motion, a fun third-person shooter suddenly appeared. The player’s objectives are: 1. Find the key in the current level to open a door to the next stage. 2. Shoot ice cubes in the enemies. 3. Make sure to stay away from them.

Paperplane

Paperplane, another 3D game, was created in C/C++, SFML, OpenGL for graphics, and OpenAL for audio. It is possible to infer that skyboxes, sound effects, and terrains placed at correct locations in a level can really build a very confortable environment, without relying extensively in more advanced graphics effects. (The music and sound effects played in the video aren’t mine.)

Tank Warfare

Probably the first game created by Irlan while attending to an Applied A.I. course at UNESA. The toolkits for this simple 2D game were Win32, C/C++, and Allegro 4.4.1. (Not too difficult to realize that it’s a very old piece of software). (The music and sound effects in the video aren’t mine either.)