CS-378: Game Technology

20
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

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 Presentation

Transcript of CS-378: Game Technology

Page 1: CS-378: Game Technology

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

Page 2: CS-378: Game Technology

22

Today

Introduction and Course Overview

Page 3: CS-378: Game Technology

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

Page 4: CS-378: Game Technology

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

Page 5: CS-378: Game Technology

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

Page 6: CS-378: Game Technology

Web Pagehttp://www.cs.utexas.edu/~okan/courses/

cs378_games/web/

Page 7: CS-378: Game Technology

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

Page 8: CS-378: Game Technology

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

Page 9: CS-378: Game Technology

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, …

Page 10: CS-378: Game Technology

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

Page 11: CS-378: Game Technology

Online Resources

Google – Use it

www.gamasutra.com

www.gamedev.net

www.flipcode.net/

Page 12: CS-378: Game Technology

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.

Page 13: CS-378: Game Technology

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

Page 14: CS-378: Game Technology

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

Page 15: CS-378: Game Technology

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

Page 16: CS-378: Game Technology

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 !!!

Page 17: CS-378: Game Technology

Timeline

Something due roughly every 2 weeks throughout the semester

First stage: Teams & Design

Page 18: CS-378: Game Technology

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

Page 19: CS-378: Game Technology

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

Page 20: CS-378: Game Technology

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