Create professional and realistic 3D games using C++ 17.
Birmingham :
Packt Publishing,
2018.
1 online resource (333 pages)
Motion algorithms and techniques.
Cover; Title Page; Copyright and Credits; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: C++ for Game Development; The conventions used in the book; An overview of advanced C++ concepts; Working with namespaces; Inheritance and polymorphism; Pointers and referencing; unique_ptr and shared_ptr; const correctness; Memory management; Dealing with errors; Working with types and containers; STL generic containers; Vector; List; Map; Templating; Class templates; Function templates; Variable templates; Type inference and when to use it; Game programming patterns.
Chapter 8: Advanced Gameplay SystemsImplementing a scripting language; Why a scripting language; Introducing LUA; Implementing LUA; Building a dialog system; Constructing the C++ infrastructure; Creating a dialog tree script; Scripting quests; In engine support; Engine/script bridge; Script-based system; Summary; Chapter 9: Artificial Intelligence; What is game AI?; Defining game AI; Conversations; Competitive opponents; Motion and pathfinding; What game AI is not; Making decisions; AI state machines; Decision trees; Feedback loops; Motion and pathfinding techniques.
On macOS XBuilding dynamic library on Windows using .def file; Using only .def file; Setting linker options; Sharing and consuming libraries; Summary; Chapter 3: Building a Strong Foundation; Building helper classes; Encapsulation with managers; Creating interfaces; Summary; Chapter 4: Building the Asset Pipeline; What is an asset pipeline?; Handling audio; Working with textures; Resource manager; Texture and TextureCache; The ImageLoader class; Importing models â#x80;#x93; meshes; Summary; Chapter 5: Building Gameplay Systems; Understanding states; Working with cameras; Working with physics.
Point in AABBAABB to AABB; Sphere to sphere; Implementing the Bullet physics library.; Summary; Chapter 6: Creating a Graphical User Interface; Coordinate systems and positioning; Adding control logic; Rendering the GUI; Summary; Chapter 7: Advanced Rendering; Introduction to shaders; Shader languages; Building a shader program infrastructure; Working with shader data; Lighting effects; Per-vertex diffuse; Per-vertex ambient, diffuse, and specular; Per-fragment Phong interpolation; Using Shaders to create effects; Discarding fragments; Generating particles; Summary.
Working with loopsState machines; Event listeners; Summary; Chapter 2: Understanding Libraries; Why do we use libraries?; Library build types; Statically linked libraries; On Windows; On macOS X; Dynamically linked libraries; Compiling and linking dynamic libraries on Windows; Compiling and linking dynamic libraries On macOS X; Header only or source libraries; Building a custom shareable library; Setup and structure; Creating a new project on Windows; Creating a new project on macOS X; Creating source files on Windows; Creating source files on macOS X; Building a custom library; On Windows.
0
8
8
8
8
Many languages are available for game development, but C++ 17 remains a fixture in the games industry. The main reasons for this are its performance, cross-platform compatibility and widespread availability across toolchains. The primary goal of the book is to teach you to create high quality video games using C++ 17 game programming.
01201872
B09337
Mastering C++ Game Development : Create professional and realistic 3D games using C++ 17.