lundi 10 novembre 2025

Space Invader on Unity

 A first demo of a Space Invader on Unity that i'am currently learning . It's features :

- Game Object with component like sprite renderer 2D or Collision Polygon
- Use Collision system
- Instantiate prefab for player bullet 
- Using coroutine to make enemy spawn bullet

Here is a the link to the video

Space Invader Unity

samedi 8 novembre 2025

Damage system, Death checkpoint, and Respawn

 Here is a video on multiples features

 - Life and Damage system with actor component 
 - Player takes damage, and dies if life have no life point
 - UI integration with update on life
 - Basic behavior with BT on IA to attack player
 - Respawn on checkpoint

 Here is a link to the video

Damage and respawn 

mardi 28 octobre 2025

Lock System on Unreal Engine 5

On this video it's show a locking system on Unreal Engine 5

  Locking system is made with a Gameplay Ability, here is a feature 

- Player can lock and unlock
- Player can change target with right stick
- If player goes far from the target, the unlock will automatically unlock

Target detection for locking it's done with Spatial hash grid system.  Here is a link for the video  

 Locking system video

dimanche 26 octobre 2025

3D Action Game Basic actions on Unreal Engine 5

 This demo shows some basic action on any 3D actions game :

 - Movement
-  Camera Control
- Aim system and shooting bullet
- Dash
- Melee in ground and in air with combo 

All this features are made with gameplay ability, ability system, animation bluprint (anim sequence, and anime montage)

3D action game movements


 

                                                                       


 

vendredi 11 décembre 2020

[DirectX12] Match 3 on my Game Engine

 I made a Match 3 game with my game engine with Direct X12

Gameplay

Like the a lot of game like Candy Crush, the idea is to match 3 identicals candy vertically or horizontally. To make it, player have to pick 2 adjacent candy to swap them. When this occur , the candys are destroy and all the candy above fall, and news candy are create if need

Special candy can be create if more than 3 candy are destroy

- If it'is 4 candys vertically , a new candy is create which will  destroy all the line on the location of the candy
- If it'is 4 candy horizontally, a new candy is create which will destroy all the column on the location of the candy
- If it's 5 or more than , a special candy is create. If the player match with a candy near the special candy. All the candy same that the candy match are destroy

Multi threading

The gameplay algorithm is not very difficult. But I think the matching algorithm can be parralized 

Instead of iterate on each slot of the grid. I use a thread pool, when on each threads I send each lines of the grid.


Joker bonus

Start Grid

Vertical bonus candy


dimanche 21 juin 2020

AI : Squad Unit

AI Squad demo

On a shooting game, player frequently face a multiple enemy which sometime act like a squad (team).
F.E.A.R (First Encounter Assault Recon) is a fps which have a "revolutionary" ai system. On this mini project,I try to integrate a ai system similar to the game

Analysis

Thing that I undestand from the paper "Three State and a plan : The AI from FEAR" by Jeff Orkin,it's that a AI can be summary 2 states  moving entities and perform animation (because I'am just using basic shape like triangle and quad, they will not have animations). So the idea is to make the transition less as possible. One other thing is to separat between goal , action , and reaction, that way designer and programmer have a maximum of modularity to create different action and goal

Sensor, Goal , and Action

To create a maximum goals, actions and reactions . I create each action and reaction (call "sensor") separately.

By example sensor , I create sensor call "View player" (player enter in ai sight) , " search ally" (ai can detect if he got allies around him)

By example actions, i create by example , "looking at position" (ai goes to inspect strange location), "attacking player" (shoots at player position) "go to cover" etc etc

An I create goals, goals is form by actions create previously, that way goal is create by juste combining different to create specific goal.

Squad Behaviors

AI agent work as a squad entity (thant mean it's form by multiples soldiers). AI Entity have role like soldier which follow order of a captain, a catpain which give orders to soldier.

Each goals is selected with a Behavior Tree (and black board) to select the best actions on each situations

Each AI entities need to gather all the information on the world to select actions.. if an agent detect by himself an information, it's update his blackboard but he also needs to share this informations with his colleagues. Worldstate is an instance share by all ai entities , each time a entity wants to say something to other ea, he put a message on this WorldState. His colleague just need to get the message to update theirs status.

By example, supose that the commando hear a fire shoot from the player, he wants to send soldiers to inspect the zone. He send an order on the world state (Call "FACT") , soldier can pull the order from the worldstate, if the order is more important than he current action, he will follow the new order from his boss. He then update the worldstate to tell his boss that he gots the informations.

The modularity by separating action and goal play a role in this example, because commando can give order goal to soldier but only soldiers with the goal can answer
the order.


Soldiers patrols

Soldiers inspect suspect location
soldiers attach the players


lundi 25 mai 2020

Finite State Machine (FSM) & Behavior Tree (BT)

Presentation

In video games, two of the most AI algorithm use are Finite State Machine (FSM)
and Behavious Tree (BT). They are easy to implement and can have good result

FSM

FSM is the easier AI algorithm to create. Each behavious are state so it's easy
to create new behavious. A lot of document is already made on this subject
and it's use on commercial engine like Unreal Engine (Animation use state machine)

On this example project. Actor moves to eat or sleep depend of this state,
if its ok for eat or sleep . He goes to work



Behavious Tree

Behavious tree is the 2nd AI Algorithm, as the name suggests, it's a tree algorithm.
It's go on each branch and see if the condition is met, depend on the node (selector or sequence)
behavious leaf is selected

On this example. The Actor patrol on the waypoint path, random gold are spawn on the map,
so actor can pick gold.. If the actor see the player, he will pursuit him to catch the player

With selector, BT can give priorities on actor actions, on this example
the most importants actions are : Chase the player, Pick gold then patrol