Torque Game EngineTorque Game Engine Documentation
Version 1.3.x

Torque Documentation

GarageGames

Torque Game Engine(TM) is the trademark of GarageGames.com, Inc. GarageGames is a registered trademark of GarageGames.com, Inc. All product hardware and software names, pictures, and terms are copyrighted and trademarked with their respective publishers/developers/distributors, where applicable.

Important

Please be sure you read and understand the Torque Game Engine licenses.

Indie Game License Agreement.

Commercial License Agreement.

Caution

This is a living document. If you would like to be part of the documentation team or have corrections, please send an email to staff@garagegames.com. Thank you!


Table of Contents

I. Getting Started
1. Getting Started
Development Basics
Scripting vs. C++
Tools and Editors
Where To Go From Here
2. Creating a Successful Indie Game With Torque
Overview
Step 1) Be realistic:
Step 2) Identify technology needs:
Step 3) Leverage existing technologies:
Step 4) Build a quick and dirty prototype:
Step 5) Iterate!
Conclusion
II. Torque Editors
3. GUI Editor Introduction
What is a GUI
Exploring the GUI Editor
GUI Editor Basics
Creating A New Dialog
Putting It All Together
Summary
4. Mission Editor Introduction
Torque's Basic Editors Overview
The Mission Editor Tools
World Editor (Manipulator)
World Editor (Inspector)
World Editor Creator (Creator)
Mission Area Editor (Area Editor)
Terrain Editor
Terrain Terraform Editor (Terraformer)
Terrain Texture Editor
Terrain Texture Painter (Terrain Painter)
III. Torque Script
5. TorqueScript
TorqueScript Concepts and Terminology
The TorqueScript Language
Interfacing with the Engine
Datablocks, Objects, and Namespaces Revisited
Summary
IV. Engine Overview
6. Engine Coding in C++
Introduction
Basic Control Flow
Platform layer
Console
Simulation
Files, Streams and the Resource Manager
Input Model
Graphics
The Graphical User Interface (GUI)
3D Rendering
Networking
How to Regenerate the Torque Engine Reference
Additional Info
V. Modeling Tools
7. Exporting Shapes from Maya: Maya2DTS
What is DTS?
Introduction to Maya2DTS
Getting Started
Maya2DTS Basics
Collision Objects
Materials and Textures
Sequence Nodes
Character Basics
8. Exporting Shapes from 3D Studio Max: Max2DTS
What is DTS?
Introduction to the Max2DTS Exporter
Simple Shape Tutorial
Exporting Characters
Animation Setup
Additional DTS Exporter Features Reference
Vehicles
Troubleshooting Common Problems
9. Exporting Interiors using QuArK
Why do we use .DIF?
Setting up Quark
Texture Add-ons
Starting a new map
Exporting a DIF file from QuArK
QuArK FAQ and Troubleshooting
Additional Quark Reference
VI. Appendix
A. Contributing code to the Torque Game Engine
Overview
Types of Patches
Contribution Copyright Agreement
General Guidelines
Building the Patch
Submitting the Patch
Patch Rejection
B. Setting Up the Torque Game Engine
Overview
Setting up Torque on Windows
Setting up the Torque SDK on Mac OSX
Setting up the Torque SDK on Linux
Using the Torque Demo Application
Summary
C. Torque Console Commands and Functions
Terms
Reserved Key Words
Script Operators
Commands and Functions
D. Torque Datablocks
SimDataBlock
GameBaseData
ShapeBaseData
PlayerData
ItemData
MissionMarkerData, CameraData, PathCameraData, and StaticShapeData
VehicleData
FlyingVehicleData
HoverVehicleData
WheeledVehicleData
TriggerData
ProjectileData
DebrisData
SplashData
LightningData
PrecipitationData
ExplosionData
ParticleEmitterNodeData and ParticleEmitterData
ParticleData
WheeledVehicleTire and WheeledVehicleSpring
Summary And Thanks
E. The Map2Dif Utility
Download Map2Dif
Usage
Description
Torque Directories
Tribes 2
Special Textures
Lighting
Detail Levels
Map Entities

List of Figures

2.1. Marble Blast
2.2. Marble Blast - Final Build
2.3. Marble Blast - Final Level Design
2.4. Marble Blast - Final Look
2.5. Marble Blast - First Prototype
2.6. Marble Blast - First Prototype's Menu
2.7. Marble Blast - First Prototype's Marble Physics
2.8. Marble Blast - Second Prototype's Checkpoints
2.9. Marble Blast - Midpoint Camera System
2.10. Marble Blast - Finalized Marble Physics

List of Tables

2.1. Rendering Comparison
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
4.10.
4.11.
4.12.
4.13.
4.14.
4.15.
4.16.
4.17.
4.18.
4.19.
4.20.
4.21.
4.22.
4.23.
4.24.
4.25.
4.26.
4.27.
4.28.
4.29.
4.30.
4.31.
4.32.
4.33.
4.34.
4.35.
4.36.
4.37.
4.38.
4.39.
4.40.
4.41.
4.42.
4.43.
4.44.
4.45.
4.46.
4.47.
4.48.
4.49.
4.50.
4.51.
4.52.
4.53.
4.54.
4.55.
4.56.
5.1. Engine-Console Interface Terminology
5.2. Engine Interface Problem-Solution Matrix
5.3.
5.4.
7.1.
7.2.
8.1. Default Player Animations
D.1. GameBaseData Member Fields
D.2. ShapeBaseData Member Fields
D.3. PlayerData Member Fields
D.4. ItemData Member Fields
D.5. StaticShape Data Fields
D.6. VehicleData Member Fields
D.7. FlyingVehicleData Member Fields
D.8. HoverVehicleData Member Fields
D.9. WheeledVehicleData Member Fields
D.10. TriggerData Member Fields
D.11. ProjectileData Member Fields
D.12. DebrisData Member Fields
D.13. SplashData Member Fields
D.14. LightningData Member Fields
D.15. PrecipitationData Member Fields
D.16. ExplosionData Member Fields
D.17. ParticleEmitterNodeData Member Fields
D.18. ParticleEmitterData Member Fields
D.19. ParticleData Member Fields
D.20. WheeledVehicleTire Member Fields
D.21. WheeledVehicleSpring Member Fields

List of Examples

D.1. Creating a SimDataBlock Datablock in TorqueScript
D.2. Creating a GameBaseData Datablock in TorqueScript