
Create and reuse projectile prefabs in Unity by turning spheres into rigid bodies, removing the launcher collider, and scripting a method to propel them through the air.
Create a launch script that instantiates the ball prefab when the K key is pressed, placing it at the launcher’s position with quaternion.identity rotation, then apply force to propel it.
This lecture demonstrates automatic firing in Unity using a timer to shoot every two seconds, destroy objects after three seconds, and expose timer in inspector with prefabs and rigidbody physics.
Create explosions on collisions by spawning explosion prefabs at impact and using particle systems to visualize effects, then update and reuse prefabs in the scene.
Learn to fix Unity platform collisions by replacing the capsule collider with a mesh collider, keeping the character on the platform when hit by projectiles, and prepare launcher setup.
Duplicate launchers using prefabs to create four launchers and set a shared target. Swap explosions for smoke by configuring the polytunnel prefab and adding ground-smoke effects.
Explore building a simple first-person shooter scene by using prefabs and a target cube, customizing textures and materials, and preparing color-based detection with a future recasting step.
Cast a ray to detect the object ahead of the player, retrieve hit information from the collider, and trigger effects like explosions or smoke.
Manage the NPC's health by decreasing the target's health, triggering smoke effects, and destroying the target after a short delay when health falls below zero.
Learn to implement ammunition collection and target destruction in Unity using a first-person controller, with collision detection, prefab management, and ammo increment logic.
Refine collision detection by replacing name checks with tag checks across prefabs, propagating changes to all targets, and prepare future city gameplay with an inventory to swap weapon types.
Develop a weapon management system by building an inventory of weapons, defining weapon constants, timers, and properties such as name, ammo, and maximum munitions to control firing and weapon switching.
Switch between weapons with the tab key, display current weapon and ammo, check ammo > 0, and decrement ammo when firing, printing remaining ammo, with a timer planned.
Design and refine a weapon management system in Unity, collecting ammunition, updating the user interface for weapon and ammo counts, and handling gun and grenade launcher types with collision-based pickups.
Explore a Unity weapon management system that handles ammo pickups for guns and grenades, using prefabs, collision scripts, and tags to manage labels, gun types, and grenade launchers.
Implement a grenade system in Unity by linking a grenade prefab to a launcher, triggering explosions after a timed delay, destroying grenades after several seconds, and testing via the console.
Build and test a grenade launcher in Unity, adjust explosion timing and smoke, and create a weapon management system with multiple ammunition types and real-time timing.
Explore finite state machines in Unity to control an NPC's behavior, from entry to idle to follow player, using transitions, layers, and boolean or trigger parameters.
Learn to add and configure a 3D animated character in Unity, including importing a character, fixing textures, organizing animations, and wiring up a controller and FSM.
Learn to add and configure 3D animations in Unity, calibrate an NPC to follow the player using walking and look animations, adjust colliders, and test animation loops.
Reuse and duplicate weapons and scripts from the previous section to empower the player in Unity. Align health, collisions, a crosshair UI, and NPC targeting with prefabs and ammo management.
Reuse a script from the first section, troubleshoot during integration, attach the weapons component to the player, test ammunition and firing, and prepare NPC interaction in the next section.
Create and manage an npc state machine by adding a died state, and transitions from any state to hit and then to die based on health to trigger death animations.
Develop a lives system where NPCs deal damage, reduce player health, and restart the current level when lives reach zero, with plans to display and save remaining lives.
Learn how to reload a Unity scene while preserving the player, manage health and lives, and prevent duplicate players using Awake, start, and tagging for scene persistence.
Learn how to add health packs in Unity, reuse prefabs, set up collisions, and implement health increase when the player collects a pack, with color customization and user interface integration.
Create and reuse Unity prefabs for UI, player, and NPCs, then amend scripts to display or hide guns using the NPC transform hierarchy and FSM guidance.
In this course, you will become proficient in C# and some of Unity's core features, by creating a First person Shooter that includes a 3D environment, intelligent Non-Player Characters, and special effects.
In the first section of the course entitled "Adding Simple AI, ", you will use C# for the creation of a simple launcher. You will learn to instantiate, use and control Rigidbody objects from your script as well as creating explosions.
In the second section entitled "Creating and Managing Weapons ", you will learn to create and manage weapons using a simple inventory system. You will create an automatic gun and a grenade launcher, manage the collection of ammunition, and also implement a user interface to keep track of ammunition. In addition, you will also learn how to include these as prefabs, so that they can be reused in other levels, and to save you some coding too.
In the third section entitled "Using Finite State Machines", you will get an in-depth explanation of how to create and use Finite State Machines (FSM) in Unity. You will create your FSM and use it to control the behavior and movement of an animated Non-Player Character. You will also learn how to employ NavMesh navigation so that your animated NPCs can navigate easily within the scene to either follow the player or go to a specific location. Finally, you will learn how to optimize your assets so that they can be reused seamlessly in other scenes with no or little changes.
The last section called "Putting it All Together", makes it possible to combine the skills you have acquired in the previous chapters, and to reuse and combine all the objects that you have created so far (e.g., NPCs, weapons, inventory systems, ammunition, etc.), and the concepts (e.g., FSM, NavMesh, RigidBody components, User Interface, etc.) that you have mastered, to create a fully functional level.
After completing this course, you will become proficient in the following areas:
C# programming
Rigidbody Physics.
Objects' Instantiation.
Animating 3D characters.
Artificial Intelligence for Non-Player Characters
Mecanim and Finite-State Machines.
Prefabs Creation.
Inventory System.
RayCasting.
Collision Detection.
User Interface Creation.
Persistent Objects.