Mastering CryENGINE

Mastering CryENGINE
eBook: $29.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 15%!
Print + free eBook + free PacktLib access to the book: $79.98    Print cover: $49.99
save 6%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Explore the CryENGINE production methods used by industry professionals
  • Master the advanced features of CryENGINE, such as facial animation and the input system
  • A Comprehensive guide with interesting, practical examples and step-by-step instructions

Book Details

Language : English
Paperback : 278 pages [ 235mm x 191mm ]
Release Date : April 2014
ISBN : 1783550252
ISBN 13 : 9781783550258
Author(s) : Sascha Gundlach, Michelle K. Martin
Topics and Technologies : All Books, Application Development, Game Development, Other

Table of Contents

Chapter 1: Setting Up the Perfect Pipeline
Chapter 2: Using the CryENGINE Input System – Keyboard, Mouse, and Game Controller
Chapter 3: Building Complex Flow Graph Logic
Chapter 4: Morphs and Bones – Creating a Facial Setup for Your Character
Chapter 5: Mastering Sandbox
Chapter 6: Utilizing Lua Script in CryENGINE
Chapter 7: Animating Characters
Chapter 8: Mastering the Smart Objects System
Chapter 9: Eye Candy – Particles, Lens Flares, and More
Chapter 10: Shipping the Build
  • Chapter 1: Setting Up the Perfect Pipeline
    • What is a production pipeline?
    • Importance of a strong pipeline
    • Version control for CryENGINE projects
      • What version control does for you
      • Production without version control
        • Working from a shared folder
      • Selecting a VCS for CryENGINE projects
      • Setting up version control for CryENGINE
        • Sandbox
      • Identifying CryENGINE project files to be excluded from version control
    • Automated builds and build scripts
      • Creating nightly builds
      • Setting up a build server
        • Operating systems
      • What the build scripts should do
      • Creating your custom build script
        • Writing your own script
        • Wrapping it up
      • Scheduling automated builds
    • Automated performance tests
      • Using level statistics to profile the performance of a level
    • Build integration
      • Integrating a new version of CryENGINE
        • The engine depot
        • Project branch
        • Integration
    • Quality assurance processes
      • QA pipeline in larger scale teams
      • QA pipeline in smaller teams
      • Working without a QA pipeline
    • Understanding issue tracking in CryENGINE
    • Summary
  • Chapter 2: Using the CryENGINE Input System – Keyboard, Mouse, and Game Controller
    • The CryENGINE input system
      • A layer of abstraction
      • The input
    • Game actions
      • Action Maps
        • Multiple Action Maps
      • Creating a new Action
        • Setting up an Action event
        • Adding an Action mapping
      • Reacting to Action events
        • Action events in code
        • Action events in FlowGraph
      • Filtering Actions
        • Creating Action Filters
        • Using Action Filters
      • Reacting to Input events
        • Code
        • FlowGraph
    • User profiles
      • Modifying user profiles
        • DLCs and patches
    • The input event names reference
      • Keyboard
      • Mouse
      • Xbox 360 controller
      • PS3 controller
    • Summary
  • Flow graph data format and storage
  • The entity nodes with dynamic targets
    • What happens if we input the wrong EntityId?
    • A more complex application of dynamic EntityIds
  • Let's take a shortcut
    • Q – node quick search
    • F/G – link highlighting
    • Ctrl + Shift + V – paste nodes with links
  • Embedding the flow graphs
  • GameTokens
    • The GameToken libraries
    • Reaction to a game token changing its state
    • The GraphTokens variable
    • Accessing the Lua functionality
  • Creating nodes in C++ and Lua
    • Adding ports to an entity flow graph node
    • Creating flow graph nodes using the Lua script
    • Creating flow graph nodes using C++
  • Summary
  • Chapter 4: Morphs and Bones – Creating a Facial Setup for Your Character
    • Creating a facial setup for a character
      • Exporting the character's head
      • Using facial expression libraries
        • Creating a new facial expression library
        • Mapping the library
        • Creating expressions
    • Facial animation
      • Creating facial sequences
      • Using facial sequences in the engine
        • Inside the TrackView editor
        • Inside the FlowGraph node
      • Using expressions
    • The Lip Sync feature
      • Manual lip synching
      • Automatic phoneme extraction
      • Lip sync playback
        • Quality – phoneme extraction
        • Quality – visimes and phonemes
        • Quality – adding emotions
    • Summary
  • Chapter 5: Mastering Sandbox
    • Don't stop getting better
    • Getting faster with keyboard shortcuts
      • Thinking about hand placement
      • Object editing modes
        • Test it!
      • Aligning objects
      • Using the deep selection feature
      • Using the Goto Selection feature
      • Using camera tag-points
      • Top five shortcuts
    • Customizing Sandbox
      • Customizing the Sandbox window layout
      • Saving and loading layouts
    • Working with cameras
      • Camera targets
      • Switching cameras
    • Exploring Sandbox custom commands and macros
      • Sandbox custom commands and macros
    • Looking at some lesser-known features
      • Video recording
      • Mesh editing
      • Managing PAK files
      • Renaming multiple objects
    • Summary
  • Chapter 6: Utilizing Lua Script in CryENGINE
    • Understanding the relevance of the Lua script in CryENGINE
    • Lua-based entities
      • Creating a new Lua-based entity
      • Assigning a 3D object to an entity
        • Using entity slots
        • Setting up physics
    • Making an entity multiplayer-ready
      • Understanding the dataflow of Lua entities in a multiplayer environment
        • The Client/Server functions
        • The Remote Method Invocation definitions
    • Using the state machine
    • Using script binds
      • Calling script binds
      • Creating new script binds
    • Using engine callbacks
    • Using the Lua debugger
    • Summary
  • Chapter 7: Animating Characters
    • The CryENGINE animation system
    • Introducing CryMannequin
      • Splitting up the game and animation logic
      • Understanding CryMannequin's purpose
        • Selecting animations
        • Starting animations
      • Fragments, Fragment IDs, and Tags
    • Extending the state machine
      • Understanding the state machine hierarchy
      • Creating a new state
      • Triggering the new state
    • Playing animations without CryMannequin
      • TrackView
        • Multiple animation layers
        • CryMannequin tracks
      • Triggering animation from FlowGraph
        • The PlayAnimation node
        • Other animation nodes
      • The code
    • Summary
  • Chapter 8: Mastering the Smart Objects System
    • What are SmartObjects?
    • Where the Smart Objects system is used
    • Smart Objects categories
      • Environmental SmartObject
      • A time-based SmartObject
      • Navigational SmartObject
    • The concept of the SmartObject system
    • The SmartObjects editor
      • The Window layout of the SmartObject editor
        • The Rules and Tasks windows
        • The Rules List window
        • The Rule Properties window
      • The SmartObject library
    • Creating a new SmartObject rule
      • Preparing the level
      • Creating the SmartObject rule
      • Creating the SmartObject classes
      • Creating the SmartObject states
      • Creating a SmartObject state pattern
        • User and Object
        • The state pattern
      • Creating an AIAction
        • Selecting actions
        • Creating the action
        • Setting up the action and state changes
      • Getting the level ready
    • Testing the SmartObject rule
      • Troubleshooting
      • Debugging SmartObjects
        • Debugging AIActions
      • Changing states from Lua
    • Summary
  • Chapter 9: Eye Candy – Particles, Lens Flares, and More
    • Types of eye candy
    • Particle effects
      • Working with particle effects in CryENGINE
      • The particle editor
      • Creating a new particle effect
        • Customizing the particle parameters
        • Tweaking the effect
      • Particle effects at runtime
    • Lens flares
      • The lens flare editor
        • Creating a new lens flare effect
        • Assigning a lens flare effect to a light
        • Lens flare effects caused by the sun
    • Postprocessing effects and the flow graph
      • Using material FX graphs
        • Creating a custom material FX graph
        • Testing the new material effect
        • Debugging material effects
    • Postprocessing in TrackView
      • Using effect tracks in a TrackView sequence
      • Using track events
    • Performance considerations
      • Overdraw
      • Draw calls
    • Summary
  • Chapter 10: Shipping the Build
    • Getting your game ready to ship
      • Optimizing performance
        • Optimizing levels
        • Optimizing shadows
        • Vegetation
        • Layers
      • Testing and QA
      • Errors and warnings
        • Log verbosity
    • Tackling legal issues
      • Copyright
      • Credits
      • CryENGINE license
      • Things to consider for indies
        • MobyGames
    • Preparing your build
      • Building a release candidate
        • Auto-loading the first level
        • PAK files
        • Removing all debug features
      • Reducing your build size
      • Shaders
    • Creating an installer
      • A ZIP file
      • Selecting an installer
      • Dependencies
      • An icon for your executable
    • Summary

