Building an FPS Game with Unity HD PDF

This article along with all titles and tags are the original content of AppNee. All rights reserved. To repost or reproduce, you must add an explicit footnote along with the URL to this article!
Any manual or automated whole-website collecting/crawling behaviors are strictly prohibited.
Any resources shared on AppNee are limited to personal study and research only, any form of commercial behaviors are strictly prohibited. Otherwise, you may receive a variety of copyright complaints and have to deal with them by yourself.
Before using (especially downloading) any resources shared by AppNee, please first go to read our F.A.Q. page more or less. Otherwise, please bear all the consequences by yourself.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

After selecting Building a Game with Unity and Blender for me to formally learn to use Unity to develop my own ARPG-like game, I also selected Building an FPS Game with Unity as the second tutorial book to be read, with which I intended to try to develop a FPS-like game of my own too. But the latter is not to develop the game itself, but to further learn to use Unity and apply the newly acquired skills to the development of my games as much as possible.

Building an FPS Game with Unity is a step-by step guide with clear examples and instructions, and can take readers on an exploration of how to use Unity to create a complete 3D first-person shooter (FPS) game from scratch. After setting up your computer, you will start by learning how to create custom weapons, prototype levels, create exterior and interior environments, and breathe life into your levels; how to polish the levels then; and create a custom GUI and menus for your game to create a complete package in the end.

After finishing this book, you will learn how to use Unity along with the popular and powerful middleware for Unity – UFPS (made by VisionPunk, acquired by Opsive in 2016) and ProBuilder (made by ProCore3D, now part of Unity) to create a high-quality first-person shooter game quickly; how to create both interior and exterior environments. In addition, readers will also learn how to create AI game characters using both RAIN and Shooter AI tools.

Building an FPS Game with Unity is suitable for readers who want to create an FPS game using Unity and gain knowledge on how to customize it to be what they expect it to be. Of course, if you are a programmer who are familiar with the basics of Unity, then the learning process will be much easier. However, even for pure beginners with no prior experience, it is still possible for them to learn Unity at an accelerated pace.

// What You Will Learn //

  • Use UFPS to build custom weapons with custom meshes and behaviors
  • Explore level design as you prototype levels, making use of Prototype to build levels out quickly
  • Build environments that are realistic as possible while keeping peak performance and repetitiveness down
  • Review tips and tricks on how to create environments using both terrain for outdoor areas and a modular workflow for interiors
  • Develop a number of different encounters that your players can fight against, from a simple turret enemy to complex AI characters from Shooter AI
  • Discover how to create unique objects such as exploding barrels and objects you can interact with
  • Create a custom GUI to help your game stand out from the crowd
  • Package your game for release, create an installer, and get your game out into the world

// Table Of Contents //

  1. Getting Started on an FPS
    • Prerequisites
    • Project creation
    • Getting started with the Asset Store
    • Installing Prototype
    • File organization
    • Customizing Unity’s layout
    • Summary
  2. Building Custom Weapons
    • Prerequisites
    • Setting up a testbed
    • Getting models/sounds for weapons
    • Building our weapon – the mesh
    • Creating a UnitBank
    • Creating the weapon
    • Customizing our weapon’s properties
    • Summary
  3. Prototyping Levels with Prototype
    • Prerequisites
    • Creating geometry
    • Building a doorway
    • Duplicating rooms / creating a hallway
    • Preventing falls – collision
    • Adding stairways
    • Coloring your world
    • Summary
  4. Creating Exterior Environments
    • Prerequisites
    • Introduction to Terrain
    • Creating the Terrain
    • Adding color to our Terrain – textures
    • Adding water
    • Adding trees
    • Adding details – grass
    • Building the atmosphere – Skyboxes and Fog
    • Summary
  5. Building Encounters
    • Prerequisites
    • Adding a simple turret enemy
    • Integrating an AI system – RAIN
    • Integrating an AI system – Shooter AI
    • Spawning enemies with the help of a trigger
    • Spawning multiple enemies at once
    • Cleaning up dead AI
    • Placing healthpacks/ammo
    • Summary
  6. Breathing Life into Levels
    • Prerequisites
    • Building an explosive barrel
    • Using triggers for doors
    • Creating an elevator
    • Summary
  7. Adding Polish with ProBuilder
    • Prerequisites
    • Upgrading from Prototype to ProBuilder
    • Creating material
    • Working with ProBuilder – placing materials
    • Meshing your levels
    • Summary
  8. Creating a Custom GUI
    • Prerequisites
    • Creating a main menu: part 1 – adding text
    • Creating a main menu: part 2 – adding buttons
    • Creating a main menu: part 3 – button functionality
    • Replacing the default UFPS HUD
    • Summary
  9. Finalizing Our Project
    • Prerequisites
    • Building the game in Unity
    • Building an installer for Windows
    • Building an installer for Windows
    • Summary

// Book Example Codes //

// Download URLs //

Format Download Size
PDF 14.0 MB


If some download link is missing, and you do need it, just please send an email (along with post link and missing link) to remind us to reupload the missing file for you. And, give us some time to respond.
If there is a password for an archive, it should be "".
Most of the reserved downloads (including the 32-bit version) can be requested to reupload via email.