cs-378: game technology
DESCRIPTION
CS-378: Game Technology. Lecture #1: Introduction, Overview Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica Hodgins for lecture notes 2005-01-1.1. Today. Introduction and Course Overview. Class Participation. - PowerPoint PPT PresentationTRANSCRIPT
CS-378: Game TechnologyLecture #1: Introduction, Overview
Prof. Okan ArikanUniversity of Texas, Austin
Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica Hodgins for lecture notes
2005-01-1.1
22
Today
Introduction and Course Overview
33
Reasons to participate More fun for me and you
You learn more
I won’t give stupid little annoying quizzes in class
How to participate Ask questions
Make comments
Stupid questions/comments That’s okay
Class Participation
People
Instructor:Okan Arikan (okan@cs)
Office Hours Th 1:00pm-2:00pm
Location ACES 2.110
TA:Paul Arthur Navrátil (pnav@cs)
Office Hours Fri: 1:00pm-2:00pm
Location: TBA
Course Outline
Real-time graphicsLighting and shading, modeling, data management
AnimationPhysics, character animation
AI: Game term for behaviorCreating characters, path planning, generating motion
Networking: Playing togetherProtocols for gaming, architectures, managing bandwidth
SoundCreating / playing, physics of sound
Web Pagehttp://www.cs.utexas.edu/~okan/courses/
cs378_games/web/
The Interactive Entertainment Industry
Hardware makers produce gaming hardware
eg Sony, Nintendo, Microsoft, …
Game Developers create gameseg Electronic Arts (EA), Epic, ID, thousands of others
Publishers publish gameseg Sony, Nintendo, EA, …
The model is similar to books or movies
One group creates it, another distributes it, and another supplies the underlying infrastructure
Flavors of Game Developer
Game Designers decide on the format and behavior of the game
Artists design models, textures, animations and otherwise are responsible for the look of the game
Level Designers create the spaces in which the game takes place
Audio Designers are responsible for all the sounds used in the game
Programmers write code, to put it all together, and tools, to make everyone else’s job simpler
And others: Production, management, marketing, quality assurance
Disclaimer
Game development requires more than graphics, AI and networking
Design, Art, Software engineering, Production, Audio, …
This course won’t formally cover any of that stuff
Nor will it give you much experience with middleware, console programming, mobile gaming, contract negotiation, …
Books
Official textbook: “Core Techniques & Algorithms in Game Programming”
Other useful books:Mathematics for 3D Game Programming & Computer Graphics
AI Game Development – Synthetic Creatures with Learning and Reactive Behaviors
The OpenGL Programming Guide
“Game Programming Gems” and the sequels and offshoots have many useful things
3D Game Engine Design
Online Resources
Google – Use it
www.gamasutra.com
www.gamedev.net
www.flipcode.net/
1212
Academic Honesty
If you use an external resource cite it clearly!
Don’t do things that would be considered dishonest... if in doubt ask.
Cheating earns you:An ‘F’ in the class and
Getting reported to the University
No exceptions.
What I assume you know
C/C++No exceptions, no hand holding
3D graphics concepts and programming
“Standard” lighting and shading
Modeling techniques
Vectors, matrices, geometric reasoning
OpenGL will be the graphics API discussed in lectures
I assume you are competent with at least one user interface toolkit eg: FLTK, MFC, Glut, Gtk, …
Make sure it’s supported on Windows
Grading
Midterm and final20% + 30% of the grade, might change
A Homework10 %
Project40 % of the grade, might change
Multiple stages staggered through the semester
Work in groups of 3-4
Project
The project is to create a game
This is a competitionBest project will win
A good grade
A prize !!!
Respect and admiration of your peers
Working in Groups
Working in groups is not easy, and it is an acquired skill
I want you to form groups by next Thursday
There will be some group evaluation exercises through the semester
Warning !!!
Timeline
Something due roughly every 2 weeks throughout the semester
First stage: Teams & Design
Tools
The only requirement is that your project run on Windows
We strongly prefer OpenGLThe lectures will assume OpenGL, and we know nothing about DirectX
Choose any UI toolkit: Natural options are FLTK, MFC, Glut, …
We are most familiar with FLTK, but it has some (non-debilitating) issues for real-time interactive programming
More Tools
Models and art will be an issueBuilding models by hand might be the most efficient option
You are free to use any available tools, provided you acknowledge it
Open source modelers
Blender , Wings 3D etc.
Don’t be scared to write small tools if you think it will make your project easier
You are not judged on art
First Stage
Due Tue Jan 31st
First stage, 1st part: Design a game, put it on paper
Group members
Outline of game objectives
Sketches of potential looks
Task distribution
You can even borrow something from someone else