Sascha Gundlach

Sascha Gundlach has been working in the games industry for over a decade and started his career as a script programmer in a small game studio in the early 2000s. He worked for Crytek for eight years, working on games such as Crysis, Crysis: Warhead, and Crysis 2.

He is a CryENGINE expert and has provided countless training sessions and individual training to CryENGINE licensees in the past years.

In 2013, he founded his own game development company, MetalPop Games, together with his partner and Crytek veteran Michelle K. Martin in Orlando, Florida.

He spends his days working on video game projects and provides consulting work for other game projects.

Michelle K. Martin

Michelle K. Martin is a software engineer in the game industry, specializing in animation systems. She started her career with the German developer, Crytek, working on projects such as Crysis and Crysis 2. During her career, Michelle has helped develop and improve CryENGINE's animation system with several features. Being an expert in CryENGINE, she has provided a lot of support and training to CryENGINE licensees over the years, helping their team to get the most out of the engine.

In 2013, she founded MetalPop Games together with her partner and Crytek veteran Sascha Gundlach. It is an indie game development studio and they are currently working on their first title.

When she's not in front of the computer programming, she is most likely to be in front of the computer playing games.

More about Sascha and Michelle's company MetalPop Games can be found at

Sorry, we don't have any reviews for this title yet.

Code Downloads

