Game Development Tool Essentials provides must-have tips and tricks from industry professionals for strengthening and streamlining your game tools pipeline. Everyone knows the game tools pipeline is important, but in the current environment of shrinking budgets and increased time pressure, developers often have to settle for inefficient, ad hoc, messy pipelines. This unique book will break you out of that cycle. The practical, expert insights contained within will enable you to work faster and more efficiently, so you can spend more time making cool things. Game Development Tool Essentials pools the knowledge and experience of working developers over four critical aspects of the game tools pipeline: asset and data management, geometry and models, Web tools, and programming. Within those sections, you will learn cutting-edge techniques on essential subjects such as COLLADA rendering, exporting and workflow; asset management and compiler architecture; and moving tools to the cloud. If you're a game developer, you need Game Development Tool Essentials.
Covers readily available tools and tools developers can build themselves. Presents 96 code samples, 81 illustrations, and end-of-chapter references. Special chapter on moving tools to the cloud.
Author(s): Paula Berinstein; Nicusor Nedelcu; Alessandro Ardolino
Publisher: Apress
Year: 2014
Language: English
Pages: 220
Contents at a Glance
Contents
About the Authors
About the Technical Reviewers
Acknowledgments
Introduction
Part 1: Asset and Data Management
Chapter 1: Plug-in–based Asset Compiler Architecture
Design
Example
Conclusion
Chapter 2: GFX Asset Data Management
Folder Structure
Naming Conventions
3D Models
Textures
Conclusion
Part 2: Geometry and Models
Chapter 3: Geometry and Models: 3D Format Conversion (FBX, COLLADA)
The Sample Game
Exporting from 3ds Max
Exporting from Maya
Exporting from Blender
Other Formats and Exporting from Other Tools
FBX SDK
COLLADA Document Format
Models for Labyrinth
Importing into the Delta Engine
Optimizing for Mobile Devices
Final Tips
Conclusion
Chapter 4: Building Procedural Geometry Using MAXScript (Voronoi Polygons)
MAXScript and the Sample Code
Voronoi and Delaunay
What the Script Does
The Code: Utility Functions and Data Structures
The Code: the Delaunay Triangulation
The Code: the Voronoi Diagram
Conclusion
Chapter 5: A Uniform Geometry Workflow for Cutscenes and Animated Feature Films
Technology
Cache Format
I/O Framework
Software Plug-ins
Cache Export
Cache Preview
Cache Geometry
Rendering Caches
Custom Tools
Workflow
Our Pipeline
Teams
Assets and Files
Parallel Workflow
Merging
Conclusion
Chapter 6: Building a Rock-Solid Content Pipeline with the COLLADA Conformance Test Suite
Things You Need to Know About the Tests
Blessed Images
Types of Tests
Two Cycles
Dataset for Input and Output
Getting Started
Downloading and Installing the CTS
Prerequisites
Python-related Tools
.NET Framework
Integration
The Config File
The Python Script
The FApplication Script as a Model
Creating and Running the Tests
Creating a Test Procedure
Adding Tests
The Grid
Running the Tests
Selecting Tests
While the Tests Are Running
Canceling Tests
Reading the Results
What to Do When a Test Fails
Comparing Test Runs
Comparing Images
The “Compare Image With” Dialog
The “Image Comparison” Dialog
The “Image Diff” Dialog
Troubleshooting
Setup
Judging Scripts
The Judging Script Driver
The COLLADA Input Documents
The COLLADA Output Documents
Documentation
References
Chapter 7: Rendering COLLADA Assets on Mac OS X with Scene Kit
Integrating Scene Kit with Xcode
The Xcode COLLADA Editor
The Scene Kit API
COLLADA Scene Import
Loading a COLLADA Scene
Extraction of COLLADA Library Entries
Scene Graph Manipulation and Animations
Scene Configuration
Asteroid Field Instantiation and Layout
Asteroid Field Animation
Rendering
Relationship to COLLADA
Conclusion
Chapter 8: COLLADA Exporter for Unity Developers in the Unity Asset Store
Introduction
Understanding the COLLADA Exporter for Unity
The COLLADA Exporter in Depth
Header Information
Texture Options
Animation Options
Terrain Options
Miscellaneous Options
Exporting
Conclusion
Part 3: Web Tools
Chapter 9: Introduction to Utilizing HTML, CSS, and JavaScript to Create Rich Debugging Information
Utilizing Web Technologies
Generating HTML Logs
TABLE
IMG
CANVAS
Improving Log Readability with CSS
Intelligent Reporting and Interactivity with JavaScript
JSON
More on JavaScript: Live Reporting with AJAX
Visualizing Data
Other Third-Party JavaScript Libraries
jQuery
Flotr2
Conclusion
Chapter 10: Moving Tools to the Cloud: Control, Configure, Monitor, and View Your Game with WebSocket
Foundation
Examples
Technical Details
The WebSocket Protocol
A WebSocket Server
Command Processing
Future Work
Conclusion
Part 4: Programming
Chapter 11: Programming: Decoupling Game Tool GUIs from Core Editing Operations
Editor Ecosystem
Editor Core C++ API
Plug-ins
Commands
Command Parameters
Direct Editor API Command Calls
Remote Editor API Command Calls
Putting It All Together
Implementing a Plug-in with Commands
Events
Conclusion
Chapter 12: Building A Game Prototyping Tool for Android Mobile Devices
Getting Ready for Development
A Game Prototyping Tool
Scope
Purpose
Tools
Code Structure
User Interface Implementation
GPTActivity
GPTJNILib
Scene Editor and Script Editor
Scene Player
Native Script Engine Implementation
Building GPT’s Native Library with Android NDK
GPTScriptEngine
Test Drive
What’s Next
Chapter 13: Engineering Domain-Specific Languages for Games
What Are DSLs?
What Does a DSL Look Like?
A Categorization of DSLs
Internal DSLs
External DSLs
Technical Orientation
Why Should You Even Care?
How to Use DSLs
Language Engineering Workflow
DSL Requirements
Reference Model
Reference Output
Media List
Statistics
Configuration File(s)
Language Definition
Conclusion
Index