Discover millions of ebooks, audiobooks, and so much more with a free trial

From $11.99/month after trial. Cancel anytime.

CryENGINE 3 Cookbook: Over 90 recipes written by Crytek developers for creating third-generation real-time games
CryENGINE 3 Cookbook: Over 90 recipes written by Crytek developers for creating third-generation real-time games
CryENGINE 3 Cookbook: Over 90 recipes written by Crytek developers for creating third-generation real-time games
Ebook1,028 pages3 hours

CryENGINE 3 Cookbook: Over 90 recipes written by Crytek developers for creating third-generation real-time games

Rating: 0 out of 5 stars

()

Read preview

About this ebook

With every successive console generation, the cost, time, and complexity of developing games has grown. Meet CryENGINE3, a middleware engine that is the perfect fit for most developers allowing users to exceed current generation quality standards while using less people and time than ever thought possible.The CryENGINE3 CookBook is packed full of recipes for junior and senior developers alike. It covers everything from creating photo realistic architectural visualizations to implementing advanced physics such as ragdoll and tornado effects. Topics covered include the sandbox, level layout, environment creation, AI, character creation, creating vehicles, and game logic. Every recipe is designed to add AAA quality to your games. The CryENGINE3 SDK has many tools immediately available to developers of all disciplines. For designers the book has recipes for building up your own levels and populating your levels with intelligent AI and photo realistic assets. For artists we have recipes for practical workflow tools and techniques used when working with the advanced CryENGINE shaders and materials. For animators we have recipes that will bring your creations to life using skinned characters and advanced animation systems like locomotion groups. Finally for programmers we have recipes that show how to employ the core mechanics behind entities such as vehicles and weapons while also utilizing the strengths of the physics engine to create a unique and exciting game.

LanguageEnglish
Release dateJun 23, 2011
ISBN9781849691079
CryENGINE 3 Cookbook: Over 90 recipes written by Crytek developers for creating third-generation real-time games

Related to CryENGINE 3 Cookbook

Related ebooks

Information Technology For You

View More

Related articles

