Title: CSE 491 Fundamentals of 3D Game Development
1CSE 491 Fundamentals of 3D Game Development
- Charles B. Owen (Instructor)
- 1138 E. B., 353-6488
- Xiaojun (Wesley) Wang (TA and grading)
- Classroom 1234 Engineering Building
2Introduction
Introduction to the class Structure, rules, etc.
Getting Started Coordinate Systems Graphics XNA
and C
3Course Objectives
- Develop the skills necessary to participate as a
computer scientist in a video game development
team! - Programming methods, algorithms, data structures,
mathematics, etc.
4Course Structure
- See the syllabus
- TT Lectures
- Attendance is expected
5Course Materials
- Textbooks
- 3D Game Engine Design A Practical Approach to
Real-Time Computer Graphics, Second Edition,
2006, David H. Eberly, Morgan Kaufmann, ISBN
978-0122290633 - XNA 3.0 Game Programming Recipes A
Problem-Solution Approach, 2009, Riemer
Grootjans, Apress, ISBN 978-1430218555 .
- WWW
- http//www.cse.msu.edu/cse473
- And on angel (angel.msu.edu)
6Facebook group
- Available from the class home page
7Course Structure
- Exams
- One written exam (midterm)
- Four on-line Angel exams
- Assignments
- Step assignments
- 3 Programming assignments
- Toe-tippers
Notice Bring a red pen to class
8Policies
- Reading
- Read the chapters
- Attendance
- Will take care of itself
9In case you are interested...
- Projects will be major element of the course
- Well use Visual Studio and Microsoft XNA
- There will be two group projects and group
worksheets - This course should be fun and an adventure!
10About XNA
- We will utilize XNA in this course.
- XNA is an ideal environment for teaching the
fundamentals of game development - C is easy to work in and can serve for both
coding and scripting
- The Real World
- The vast majority of game development is in C
and scripting languages - But, the concepts are the same, were just
simplifying for educational purposes
11Reading and Step Assignment
- I suggest
- Read chapter 1 in text.
- Start reading chapter 2
Due next Thursday (get going)
- Step 1
- Introduction to Visual Studio/XNA
- Importing content
- Displaying
- Transformations
12How is the different from CSE 472?
- 472 Highlights Modeling
- Well do little or no modeling
- Its assumed artists will do that for us
- Rendering Details
- Well only be interested in real-time gaming
- Different Topics
- Shaders and Shading Languages
- Animation
- Collision Detection
- Game Logic
13Game Development Team
What do these guys do?
Programmers
Artists
Designers
Game
Performers
Directors
14Game Development Components
Game Scripts
Game Coding
Structure Definitions
Assets
Content Processing
Runtime Content
Game Engine
Graphic Objects Audio, Video, Images, Textures
Abstraction
Operating System
Graphics API
15What Well be Working On
Flattened to one level
Game Scripts
Game Coding
Structure Definitions
Assets
Content Processing
Runtime Content
Game Engine
Graphic Objects Audio, Video, Images, Textures
Abstraction
Operating System
Graphics API
163D coordinate systems
- Right-Hand Coordinate System
- OpenGL and XNA use this!
- Left-Hand Coordinate System
- Direct3D uses this
Y
Y
Z
X
X
Z
Right-Hand Coordinate System
Left-Hand Coordinate System
17Vectors and Coordinates in 3D
Y
(10, 10, 0)
- 3 Numbers! Tuples
- Can represent a location in space
- Often called a point, position, or coordinate
X
Y
Z
(2, 3, 1)
- Vector
- Can also represent a direction
- XNA calls any three numbers a vector
X
Z