Making a First-Person Shooter.  Episode 2: AI - UNIGINE Livestream with an Expert @UNIGINE_Official
Making a First-Person Shooter.  Episode 2: AI - UNIGINE Livestream with an Expert  @UNIGINE_Official
Uploaded January 2021 | Updated September 2026, 2 weeks ago
Getting started with UNIGINE Engine? In this Livestream series, learn how you can create your first-person shooter (FPS) on UNIGINE. Get UNIGINE 2 SDK: https://l.unigine.com/dH9oXGcts
NOTE: Basic principles and most of the code are valid, but there were some API changes since the release of this video. SEE UPDATED CODE HERE: developer.unigine.com/en/docs/latest/code/usage/first-person_shooter/index?rlang=cs

In this episode, you will see how to:
- create basic logic of enemies with different states
- configure the navigation mesh for pathfinding
- add win / lose logic

Repository: gitlab.com/unigine/stream_fps_demo

0:11:48 — Fine-tuning the prefab
0:17:24 — Setting up physics of the prefab
0:22:55 — Arranging muzzles for bullet spawn
0:26:16 — Applying the finite-state machine for AI, defining the states
0:31:13 — Creating the Enemy Logic component with states
0:33:14 — Prototyping functions for states
0:34:57 — Calculating the distance between the enemy and the player and using it in the functions
0:40:16 — Using the physical body to move the enemy
0:46:00 — Transition between the states.
1:00:13 — Using the visualizer to debug transitions between states.
1:02:36 — Trying out the script and fixing the code.
1:10:06 — Setting intersection masks.
1:15:04 — Visualizing the view direction.
1:16:47 — Checking for intersections with the player collision shape (hitInfo).
1:25:27 — Workaround for visualizing the direction vector.
1:27:33 — Fixing the issue with the player being seen by the enemy through the wall.
1:29:17 — Continuing with intersection checks.
1:39:29 — Fixing the orientation.
1:57:50 — Doing the shooting (fire controller).
2:06:48 — Making the moving and destroyable bullet.
2:14:58 — Creating the navigation mesh for pathfinding.
2:26:22 — Modifying the enemy logic for pathfinding.
2:33:23 — Visualizing the route.
2:35:54 — Trying out and fixing bugs.
2:53:19 — Adding the delay for route calculation.
3:06:42 — Adding more robots.
3:08:28 — Creating the Health component to register damage.
3:21:50 — Creating the Game State component to switch between Play and Win/Lose states.
3:29:06 — Q&A.

#unigine #uniginetutorial #tutorial #3d
Making a First-Person Shooter.  Episode 2: AI - UNIGINE Livestream with an ExpertDelivery Rover Simulator #unigine #deliverydrone #rover #autonomus #simulationsoftware #vehicleHow To Create a Final Build for a C# Project - UNIGINE 2 Quick TipsHow To Enable Planar Reflections - UNIGINE 2 Quick TipsUNIGINE Engine 2.10 ReleaseNode References: Must-Knows - UNIGINE 2 Engine EssentialsPhysics - UNIGINE 2 Engine EssentialsHow To Position Objects Using Vertex Snapping - UNIGINE 2 Quick TipsHow to Use Abstract Classes and Interfaces with C# Component SystemNew Terrain System in UNIGINE Engine 2.10UNIGINE 2.15.1: Automatic LODs, Decals In Material Graph Editor, 2.5D Buildings Add-OnHow To Use Intersections to Select Objects with the Mouse - UNIGINE 2 Quick Tips
UNIGINE |

Making a First-Person Shooter. Episode 2: AI - UNIGINE Livestream with an Expert

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER