Torque 3D 1 - 2 Syllabus Example

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 10

Torque 3D 1.

2 Education: Comprehensive FPS Tutorial Syllabus Example

Class Names: (High School or College level classes)

Introduction to Game Development, Introduction to Programming, Programming 101, Basic 3D


Game Development, Game Lab 101, Introduction to Level Design, or FPS Game Workshop

Course Description:

This course covers all the basics of 3D level development in a first-person shooter (FPS) game,
using Torque 3D. The FPS game type is used because it showcases all of the features of a game
engine (thus providing complete examples), while allowing students to playtest their work right
away due to its small learning curve. The breadth of this course is extensive, but topics are
covered at an introductory level. Whether you are an artist, programmer, level builder, designer,
or a combination, this course is a primer for what is ahead in learning more about 3D game
development.

Course:

13 four-hour classes, 52 hours total class time

Requirements:

1 computer per student with Windows XP or higher, 2 MB RAM and Direct X 9c compatible video

Pre-requisites:

None

Class Schedule:

Class 1: Introduction to Game Development

Class 2: 3D Technology, Building a Game World

Class 3: Developing an FPS in a 3D World

Class 4: Adding and Customizing Players

Class 5: Midterm Test

Class 6: Scripting Part 1

Class 7: Scripting Part 2

Class 8: Scripting Part 3

Class 9: Adding and Customizing Weapons

Class 10: Keeping Players in Sync

Class 11: Multiplayer Experience

Class 12: Final Presentation

Class 13: Post Mortem, What Did We Learn? Final Test


Class Outlines:

Class 1: Introduction to Game Development


Reference Materials: Lesson 1: Setup and Overview

Slides: 9 through 15

Lecture:
Introduction to the course
o Class overview
o Class administration
o Syllabus review
o Teacher and student introductions
o What are the class expectations?
What will be taught in this class?
o Learning about how to create a 3D first-person shooter level
o Using Torque 3D 1.2 to step through level development
3D placement, movement, and view
Moving the camera around
Move objects around
Add objects or props to the environment
Adjust the artwork by using the material system
Basic networking description
Client-Server definition
How does Torque keep track of client data?
What does the server do to keep clients in sync?
Adjusting basic artificial intelligence of non-human players or NPCs (non-
player characters)
Basic game and programming terminology
Making your own fun game!
o Terminology: Terminology game developers use every day
o Game development tools processes for a first-person shooter
o Basic level development for a first-person shooter
o Basic art processes for a first-person shooter
o Basic scripting for a first-person shooter
o Primer for programming
o Design tips
How will students be graded?
o What is on the midterm?
o What is on the final?
Introduction to Torque 3D (demonstration)
o Walk through the Chinatown level
o Preview the World Editor
o Preview the optional script editor, Torsion
o Explain the basic concepts:
Objects in the world and what they are made of: textures, models, bounding
box, triggers, environment, animated, etc.
World lighting, skybox, collision meshes
How triggers work
Single and multi-player view of characters/players
Enemy AI

Lab:
Write about their favorite game and memorable moment in that game
Include what they think about how this relates to their current schooling and hobbies

Presentation: Present their lab work

Quiz: None

Homework: Read Lesson 1: Setup and Overview (optional) or review Syllabus and any other in
class materials

Class 2: 3D Technology, Building a Game World


Reference Materials: Lesson 2: World Building

Slides: 16 through 26

Lecture:
Show the demos to start class off with an exciting goalHow do they make games
anyway? Learn how it is done. All in one class!
What does a development team look like and what are the roles?
o Programmers: Engine, Tools, Scripting, Application, etc.
o Artist: Concept, Model, Texture, Environment, Character, Cut Scenes, etc.
o Designers: Story, Character, Dialog, Game, Monetization, Reward, Combat, etc.
o Managers: Producer, Art Director, Creative Director, Development Director, etc.
What is a 3D world?
o Moving player and camera around in the world
o Placing and moving objects in the world
o Finding objects in the world

Lab: Successfully run a character in both 1 st and 3rd person around Chinatown
Learn how to control both a world camera and a player camera
Successfully find items by using the search command

Presentation: Describe your game development goals and what type of job you want to pursue
after graduation

Quiz: Lesson 1

Homework: Read and review examples in Lesson 2: World Building

Class 3: Developing an FPS in a 3D World


Reference Materials: Lesson 2: World Building

Slides: 27 through 46
Lecture:
World building and importing graphics
Terminology
Duplicate, move, resize, and combine objects in a 3D scene
Understanding and using Datablocks
Changing Materials, modifying Materials, and creating a new Material
Equipping your character with a Weapon
Spawn Points

Lab: Learn how to move camera, place, manipulate and customize objects in the scene
Perform a series of simple tasks including: duplicating a dumpster, moving it, resizing it,
and putting it on the ground
Modify the material on a character and finally change weapons

Presentation: None

Quiz: Lesson 2

Homework: Read and review examples in Lesson 4: Adding and Customizing Players

Class 4: Adding and Customizing Players


Reference Material: Lesson 4: Adding and Customizing Players

Slides: 47 through 61

Lecture:
Adding character models
Swapping character models
Importing new characters and art into the game level
Modify materials and swap new textures onto new model
Add animations to new model
Give your new model a weapon

Lab:
Customize your character

Presentation:
Present your customized character to the class
Talk about what makes good game design and relate it to the level
How does this process affect your thoughts about your own career?

Quiz: Lesson 4

Homework: Study for the Midterm test, which covers Lesson 1, Lesson 2, and Lesson 4
Class 5: Midterm Test
Reference Materials: Lesson 3: Introduction to Scripting (for the second part of the lecture)

Slides: 62 through 63

Lecture (part 1):


Recap the first half of the course

Midterm: Give a test on Lessons 1, 2, and 4 (2 hours)

Lecture (part 2): Primer on Scripting


Talk about why the first steps in lesson 3 take you through the first few lines of script that
the game engine reads
o Because it helps students experience how the game engine receives instructions: in
what order, and under what rules. Understanding this provides a framework on
which to hang further learning
o Stepping is the most common way (and most effective way) to debug, so early
introduction dispels any mystery, and sets up good habits
Terminology and role of scripting, programming, and level design
Customizing gameplay via scripting
Scripting changes vs. changes to source code the former requires no recompiling, so its
faster and easier to test the results
Demo Torsion
Comments format, NameSpace and Stepping

Lab: If theres time, start walking through Lesson 3 so that students can ask questions in class

Presentation: None

Homework: Read and review examples in Lesson 3: Introduction to Scripting, reading up to step
16 in Exercise 2, Learn TorqueScript Basics

Class 6: Scripting Part 1


Reference Materials: Lesson 3: Introduction to Scripting, up to step 16 in Exercise 2, Learn
TorqueScript Basics

Slides: 64 through 70

Lecture:
Overview of Scripting vs Programming Languages
How does scripting fit into Creating a Game
Cover TorqueScript Basics
Introduction to Torsion
Datablocks
Core Features
General Scripts
Level files (.mis)
Lab: Run through the exercises from the homework

Presentation: None

Quiz: Scripting Part 1

Homework: Read and review examples in Lesson 3: Introduction to Scripting, reading from step
16 in Exercise 2, Learn TorqueScript Basics, to the end of Exercise 2

Class 7: Scripting Part 2


Reference Materials: Lesson 3: Introduction to Scripting, from step 16 in Exercise 2, Learn
TorqueScript Basics, to the end of Exercise 2

Slides: 71 through 95

Lecture:
Special Operators (@ and concatenate strings)
Mathematical Operators (<, <=, ++ and %)
Multiple Arguments
If Then Statements
Loops
Arrays
Switch Statements
Setting Properties on Objects like the Location property

Lab: Successfully complete examples on operators, arguments, and statements

Presentation: None

Quiz: Scripting Part 2

Homework: Read and review examples in Lesson 3: Introduction to Scripting, reading from
Exercise 3, Make Something Happen in the Game, to the end of the lesson

Class 8: Scripting Part 3


Reference Materials: Lesson 3: Introduction to Scripting, from Exercise 3, Make Something
Happen in the Game, to the end of the lesson