Reviews for CryENGINE 3 Cookbook

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    CryENGINE 3 Cookbook - Dan Tracy

    (missing alt)

    Table of Contents

    CryENGINE 3 Cookbook

    Credits

    About the Authors

    www.PacktPub.com

    Support files, eBooks, discount offers and more

    Why subscribe?

    Free access for Packt account holders

    Preface

    What this book covers

    What you need for this book

    Who this book is for

    Conventions

    Reader feedback

    Customer support

    Downloading the example code and colored graphics for this book

    Errata

    Piracy

    Questions

    1. CryENGINE 3: Getting Started

    Introduction

    Opening a level in the CryENGINE 3 Sandbox

    Getting ready

    How to do it...

    How it works...

    There's more...

    What is a .cry file?

    Using a level.cfg

    See also

    Navigating a level with the Sandbox Camera

    Getting ready

    How to do it...

    How it works...

    There's more...

    Viewport movement speed control

    Under Views you can adjust the viewport to view different aspects of your level

    Splitting the main viewport to several subviewports

    See also

    Setting up a personalized toolset layout

    Getting ready

    How to do it...

    How it works...

    The Status Bar

    The Console

    The Toolbox

    See also

    How to customize toolbars and menus

    Getting ready

    How to do it...

    How it works...

    There's more...

    The Options tab

    Personalized menus and toolbars

    Using the Rollup Bar

    Getting ready

    How to do it...

    How it works...

    There's more...

    The AI section

    The Area section

    The Entities section

    The Misc Objects section

    The Solids section

    The Archetype entity section

    The Geom entity section

    The Prefabs section

    The Sound section

    See also

    Selecting and browsing level objects

    Getting ready

    How to do it...

    How it works...

    There's more...

    Browsing frozen and hidden objects

    List types

    Display as a Tree

    See also

    Restoring the CryENGINE 3 default settings

    Getting ready

    How to do it...

    How it works...

    There's more...

    Deleting your user folder

    See also

    2. Sandbox Basics

    Introduction

    Creating a new level

    Getting ready

    How to do it...

    How it works...

    Using the Terrain option

    Heightmap resolution

    Meters per unit

    Terrain size

    There's more...

    See also

    Generating a procedural terrain

    Getting ready

    How to do it...

    How it works...

    There's more...

    Terrain generation settings

    See also

    Terrain sculpting

    Getting ready

    How to do it...

    How it works...

    There's more...

    Noise settings

    Reposition objects and vegetation

    See also

    Setting up the terrain texture

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Placing the objects in the world

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Refining the object placement

    Getting ready

    How to do it...

    There's more...

    Local position and rotation

    Grid and angle snaps

    Ctrl + Shift + Click

    See also

    Utilizing the layers for multiple developer collaboration

    Getting ready

    How to do it...

    How it works...

    There's more...

    External layer limitations

    See also

    Switching to game mode

    Getting ready

    How to do it...

    See also

    Saving your level

    Getting ready

    How to do it...

    How it works...

    There's more...

    Exporting to an engine

    Getting ready

    How to do it...

    How it works...

    There's more...

    Opening .pak files

    Corrupted .pak files should be deleted and re-exported

    Essential game objects

    Getting ready

    How to do it...

    How it works...

    See also

    Running a map from the Launcher

    Getting ready

    How to do it...

    See also

    3. Basic Level Layout

    Introduction

    Making basic shapes with the Solids tool

    Getting ready

    How to do it...

    How it works...

    There's more...

    Other shapes—cone, sphere, cylinder

    Number of sides—only for cone, sphere, cylinder

    See also

    Editing and merging solids

    Getting ready

    How to do it...

    There's more...

    Exporting the selected geometry to .OBJ

    Resetting the XForm

    See also

    Grouping the objects

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Utilizing the Geom entities instead of brushes

    Getting ready

    How to do it...

    How it works...

    See also

    Road construction

    Getting ready

    How to do it...

    How it works...

    There's more...

    Road parameters

    Shape editing

    Align Height Map

    See also

    Painting vegetation

    Getting ready

    How to do it...

    How it works...

    There's more...

    Vegetation parameters

    See also

    Breaking up tiling with Decals

    Getting ready

    How to do it...

    How it works...

    There's more...

    Decal parameters

    Decals can have their unique position, rotation, and scale

    See also

    Making caves with Voxels

    Getting ready

    How to do it...

    How it works...

    There's more...

    Soft Create

    Material

    Copy Terrain

    Creating Prefabs to store in external libraries

    Getting ready

    How to do it...

    How it works...

    There's more...

    Extract Object and Extract All

    Open/Close

    Pick and Attach/Remove Object and Update Prefab

    See also

    4. Environment Creation

    Introduction

    Creating your first time of day using the basic parameters

    Getting ready

    How to do it...

    How it works...

    There's more...

    Forcing sky update to true

    Record icon

    Play icon

    See also

    Adjusting the terrain lighting

    Getting ready

    How to do it...

    How it works...

    There's more...

    Terrain ambient occlusion

    Transition shading from the sun to the moon

    SSAO (screen-space-ambient occlusion)

    See also

    Using the real-time Global Illumination

    Getting ready

    How to do it...

    How it works...

    There's more...

    Advanced GI Cvars

    See also

    Editing HDR lighting and the effects for flares

    Getting ready

    How to do it...

    How it works...

    There's more...

    Lights with flare effects

    Glow texture effect produces bloom and flares

    See also

    Creating a global volumetric fog

    Getting ready

    How to do it...

    How it works...

    There's more...

    Density offset

    Enabling or disabling fog in the Render Settings

    See also

    Creating a night scene with time of day parameters

    Getting ready

    How to do it...

    There's more...

    SSAO contrast and amount

    HDRSetup parameters at night

    Moon and corona color and scale

    See also

    Color grading your level

    Getting ready

    How to do it...

    How it works...

    There's more...

    _CCH naming convention

    Capturing TGA images as reference images

    Debugging visual glitches

    See also

    Creating a photo realistic ocean

    Getting ready

    How to do it...

    How it works...

    There's more...

    Animating water parameters

    Caustics

    Free form transformation FFT water

    Improving your sky with clouds

    Getting ready

    How to do it...

    How it works...

    There's more...

    Cloud shadows

    See also

    Making it rain in your level

    Getting ready

    How to do it...

    How it works...

    There's more...

    Lightning entity

    Wind

    Fog volumes

    5. Basic Artificial Intelligence

    Introduction

    Placing the enemy AI

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Generating the AI navigation

    Getting ready

    How to do it...

    How it works...

    There's more...

    Generating AI triangulation

    See also

    Forbidden boundaries

    Getting ready

    How to do it...

    How it works...

    See also

    Forbidden areas

    Getting ready

    How to do it...

    How it works...

    See also

    Setting up the interior navigation

    Getting ready

    How to do it...

    How it works...

    There's more...

    Auto-Dynamic Points versus Designer Controlled Points

    See also

    Debugging the AI triangulation

    Getting ready

    How to do it...

    How it works...

    See also

    Narrowing the AI's FOV to allow attacks from behind

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Respawning AI

    Getting ready

    How to do it...

    How it works...

    There's more...

    AI territory FlowGraph node properties

    AI wave FlowGraph node properties

    6. Asset Creation

    Introduction

    Installing the CryENGINE 3 plugin for 3D Studio Max

    Getting ready

    How to do it...

    How it works...

    There's more...

    3ds Max CryTools Maxscripts

    Installing the 3ds Max CryTools Maxscripts

    Uninstalling the 3ds Max CryTools Maxscripts

    See also

    Creating textures using CryTIF

    Getting ready

    How to do it...

    How it works...

    There's more...

    Editing the CryTif plugin root path

    Adjusting the default presets in the CryTIF dialog

    Manually generating the .DDS output

    See also

    Setting up units to match CryENGINE in 3ds

    Getting ready

    How to do it...

    How it works...

    There's more...

    Grid and Snap settings

    Measurement reference

    See also

    Basic material setup in 3ds

    Getting ready

    How to do it...

    How it works...

    There's more...

    Assigning textures in 3ds Max to materials

    Physicalize

    See also

    Creating and exporting static objects

    Getting ready

    How to do it...

    How it works...

    There's more...

    Physics proxy

    Occlusion geometry

    User defined properties

    See also

    Creating and exporting destroyable objects

    Getting ready

    How to do it...

    How it works...

    There's more...

    Two-dimensional breakable assets

    Jointed breakables

    User defined properties

    See also

    Using advanced material editor parameters to create animation

    Getting ready

    How to do it...

    How it works...

    There's more...

    Animated textures

    Vertex deformation

    See also

    Creating new material effects

    Getting ready

    How to do it...

    How it works...

    There's more...

    Creating new surface types

    Physics block parameters

    Ammo surface types

    See also

    Creating image-based lighting

    Getting ready

    How to do it...

    How it works...

    There's more...

    Generating all Cubemaps

    Creating a CubeMap with Material Editor

    See also

    7. Characters and Animation

    Introduction

    Creating skinned characters for the CryENGINE

    Getting ready

    How to do it...

    How it works...

    Materials and characters

    LOD (Level of Detail)

    Bone Attachments

    See also

    Ragdoll and physics for characters

    Getting ready

    How to do it...

    How it works...

    There's more...

    IK limits

    ParentFrames

    Dead body entity settings

    See also

    Creating animation for your character

    Getting ready

    How to do it...

    How it works...

    There's more...

    Changing the animations compression

    .chrparams file Wildcard Mapping

    Animobject entity

    See also

    Previewing animations and characters for Sandbox

    Getting ready

    How to do it...

    How it works...

    There's more...

    Animation driven motion

    Searching and filtering animations

    Types of animation assets

    See also

    Creating upper body only animations

    Getting ready

    How to do it...

    How it works...

    There's more...

    Additive animations

    Using additives

    See also

    Creating locomotion animations

    Getting ready

    How to do it...

    How it works...

    There's more...

    Swimming and vehicle transitions

    Locomotion loops

    Idle to move and 180 degree rotational assets

    See also

    Animating rigid body geometry data

    Getting ready

    How to do it...

    How it works...

    There's more...

    Pre-baked physics with .CGA objects

    Anim object and pre-baked .CGA

    See also

    8. Creating Vehicles

    Introduction

    Creating a new car mesh (CGA)

    Getting ready

    How to do it...

    How it works...

    There's more...

    Dummy helpers for modification of the parts

    Parts for vehicles and their limitless possibilities

    See also

    Creating a new car XML

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Giving more speed to the car

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Increasing the mass to push objects with the car

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Defining a sitting location

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Setting up multiple cameras for the car

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Need for a machine gun

    Getting ready

    How to do it...

    How it works...

    See also

    Giving the car a weak spot

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    9. Game Logic

    Introduction

    How to beam the player to a tag point from a trigger

    Getting ready

    How to do it...

    How it works...

    See also

    Making the AI go to a location when the player enters a proximity trigger

    Getting ready

    How to do it...

    How it works...

    There's more...

    AIGotoEx

    See also

    Debugging the Flow Graph

    Getting ready

    How to do it...

    How it works...

    There's more...

    See also

    Creating a kill counter

    Getting ready

    How to do it...

    How it works...

    See also

    Rewarding the player for reaching a kill goal

    Getting ready

    How to do it...

    How it works...

    See also

    Displaying the player's health through a Flow Graph

    Getting ready

    How to do it...

    How it works...

    Changing the player camera through key input

    Getting ready

    How to do it...

    How it works...

    There's more...

    Creating a countdown timer

    How to do it...

    How it works...

    There's more...

    10. Track View and Cut-Scenes

    Introduction

    Creating a new Track View sequence

    How to do it...

    How it works...

    There's more...

    Available tracks in the director node

    Sequence properties

    See also

    Animating a camera in the Track View

    Getting ready

    How to do it...

    How it works...

    There's more...

    FOV

    Playback speed

    Curve editor

    See also

    Triggering a sequence using the Flow Graph

    Getting ready

    How to do it...

    How it works...

    There's more...

    Useful debugging trigger

    Start time property

    Break on stop property

    See also

    Animating entities in the Track View

    Getting ready

    How to do it...

    How it works...

    There's more...

    Entity visibility track

    Animating scale

    Entities and their tracks

    See also

    Playing animations on entities in the Track View

    Getting ready

    How to do it...

    How it works...

    There's more...

    Loop animation

    Start time

    Time scale

    See also

    Using console variables (CVars) in the Track View

    Getting ready

    How to do it...

    How it works...

    There's more...

    Animating the CVar values

    T_scale cvar in Track View

    See also

    Using track events

    Getting ready

    How to do it...

    How it works...

    There's more...

    Removing events from the sequence

    Triggering image nodes for track sequences

    See also

    11. Fun Physics

    Introduction

    Low gravity

    Getting ready

    How to do it...

    How it works...

    There's more...

    Uniform property

    Gravity sphere

    Hangman on a rope

    Getting ready

    How to do it...

    How it works...

    See also

    Tornadoes

    Getting ready

    How to do it...

    How it works...

    There's more...

    Constraints

    Getting ready

    How to do it...

    How it works...

    There's more...

    Constraint properties

    Wrecking ball

    Getting ready

    How to do it...

    How it works...

    See also

    Rock slide

    Getting ready

    How to do it...

    How it works...

    There's more...

    Physics properties

    Simulation properties

    See also

    12. Profiling and Improving Performance

    Introduction

    Profiling performance in the Sandbox

    Getting ready

    How to do it...

    How it works...

    There's more...

    Draw Calls

    Triangle count

    Budgets

    See also

    Saving level statics

    Getting ready

    How to do it...

    How it works...

    There's more...

    Textures tab and render targets

    Physics tris and physics size

    Detailed dependencies tab

    See also

    Enabling the debug draw modes

    Getting ready

    How to do it...

    How it works...

    There's more...

    Overdraw pixel cost scale

    R_stats 15

    Profiles

    See also

    Optimizing the levels with VisAreas and portals

    Getting ready

    How to do it...

    How it works...

    There's more...

    Ambient color of VisAreas and portals

    Blind spots

    Using VisAreas and portals vertically

    See also

    Using light boxes and light areas

    Getting ready

    How to do it...

    How it works...

    There's more...

    Using a concave light shape

    Linking to multiple light shapes

    See also

    Activating and deactivating the layers

    Getting ready

    How to do it...

    How it works...

    There's more...

    Limits of layer switching

    Cinematics

    See also

    Index

    CryENGINE 3 Cookbook


    CryENGINE 3 Cookbook

    Copyright © 2011 Packt Publishing

    All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

    Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

    Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

    First published: June 2011

    Production Reference: 1170611

    Published by Packt Publishing Ltd.

    32 Lincoln Road

    Olton

    Birmingham, B27 6PA, UK.

    ISBN 978-1-849691-06-2

    www.packtpub.com

    Cover Image by Sean Tracy (<[email protected]>)

    Credits

    Authors

    Sean Tracy

    Dan Tracy

    Acquisition Editor

    Steven Wilding

    Development Editor

    Alina Lewis

    Technical Editor

    Aditi Suvarna

    Copy Editor

    Laxmi Subramanian

    Indexer

    Rekha Nair

    Project Coordinator

    Zainab Bagasrawala

    Proofreader

    Aaron Nash

    Graphics

    Geetanjali Sawant

    Production Coordinator

    Shantanu Zagade

    Cover Work

    Shantanu Zagade

    About the Authors

    Sean Tracy is Crytek's Senior Field Application Engineer for the award-wining CryENGINE. He is responsible for adapting the engine and its features to individual licensees, as well as developing full technical and vertical slice demos for prospective and existing clients. Describing himself as a generalizing specialist, he also gives support directly to CryENGINE licensees, while designing and maintaining their workflows, pipelines, and development techniques.

    Sean was recruited by Crytek in 2008 after working as an electronics technician for the Canadian Military. He was recruited due to his role in founding and leading the development on the award winning total conversion project MechWarrior: Living Legends. Since then, he has been featured in numerous gaming magazines and has been invited to speak at many game related trade shows and seminars. He is an avid gamer with extensive modding experience on titles including Never Winter Nights, the Battlefield engine Frostbite, Doom, and Quake.

    I would like to thank my wife for her understanding and support throughout the process of writing this book and for her ongoing support in allowing me to do what I truly enjoy for a living. I would also like to thank my brother for co-authoring the book with me as it's a pleasure to be able to work with someone with the same love for the technology as I have. Finally, I'd like to thank Crytek and Packt for their support in allowing me to write this book and for making one of the best game engines in the market.

    Dan Tracy is Crytek's Technical Level Designer for the award-winning CryENGINE and Crysis 2. He is responsible for the creation and maintenance of numerous technical features and external applications used for telemetry and optimization. Viewed as more than a level designer, Dan prides himself on pushing the envelope when it comes to improving both technical and game related designs across multiple production disciplines.

    Dan was recruited by Crytek in 2009 after previously working as a Quality Assurance Technician for BioWare. He was recruited due to his pivotal role in co-founding and leading development on the award winning total conversion project MechWarrior: Living Legends. Since then, he has been featured in numerous gaming magazines and has been interviewed by multiple media outlets. Dan is a passionate gamer, but an even more passionate modder and game designer, with vast knowledge and experience with multiple engines and titles including Never Winter Nights' Aurora, Battlefield's engine Frostbite, Unreal 3, and CryENGINE. This is Dan's first book.

    I would like to thank my friends and family for giving me their support during the crunch time of the Crysis 2 production, which also paralleled the creation of this book. If it wasn't for them, this wouldn't have been possible. I would also like to thank my brother for co-authoring the book with me as well as Crytek for providing me with this amazing opportunity to share my knowledge of CryENGINE with the world. Finally, I'd like to thank Packt for their support and setting this whole project in motion and publishing my first ever book.

    www.PacktPub.com

    Support files, eBooks, discount offers and more

    You might want to visit www.PacktPub.com for support files and downloads related to your book.

    Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and, as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at for more details.

    At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters, and receive exclusive discounts and offers on Packt books and eBooks.

    Support files, eBooks, discount offers and more

    http://PacktLib.PacktPub.com

    Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read, and search across Packt's entire library of books. 

    Why subscribe?

    Fully searchable across every book published by Packt

    Copy and paste, print, and bookmark content

    On demand and accessible via web browser

    Free access for Packt account holders

    If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.

    Preface

    With the overall complexity involved in creating games becoming exceedingly difficult and expensive with every successive console generation, many game developers have turned to middleware engines, such as the CryENGINE, that offer a complete pipeline for the game development process. CryENGINE is a perfect fit for most developers as it allows users to create their content quickly and easily and thus, allow games to meet and exceed current generation quality standards and still be created by fewer and fewer people.

    As CryENGINE 3 is globally recognized as one of the world's most powerful real-time middleware development platforms, with this book we will deliver the best of what the engine has to offer. Through the use of CryENGINE's intuitive and powerful toolset, named Sandbox, designers, artists, animators, and even programmers will be treated to real-time creation and iteration tools for bringing their visions to life.

    What this book covers

    Chapter 1, Getting Started, helps you set up the entire CryENGINE 3 Software Development Kit, which can be a difficult task. This chapter will guide you through the stages in setting up the required folder structure and how to set up your layout for the Sandbox Editor.

    Chapter 2, Sandbox Basics, helps you to learn the basic and most commonly used features provided by Sandbox.

    Chapter 3, Basic Level Layout, helps you create your first Level Layout within the Sandbox Editor and learn some of the more advanced techniques used by designers for object placement and manipulation.

    Chapter 4, Environment Creation, utilizes the CryENGINE 3 rendering tools to create photorealistic environments.

    Chapter 5, Basic Artificial Intelligence, helps you learn the basics of how to the use AI to navigate in your levels.

    Chapter 6, Asset Creation, helps you learn the pipeline of asset creation and export your 3D models to the CryENGINE format.

    Chapter 7, Characters and Animation, describes how to create new characters to be used in the engine along with your own custom

    Enjoying the preview?
    Page 1 of 1