Other works

Here are some other skills I learned while developing the custom engine

Other

Multi-threading AI pathfinding

Simulation of A* pathfinding for game AI agents in a maze

Techincal View

Used A* pathfinding algorithm

C++

Windows thread

Open GL

GLSL

AI flocking and Steering behavior

Cohesion: boids move towards the average position of their neighbors.Separation: boids maintain a safe distance from each other to avoid collisions.Alignment: boids align their direction and speed with their neighbors.

Techincal View

Created bird flocking and steering behaviors with State machines.

C++

Open GL

GLSL

Other works

Simple Media Player

A simple Media player created using FMOD and imgui for Editor

Techincal View

Used the FMOD library to gain in-depth knowledge about 3D spatial audio, audio playback, DSP effects, and much more.

C++

FMOD

Game Cut Scene

Experiment of using external Script Loading.

Techincal View

Used a Lua script for the external file to communicate with C++.

The animation sequence was implemented with a command pattern

C++

Lua

Open GL

GLSL

Other Works

Here are some other skills I learned while developing the custom engine

Simple Media Player

A simple Media player created using FMOD and imgui for Editor

C++

FMOD

Short Description :

I used the FMOD library to gain in-depth knowledge about 3D spatial audio, audio playback, DSP effects, and much more.

  1. Loaded streamed audios and fully downloaded audios.

  2. Integrated various audio effects and filters.

GLSL

C++

Lua

OpenGL

Game Cut Scene

Experiment of using external Script Loading.

Technical Aspect

I used Lua script for the external file to communicate with C++.

The animation sequence was implemented with a command-based system, with commands categorized as serial or parallel types.


Serial: A series of commands executed in order; when one command is finished, the next command is executed.


Parallel: A series of commands executed all at once.


  1. Understood the concepts of Lerp, EaseIn, EaseOut

  2. Once the commands are received : the system updates based on the command type. For example check out this MoveTo command.

FLOCKING BEHAVIOR


  • Cohesion: boids move towards the average position of their neighbors.

  • Separation: boids maintain a safe distance from each other to avoid collisions.

  • Alignment: boids align their direction and speed with their neighbors.

C++

OpenGL

Window Thread

GLSL

AI flocking and Steering

Technical Aspect

I created a Flocking Manager to handle the boids and change their behavior states.

  • Created enums for behavior types.

  • Created a BaseBehavior class with a Move() function.

  • Inherited from BaseBehavior and created different classes to change the Move() function based on the behavior type.

Let’s Work

together, and level

up creativity!

  • Grave Robbery

  • Grave Robbery

I'm always open to share about my projects and experiences!

Feel free to connect with me—send a message on LinkedIn or drop an email. I’d be happy to chat!

ibrahim155.developer@gmail.com

+12269989187

Create a free website with Framer, the website builder loved by startups, designers and agencies.