Download the code and support files for this book.

Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

Mastering CryENGINE +    Oracle Business Intelligence 11g R1 Cookbook =
50% Off
the second eBook
Price for both: $43.05

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • Build a solid and flexible CryENGINE production pipeline
  • Use the CryENGINE input system to react to mouse, keyboard, and game controllers and to filter the input when needed
  • Create a facial setup for your characters and lip synch to audio
  • Use Lua script to create new, powerful entities for your game
  • Use CryMannequin to set up and trigger animations
  • Add some eye candy to your game using the particle system, the lens flare editor, and CryENGINE's real-time post processing effects
  • Get your game ready to ship and make sure your build is ready to go out to the public

In Detail

CryENGINE is one of the most powerful real-time 3D engines available today; its rendering and real-time capabilities are unmatched. Mastering CryENGINE will take your CryENGINE skills to the next level, allowing you to unleash the full power of the engine. Whether you are working on a small mod or a large-scale production, the user-friendly steps and illustrations in this book will help you master the wide range of features of the CryENGINE toolkit.

The book begins with the setting up of a CryENGINE-ready production pipeline, further introducing you to the advanced features of CryENGINE. You will learn advanced techniques, best practices, and various methods utilized in production by CryENGINE veterans. You will also explore how to use the Lua scripting language to build more sophisticated gameplay elements.


A comprehensive guide that covers advanced tasks performed with the CryENGINE system using interesting examples and illustrations demonstrating each of its features.

Who this book is for

This book is designed for developers who already have a basic understanding of CryENGINE and who want to take their skills to the next level. Whether you are a hobbyist developer or you are working on a AAA project, Mastering CryENGINE will help you enhance your CryENGINE proficiency.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software