Document Type
|
:
|
BL
|
Record Number
|
:
|
856567
|
Main Entry
|
:
|
Macdonald, Mickey.
|
Title & Author
|
:
|
Mastering C++ Game Development : : Create professional and realistic 3D games using C++ 17.
|
Publication Statement
|
:
|
Birmingham :: Packt Publishing,, 2018.
|
Page. NO
|
:
|
1 online resource (333 pages)
|
ISBN
|
:
|
1788629221
|
|
:
|
: 1788629833
|
|
:
|
: 9781788629225
|
|
:
|
: 9781788629836
|
Notes
|
:
|
Motion algorithms and techniques.
|
Contents
|
:
|
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.
|
Abstract
|
:
|
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.
|
Subject
|
:
|
C++ (Computer program language)
|
Subject
|
:
|
Computer games-- Programming.
|
Subject
|
:
|
C++ (Computer program language)
|
Subject
|
:
|
Computer games-- Programming.
|
Subject
|
:
|
Computers-- Computer Graphics.
|
Subject
|
:
|
Computers-- Programming Languages-- C.
|
Subject
|
:
|
Computers-- Programming Languages-- General.
|
Subject
|
:
|
Graphical digital media applications.
|
Subject
|
:
|
Programming scripting languages: general.
|
Dewey Classification
|
:
|
005.13/3
|
LC Classification
|
:
|
QA76.73.C153
|