Download lecture-01

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Introduction to Computer Games
and Graphical System
Lecture #1:
 Introduction, Overview

Xu.Zhu
 SIT, Shanghai, China
Email: [email protected]


Today

Introduction and Course Overview
2
Class Participation


Reasons to participate

More fun for me and you

You learn more

Pass the quizzes in class
How to participate

Ask questions

Make comments
3
Course Outline






1 Brief introduction to games
Give a brief introduction to the definition of game , main
components , game categories , basic process on developing a
game , some game's demo.
2 Java environment configuration and review the basic
programming method
Give a reason on why java . Introduce jdk of SUN and review
basic programming method , OO analysis and OO design , quick
view on coding tips and let knows how an applet works.
3 Basic graphic function on Java
How to paint words and graphics in java with jdk.



4 How to build up an animation
Conception of animation and list some public tools for
animation. How to control animation in java .
Course Outline


5 Interaction and sound
Conception of interaction and how to handle the mouse and keyboard
event. Creating / playing, physics of sound. Sound type supported by java.



6 Game design
How to control character animation in java. Show the conception of
collision?? and how to implementation with some little demo.




7 Game AI and conception of 2.5d
Creating characters, path planning, generating motion.
Instructation to 2.5d game with some demo.




8 2.5d game design
Difference between 2d and 2.5d and key point of 2.5d.
Key elements of 2.5d games and the implementation of 2.5d.
Course Outline


9 Networking: Playing together
Protocols for gaming, architectures, how to connect 2 pc in
java.





10 Conception of 3d game
Brief introduction to the 3d game conception and tell the
difference between 2.5d and 3d games. 3d game software system.
Game Play Layer, Engine Layer, System Layer.
11 Java opengl engine
List common java opengl engine. Analysis difference between
engines. Show how to use this engine build java 3d games.
“Standard” lighting and shading, Modeling techniques, Vectors,
matrices, geometric reasoning, transformations, shading, texture
and other Maps.
Course Outline


12 3d model design
Brief introduce to 3dsMax/Maya/Softimage





13 Create simple 3d game
Show how to combine engine, model to create
a simple 3d game.
14 3d game design and review the whole course
Continue create 3d game. At the last of the
class , give a fully review on the whole course.
The Interactive Entertainment
Industry

Hardware makers produce gaming
hardware


Game Developers create games


eg Electronic Arts (EA), Epic, ID, thousands of others
Publishers publish games


eg Sony, Nintendo, Microsoft, …
eg 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: “”

Other useful books:






The OpenGL Programming Guide
Mathematics for 3D Game Programming & Computer Graphics
AI Game Development – Synthetic Creatures with Learning and
Reactive Behaviors
Core Techniques & Algorithms in Game Programming
“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/
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.
16
What I assume you know


Java J2se
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 final
A Homework
Project
Project


The project is to create a game
This is a competition

Best 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 OpenGL


The 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 issue



Building 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