top of page

Hey there!
I'm Miles, a software developer based in Michigan

IMG_5566_edited.jpg

Project Showcase: 2d Game Engine

Overview

One of my most recent projects that I am very excited to showcase is my 2D game engine. My engine supports a variety of necessary features for making an immersive experience while keeping simplicity and performance as a priority. The engine was written in c++ and uses lua as a scripting language. As an additional challenge to my learning I have implemented build support in Visual Studio, XCode, and via a Makefile which has inspired my latest feature I am working on: Cmake Support!

Features

Customizable Game Scenes and Logic

Customizable game logic via lua scripting with supported lifecycle functions for OnStart, OnUpdate and OnLateUpdate as well as custom events. Customizable scenes and actors, as well as runtime instantiation and deletion of actors and components.

498donna.gif

2D Physics Engine Integration

Integration of Box2D physics engine to be used for accurate collision detection via Rigidbody component. Rigidbody components on actors can be either colliders or triggers and support callback functions on collisions.

498collisions.gif

Particle Systems

Particle system support with customizable properties such as velocity, angle, quantity and color that can change over the lifetime of a particle. Particle systems are implemented with principles of Data Oriented Programming by creating an Entity Component System to increase performance and reduce cache inefficiencies.

498particle.gif

Built Using

C++, Lua, SDL, GLM, rapidjson, luabridge, box2D and CMake

bottom of page