Mastering CryENGINE. Raise your CryENGINE capabilities even higher with this superb guide. It will take you into a world of advanced features and amazing possibilities, teaching best practices and Lua scripting for sophisticated gameplay along the way - Helion
ebook
Autor: Michelle MartinTytuł oryginału: Mastering CryENGINE. Raise your CryENGINE capabilities even higher with this superb guide. It will take you into a world of advanced features and amazing possibilities, teaching best practices and Lua scripting for sophisticated gameplay along the way.
ISBN: 9781783550265
stron: 278, Format: ebook
Data wydania: 2014-04-11
Księgarnia: Helion
Cena książki: 134,10 zł (poprzednio: 149,00 zł)
Oszczędzasz: 10% (-14,90 zł)
Osoby które kupowały "Mastering CryENGINE. Raise your CryENGINE capabilities even higher with this superb guide. It will take you into a world of advanced features and amazing possibilities, teaching best practices and Lua scripting for sophisticated gameplay along the way", wybierały także:
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
- Ruby on Rails. Ćwiczenia 18,75 zł, (3,00 zł -84%)
- Przywództwo w świecie VUCA. Jak być skutecznym liderem w niepewnym środowisku 58,64 zł, (12,90 zł -78%)
- Scrum. O zwinnym zarządzaniu projektami. Wydanie II rozszerzone 58,64 zł, (12,90 zł -78%)
- Od hierarchii do turkusu, czyli jak zarządzać w XXI wieku 58,64 zł, (12,90 zł -78%)
Spis treści
Mastering CryENGINE. Raise your CryENGINE capabilities even higher with this superb guide. It will take you into a world of advanced features and amazing possibilities, teaching best practices and Lua scripting for sophisticated gameplay along the way eBook -- spis treści
- Mastering CryENGINE
- Table of Contents
- Mastering CryENGINE
- Credits
- About the Authors
- About the Reviewers
- www.PacktPub.com
- Support files, eBooks, discount offers, and more
- Why Subscribe?
- Free Access for Packt account holders
- Support files, eBooks, discount offers, and more
- Preface
- What this book covers
- What you need for this book
- The jump to CryENGINE 3.5
- Other required software
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- 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
- Perforce setup
- Exploring digital content creation tools such as Photoshop and 3ds Max
- Visual Studio
- Notepad
- 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 build scripts should do
- Creating your custom build script
- Writing your own script
- Getting the latest files from your version control
- Compiling the code
- Compiling the assets
- Wrapping it up
- Writing your own script
- 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
- Integrating a new version of CryENGINE
- 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
- 2. Using the CryENGINE Input System Keyboard, Mouse, and Game Controller
- The CryENGINE input system
- A layer of abstraction
- The input event system
- Game actions
- Action Maps
- Multiple Action Maps
- Creating a new Action
- Setting up an Action event
- Adding an Action mapping
- Optional parameters
- Trigger options
- OnPress parameters
- OnHold parameters
- OnRelease parameters
- Analog input
- Modifiers
- Trigger options
- Triggering console commands
- Optional parameters
- Reacting to Action events
- Action events in code
- Setting up a new Action listener
- Extending PlayerInput
- Creating a new handler function
- Registering your handler function
- Custom Action Maps
- Action events in FlowGraph
- Action events in code
- Filtering Actions
- Creating Action Filters
- Using Action Filters
- Reacting to Input events
- Code
- FlowGraph
- Action Maps
- User profiles
- Modifying user profiles
- DLCs and patches
- Modifying user profiles
- The input event names reference
- Keyboard
- Mouse
- Xbox 360 controller
- PS3 controller
- Summary
- The CryENGINE input system
- 3. Building Complex Flow Graph Logic
- Who uses the flow graph system?
- A more complex application of the flow graph
- Revisiting the basics of flow graphs
- Types of nodes
- Entity nodes
- Component nodes
- 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
- Lets 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
- 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
- Manually creating a library
- Automatic creation
- Bone rig requirements
- Creating expressions in 3ds Max
- Creating a Facial Library with Morphs
- Mapping the library
- Creating expressions
- Creating a new facial expression library
- 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
- Quality phoneme extraction
- Quality visimes and phonemes
- Quality adding emotions
- Summary
- Creating a facial setup for a character
- 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
- 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
- Understanding the dataflow of Lua entities in a multiplayer environment
- Using the state machine
- Using script binds
- Calling script binds
- Creating new script binds
- Using engine callbacks
- Using the Lua debugger
- Summary
- 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
- TrackView
- Summary
- 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
- The Window layout of the SmartObject editor
- 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
- Setting up the User and Object class
- The state pattern
- User and Object
- 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
- 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
- The lens flare editor
- Postprocessing effects and the flow graph
- Using material FX graphs
- Creating a custom material FX graph
- Testing the new material effect
- Debugging material effects
- Using material FX graphs
- Postprocessing in TrackView
- Using effect tracks in a TrackView sequence
- Using track events
- Performance considerations
- Overdraw
- Draw calls
- Summary
- 10. Shipping the Build
- Getting your game ready to ship
- Optimizing performance
- Optimizing levels
- Level configuration files
- Optimizing shadows
- Vegetation
- Layers
- Optimizing levels
- Testing and QA
- Errors and warnings
- Log verbosity
- Optimizing performance
- 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
- Fast-loading PAK files
- Removing all debug features
- Reducing your build size
- Shaders
- Building a release candidate
- Creating an installer
- A ZIP file
- Selecting an installer
- Dependencies
- An icon for your executable
- Summary
- Getting your game ready to ship
- Index