Download
slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
CSE 380 – Computer Game Programming Introduction PowerPoint Presentation
Download Presentation
CSE 380 – Computer Game Programming Introduction

CSE 380 – Computer Game Programming Introduction

84 Vues Download Presentation
Télécharger la présentation

CSE 380 – Computer Game Programming Introduction

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. CSE 380 – Computer Game ProgrammingIntroduction ITS 102 – 3D Modeling for GamesIntroduction

  2. Who am I? Richard McKenna E-mail:richard@cs.stonybrook.edu Phone: 631-632-9564 Office: CS Room 1436 Office hours: MF 12pm – 1pm TuTh 1pm - 2pm and by appointment http://www.cs.stonybrook.edu/~richard

  3. Course Homepages • http://www.cs.stonybrook.edu/~richard/its102/ • syllabus • schedule (lecture slides, hw, etc …) • etc. • http://blackboard.stonybrook.edu • grades

  4. Course Description • A seminar for students in the College of Information and Technology Studies. Seminar topics vary annually by section and cover a variety of subjects under the scope of information, technology, and engineering studies.

  5. Seminar Description This course will examine the tools and techniques used for creating animated, textured, 3D models via modeling software. Students in this course will do hands-on exercises using modeling tools and will create their own animated characters using Blender3D.

  6. Course Goals • To impart a strong sense of academic community • To acquaint first-year students with a full-time member of the faculty engaged in ITS-related studies • To provide students with an opportunity to engage directly with an academic topic in a small setting • To allow for experimentation in curriculum design

  7. Seminar Goals At the end of the course you should have the following knowledge and skills: • Understand how to construct the geometry for an interesting 3D model using a modeling tool • Understand how to specify material properties for a 3D model • Understand how to make custom textures and to use them to custom texture map your model • Understand how to rig and animate your model • Understand how your animated 3D model may be used by a game application

  8. Course Topics • 3D Concepts • Using Blender3D • Meshes • Materials • Textures • 3D Animation • The Blender Game Engine

  9. Grading • All First-Year 102 seminars are graded on an A - C/U basis. Students will be evaluated on the basis of attendance, participation, and work

  10. Course Requirements • Class Attendance/Participation • Insect Project • Game-Related Event Participation • Nerdfest: Friday, 2/14 @ 6pm in SAC Ballroom • Gamers Guild Playtest Night: Thursday, 5/1 @ 7pm in CS Lobby • Game Programming Competition: Friday, 5/16 @ Wang Center • ITS Requirement

  11. Why study games? • To get game development jobs • Because it is fun • Because they are complex • Because they push the envelope of computing technology • Bottom line: • games are natural learning devices • making games is a great way to learn other things

  12. To really join the industry

  13. Modern Games are Complex • Can be very complex • Technologies used: • 2D & 3D Graphics • Sound & Music • Networking • Artificial Intelligence • Physics Simulation • Parallel Processing • Custom scripting languages • Etc. • All of it must be implemented efficiently

  14. Pong by Atari, released to public 1975

  15. Battlefield 3 by Electronic Arts/DICE

  16. Blizzard’s World of Warcraft • Over 10,000,000 subscribers • thousands play simultaneously • players in countries around the world • Requires: • Rich graphical environment • Complex networking • Semi-nude dancing • Needs an army to make it. And: • maintain • update • count profits

  17. The Development Team/Army Programmers Designers Producers Artists Audio Engineers

  18. Why Blender3D? • It can make great content • It's widely used • It's free

  19. Download & Install • http://www.blender.org/download/get-blender • Latest version 2.65a

  20. Blender 3D: Noob to Pro • http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro

  21. What can blender do? • Create 3D content • Create 3D worlds • Produce realistic, beautiful, fantastic 2D projected renderings of 3D content/worlds

  22. First, some formal definitions • What's a 3D model? • an abstract version of an object • renderable • data (vertices, edges, textures, etc.) • What's modeling? • Process of making 3D models

  23. Model Data • Vertices • Edges • Faces • Surface Normals

  24. Steps in the Modeling Process • Object modeling • Shading • Lighting • Rigging • Posing

  25. 3D World Construction & Rendering • Based on Geometry • Imagine a model of this room • Everything needs a position in 3D space • think 3D coordinates (x, y, z) • Where's the origin (0,0,0) of our room?

  26. Blender3D Axes • X, Y, Z • Cartesian Coordinates • Are negative coordinates ok? • Right-handed System, Huh?

  27. Axes of Rotation • We'll want to rotate stuff • How do we denote a rotation? • We need 2 things: • Axis of rotation • Angle around axis • Right-grip rule

  28. Coordinate Transformations • Changes an object's coordinate values in some way • Moving an object (translation) • Rotating an object (rotation) • Enlarging or shrinking an object (scaling)

  29. Translation, Rotation, & Scaling

  30. Multiple Transformations • They can be combined on an object • Order of processing matters

  31. Projections • Our 3D worlds are projected onto 2D screens • Orthographic vs. Perspective projection Orthographic Perspective

  32. Orthographic views can be useful. Why?

  33. Perspective Projection uses Foreshortening • What's that? • nearby objects rendered larger than faraway objects • gives the illusion of depth and distance

  34. What's a vanishing point? • Imagine looking down a set of train tracks • They appear to converge at a point on the horizon • This is the vanishing point

  35. The Projection Plane • Depends on camera position and orientation

  36. Blender Coordinates • Global Coordinate System • each scene has its own • fixed origin & orientation • virtual camera may be moved about • Local Coordinate System • each object has its own