You are previewing Learning Unreal Engine Game Development.
O'Reilly logo
Learning Unreal Engine Game Development

Book Description

A step-by-step guide that paves the way for developing fantastic games with Unreal Engine 4

About This Book

  • Learn about game development and the building blocks that go into creating a game

  • A simple tutorial for beginners to get acquainted with the Unreal Engine architecture

  • Learn about the features and functionalities of Unreal Engine 4 and how to use them to create your own games

  • Who This Book Is For

    If you are new to game development and want to learn how games are created using Unreal Engine 4, this book is the right choice for you. You do not need prior game development experience, but it is expected that you have played games before. Knowledge of C++ would prove to be useful.

    What You Will Learn

  • Learn what a game engine is, the history of Unreal Engine, and how game studios create games

  • Explore the Unreal Engine 4 editor controls and learn how to use the editor to create a room in a game level

  • Understand the basic structures of objects in a game, such as the differences between BSP and static meshes

  • Make objects interactive using level blueprints

  • Learn more about computer graphics rendering; how materials and light are rendered in your game

  • Get acquainted with the Material Editor to create materials and use different types of lights in the game levels

  • Utilize the various editors, tools, and features such as UI, the particle system, audio, terrain manipulation, and cinematics in Unreal Engine 4 to create game levels

  • In Detail

    Unreal Engine 4 is a powerful game development engine that provides rich functionalities to create 2D and 3D games across multiple platforms. Many people know what a game is and they play games every day, but how many of them know how to create a game? Unreal Engine technology powers hundreds of games, and thousands of individuals have built careers and companies around skills developed using this engine.

    Learning Unreal Engine 4 Game Development starts with small, simple game ideas and playable projects that you can actually finish. The book first teaches you the basics of using Unreal Engine to create a simple game level. Then, you'll learn how to add details such as actors, animation, effects, and so on to the game. The complexity will increase over the chapters and the examples chosen will help you learn a wide variety of game development techniques. This book aims to equip you with the confidence and skills to design and build your own games using Unreal Engine 4. By the end of this book, you'll have learnt about the entire Unreal suite and know how to successfully create fun, simple games.

    Style and approach

    This book explains in detail what goes into the development of a game, provides hands-on examples that you can follow to create the different components of a game, and provides sufficient background/theory to equip you with a solid foundation for creating your own games.

    Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

    Table of Contents

    1. Learning Unreal Engine Game Development
      1. Table of Contents
      2. Learning Unreal Engine Game Development
      3. Credits
      4. About the Author
      5. About the Reviewers
      6. www.PacktPub.com
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      8. 1. An Overview of Unreal Engine
        1. What goes into a game?
        2. What is a game engine?
        3. The history of Unreal Engine
        4. Game development
          1. Artists
          2. Cinematic creators
          3. Sound designers
          4. Game designers
          5. Programmers
        5. The components of Unreal Engine 4
          1. The sound engine
          2. The physics engine
          3. The graphics engine
          4. Input and the Gameplay framework
          5. Light and shadow
          6. Post-process effects
          7. Artificial intelligence
          8. Online and multiplatform capabilities
        6. Unreal Engine and its powerful editors
          1. Unreal Editor
          2. Material Editor
            1. The Cascade particle system
            2. The Persona skeletal mesh animation
            3. Landscape – building large outdoor worlds and foliage
          3. Sound Cue Editor
          4. Matinee Editor
          5. The Blueprint visual scripting system
        7. Unreal programming
          1. Unreal objects
        8. A beginner's guide to the Unreal Editor
          1. The start menu
          2. Project Browser
          3. Content Browser
          4. Toolbar
          5. Viewport
          6. Scene Outliner
          7. Modes
        9. Summary
      9. 2. Creating Your First Level
        1. Exploring preconfigured levels
        2. Creating a new project
        3. Navigating the viewport
          1. Views
          2. Control keys
        4. Creating a level from a new blank map
        5. Creating the ground using the BSP Box brush
          1. Useful tip – selecting an object easily
          2. Useful tip – changing View Mode to aid visuals
        6. Adding light to a level
          1. Useful tip – positioning objects in a level
        7. Adding the sky to a level
        8. Adding Player Start
          1. Useful tip – rotating objects in a level
        9. Viewing a level that's been created
        10. Saving a level
        11. Configuring a map as a start level
        12. Adding material to the ground
        13. Adding a wall
        14. Duplicating a wall
        15. Creating an opening for a door
        16. Adding materials to the walls
        17. Sealing a room
        18. Adding props or a static mesh to the room
        19. Adding Lightmass Importance Volume
        20. Applying finishing touches to a room
          1. Useful tip – using the drag snap grid
        21. Summary
      10. 3. Game Objects – More and Move
        1. BSP Brush
          1. Background
          2. Brush type
          3. Brush solidity
        2. Static Mesh
        3. BSP Brush versus Static Mesh
        4. Making Static Mesh movable
        5. Materials
          1. Creating a Material in Unreal
          2. Materials versus Textures
          3. Texture/UV mapping
            1. How to create and use a Texture Map
            2. Multitexturing
            3. A special form of texture maps – Normal Maps
        6. Level of detail
        7. Collisions
          1. Collision configuration properties
            1. Simulation Generates Hit Events
            2. Generate Overlap Events
            3. Collision Presets
            4. Collision Enabled
            5. Object Type
            6. Collision Responses
              1. Trace Responses
              2. Object Responses
            7. Collision hulls
          2. Interactions
        8. Static Mesh creation pipeline
        9. Introducing volumes
          1. Blocking Volume
          2. Camera Blocking Volume
          3. Trigger Volume
          4. Nav Mesh Bounds Volume
          5. Physics Volume
            1. Pain Causing Volume
            2. Kill Z Volume
            3. Level Streaming Volume
            4. Cull Distance Volume
            5. Audio Volume
            6. PostProcess Volume
            7. Lightmass Importance Volume
        10. Introducing Blueprint
          1. Level Blueprint
        11. Using the Trigger Volume to turn on/off light
        12. Using Trigger Volume to toggle light on/off (optional)
        13. Summary
      11. 4. Material and Light
        1. Materials
        2. The Material Editor
          1. The rendering system
          2. Physical Based Shading Model
          3. High Level Shading Language
          4. Getting started
          5. Creating a simple custom material
          6. Creating custom material using simple textures
          7. Using custom materials to transform the level
        3. Rendering pipeline
        4. Shaders
        5. APIs – DirectX and OpenGL
          1. DirectX
            1. DirectX12
              1. Pipeline state representation
              2. Work submission
              3. Resource access
        6. Lights
          1. Configuring a Point Light with more settings
            1. Attenuation Radius
            2. Intensity
              1. Use Inverse Squared Falloff
            3. Color
          2. Adding and configuring a Spot Light
            1. Inner cone and outer cone angle
          3. Using the IES Profile
            1. Downloading IES Light Profiles
            2. Importing IES Profiles into the Unreal Engine Editor
            3. Using IES Profiles
          4. Adding and configuring a Directional Light
            1. Example – adding and configuring a Sky light
          5. Static, stationary, or movable lights
            1. Common light/shadow definitions
            2. Static Light
            3. Stationary Light
            4. Movable Light
          6. Exercise – extending your game level (optional)
            1. Useful tips
            2. Guidelines
              1. Area expansion
                1. Part 1 – lengthening the current walkway
                2. Part 2 – creating a big room (living and kitchen area)
                3. Part 3 – creating a small room along the walkway
                4. Part 4 – Creating a den area in the big room
              2. Creating windows and doors
                1. Part 1 – creating large glass windows for the dining area
                2. Part 2 – creating an open window for the window seat
                3. Part 3 – creating windows for the room
                4. Part 4 – creating the main door area
              3. Creating basic furniture
                1. Part 1 – creating a dining table and placing chairs
                2. Part 2 – decorating the sitting area
                3. Part 3 – creating the window seat area
                4. Part 4 – creating the Japanese seating area
                5. Part 5 – creating the kitchen cabinet area
        7. Summary
      12. 5. Animation and AI
        1. What is animation?
        2. Understanding how to animate a 3D model
          1. Preparing before animation
          2. How is animation created?
        3. What Unreal Engine 4 offers for animation in games
          1. Importing animation from Maya/3ds Max
            1. Tutorial – importing the animation pack from Marketplace
          2. What can you do with Persona?
            1. Tutorial – assigning existing animation to a Pawn
          3. Why do we need to blend animations?
            1. Tutorial – creating a Blend Animation
            2. Tutorial – setting up the Animation Blueprint to use a Blend Animation
              1. AnimGraph
              2. EventGraph
        4. Artificial intelligence
          1. Understanding a Behavior Tree
          2. Exercise – designing the logic of a Behavior Tree
          3. Example – creating a simple Behavior Tree
          4. How to implement a Behavior Tree in Unreal Engine 4
          5. Navigation Mesh
            1. Tutorial – creating a Navigation Mesh
          6. Tutorial – setting up AI logic
            1. Creating the Blueprint AIController
            2. Creating the Blueprint character
            3. Adding and configuring Mesh to a Character Blueprint
            4. Linking AIController to the Character Blueprint
            5. Adding basic animation
            6. Configuring AIController
              1. Nodes to add in EventGraph
            7. Adjusting movement speed
            8. Creating the BlackBoardData
              1. Adding a variable into BlackBoardData
            9. Creating a Behavior Tree
            10. Creating a simple BT using a Wait task
            11. Using the Behavior Tree
            12. Creating a custom task for the Behavior Tree
            13. Using the PickTargetLocation custom task in BT
            14. Replacing the Wait task with Move To
          7. Implementing AI in games
        5. Summary
      13. 6. A Particle System and Sound
        1. What is a particle system?
        2. Exploring an existing particle system
        3. The main components of a particle system
          1. Modules
        4. The design principles of a particle system
          1. Research
          2. The iterative creative process
        5. Example – creating a fireplace particle system
          1. Crafting P_Fireplace
            1. Observing the solo emitters of the system
            2. Deleting non-essential emitters
            3. Focusing on editing the Flame emitter
            4. Looking at the complete particle system
        6. Sound and music
        7. How do we produce sound and music for games?
        8. Audio quality
        9. How are sounds recorded?
        10. The Unreal audio system
        11. Getting audio into Unreal
          1. The audio format
          2. The sampling rate
          3. Bit depth
          4. Supported sound channels
        12. Unreal sound formats and terminologies
        13. The Sound Cue Editor
          1. How to open the Sound Cue Editor
        14. Exercise – importing a sound into the Unreal Editor
        15. Exercise – adding custom sounds to a level
        16. Configuring the Sound Cue Editor
        17. Summary
      14. 7. Terrain and Cinematics
        1. Introducing terrain manipulation
          1. Exercise – creating hills using the Landscape tool
          2. Landscape creation options
            1. Multiple landscapes
            2. Using custom material
            3. Importing height maps and layers
            4. Scale
            5. The number of components
            6. Section Size
        2. Introducing cinematics
        3. Why do we need cut scenes?
        4. Cinematic techniques
          1. Adjusted camera functions
            1. Zoom
            2. Field of view
            3. Depth of field
          2. Camera movement
            1. Tilt
            2. Pan
            3. Dolly/track/truck
            4. Pedestal
          3. Capturing a scene
            1. Lighting
            2. Framing
              1. Some framing rules
              2. Shot types
            3. Shot plan
        5. Getting familiar with the Unreal Matinee Editor
        6. Exercise – creating a simple matinee sequence
        7. Summary
      15. Index