Slides: 96 through 101

Lecture:
Callback Functions
Recap Datablocks
Create an object in the game, and attach code to it via one of the callback functions
Change your code to be more robust and have more functionality
Debug without Torsion
Debug with Torsion

Lab: Complete the examples that use at trigger and a bubble emitter.
Follow the steps in exercise 3 to set up the trigger.
Follow the steps in exercise 4 to change the code and place a boulder in the trigger.
Follow the steps in exercise 6 to see how you can use Torsion to fool the game engine into
thinking there is more than one object in the trigger.

Presentation: None

Quiz: Scripting Part 3

Homework: Read and review examples in Lesson 5: Adding and Customizing Weapons

Class 9: Adding and Customizing Weapons


Reference Materials: Lesson 5: Adding and Customizing Weapons

Slides: 102 through 143

Lecture:
The Shape Editor, viewing the soldier and weapon model
Projectiles, player inventory, loaded and firing
Datablocks (sounds)
EnvironmentAmbientLight, mountPoint, RetractionPoint, Muzzlepoint, Ejectpoint,
MuzzleFlash, Eye and Biped Nodes
Third Person Weapons
Handgun
Ammunition, reloading
COLLADA and DAE file format
Hooking up a weapon
State Machine and weapon states

Lab: Work with team to finalize level modifications

Presentation: None

Quiz: Lesson 5

Homework: Read and review examples in Lesson 6: Keeping Multiple Players in Sync over the
Network

Class 10: Keeping Players in Sync


Reference Materials: Lesson 6: Keeping Multiple Players in Sync over the Network

Slides: 144 through 210

Lecture:
Tracking a message from client to server
Cover Client/Server architecture, Instance, keeping players in sync, messageClient,
ServerMessage
Client side functions vs server side functions
GameConnect to start a multiplayer game
Cover ClientGroup and getCount for tracker a list of server objects
Cover myClientCommands.cs and myServerCommands.cs
Cover function sendTeleportSignal, TeleportReady, %client
Try teleporting a player and tracking the data
SendTeleportSignal()

Lab: Break up into teams and start developing a custom Chinatown level with 1 combat scene

Presentation: None

Quiz: Lesson 6

Homework: Read and review examples in Lesson 7: The Multiplayer Experience

Class 11: Multiplayer Experience


Reference Materials: Lesson 7: The Multiplayer Experience
(Note: This course will not cover Lesson 8 cleaning up, packaging, and publishing to the web.)

Slides: 211 through 256

Lecture:
Cover the server instance and client instance, Client/Server architecture, different types of
FPS players
Client/Server, onConnect(), ServerMessage, Host, Datablocks, Properties, callback function
Customize level by iterative testing and modifications
Create a fun level with ammo points, teleporters, and new spawn points

Lab: Work with team to finalize level modifications, develop presentation, and practice
presentation

Presentation: None

Quiz: Lesson 7

Homework: Finalize and practice team presentation

Class 12: Final Presentation


Slides: 257 through 258

Lecture: Cover preparation for the final exam. What is on the test

Presentation: Each team has 30 minutes to present their level, give a post mortem, and share
their learning with the class
Modifications of the Chinatown level: Each team presents their modification to the scripts,
gameplay and artwork
Critique of each project by peers and may include industry judge
Presentation done in PowerPoint the goals of the project, what was presented at midterms,
and highlights of their final game

Class 13: Post Mortem, what did we learn? And Final Test
Slides: 259 through 261

Lecture: Prepare PowerPoint to highlight what everybody did, what went right, what went wrong,
and what lessons were learned for next time
A good way to look at this is a list of 5 things that went well and 5 things that did not go
well

Final Test: Test will cover tutorial materials and aspects of the level creation process

Copyright Information:
Torque 3D 1.2 Educational Materials are provided free of charge for educational purposes. All or part of materials are
freely distributable and use for any individual, school, or workshop for learning and educational purposes.
Torque 3D is a trademark and GarageGames is a registered trademark of GarageGames, LLC. All other trademarks or
registered trademarks belong to their respective owners.

You might also like