1CSE 125CSE 125Software System Design Software System Design and Implementationand ImplementationSpring 2005Spring 2005Lecture 1: IntroductionLecture 1: IntroductionGeoffrey M. VoelkerGeoffrey M. VoelkerMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 2TodayTodayz Introductionz Overview and Administriviaz Form groups2March 31, 2005 CSE 125 – Lecture 1 – Introduction 3CSE 125: Spring 2005CSE 125: Spring 2005z Instructor Geoff Voelker ([email protected]) AP&M 5131 Hours: M 3-4pm, W 4-5pm» Email, can also drop byz TA Karen Hom ([email protected]) Allen Ding ([email protected])z Special Thanks Sam Stokes (MSR) Donated books & softwareKampus KombatMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 4HistoryHistoryz This course is modeled after a UW course Created by John Zahorjan (UW prof) and Dennis Cannady(MS program manager (VisualBasic)) Dennis was the original inspiration for the style of the course,John chose games I was the TA for the first two classes (’97, ’98)z UCSD Have taught a local version at UCSD since 2001 Projects are on the web (for those hosted here at UCSD) Some promos on web site, too:» UCSD TV segment, FoxNews, Short promo3March 31, 2005 CSE 125 – Lecture 1 – Introduction 5Software System Design Software System Design and Implementationand Implementationz Why isn’t this course titled, “Game Design and Implementation”? There are many other factors to game design that we will not touch on (e.g., AI, playability, etc.) » More on this laterz By the end of the course, you’ll hopefully realize that what you learned in doing the project will apply to any large software project that: Is distributed, has performance constraints, has real-time constraints, has actual users other than the developers, etc. The game is motivation :-)z Another perspective: This course is an opportunity to apply everything you’ve learned in the majorMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 6Class FormatClass Formatz Lectures First week or so» Intro + tips and techniquesz Group meetings Once a week meetings (30 mins) with us in lab Groups and individuals will submit progress reports We will discuss progress, problems, plans, changes We can fit schedules» Try to use class periods» Try to be contiguous across groups» We’ll organize by emailz Guest lectures Steve Rotenberg next Tue4March 31, 2005 CSE 125 – Lecture 1 – Introduction 7Class SketchClass Sketchz Specification, schedule, milestones: 1.5 weeks (1-2)z Preliminary development: 2 weeks (3-4)z Project development: 4 weeks (4-8)z Spec freeze, alpha testing: 1 week (9)z Beta testing: 1 week (10) Ship at end of beta testing Demo at seminarz Review document: 1 week (11) Due during Finals weekz Guest lectures sprinkled inMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 8Your “Final”Your “Final”z We will have a seminar, open to the public, where each team will demo their game Four players drawn from the group and the crowd Makes you look like awesome hackers But it’s also “for real” Æ everyone will be watching!z Friday afternoon of last week of class Afternoon of Friday, June 3z Written project report due at end of finals week5March 31, 2005 CSE 125 – Lecture 1 – Introduction 9Facilities and PlatformsFacilities and Platformsz Class lab: AP&M 3313 (status) P4 1.9 GHz w/ 512 MB memory GeForce3 Ti500 64 MB video (showing age, but ok) Windows XP, DevStudio.NET, WinCVS DirectX 9.0c (February 2005 Update)» Jan Kautz, precomputed radiance transfer (PRTs)z You should be able to work from home, too WinXP from MS preferable» Win2K should be sufficient» NT4.0 won’t work (DirectX 9.0 does not run on NT4.0) DevStudio.NET from MS WinCVS from http://www.wincvs.org/ Note: MS software, books for personal use, NOT for resaleMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 10BooksBooksz From Microsoft MS books – use them as reference» MS said that they are sending the books originally requested No great DirectX book that I’ve found “Game Programming Gems” (1—5)» Copies in the labz Recommended “3D Game Engine Design” by David Eberly “Real-Time Rendering” by Thoman Moller and Eric Haines6March 31, 2005 CSE 125 – Lecture 1 – Introduction 11Source of InspirationSource of InspirationMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 12ArtArtz Two approaches this quarter Few ICAM students who will focus on content Creative approaches to obtaining artz Obtaining art Troll the Web There is artwork for many games out there Usually in some kind of “standard” format» Produced from modeling software Can usually load directly into game using DirectX functions If not, look at the code in the game editors to help figure out how to manipulate Karen and Allen can provide some tips, tooz Find an artistic friend7March 31, 2005 CSE 125 – Lecture 1 – Introduction 13Intellectual PropertyIntellectual Propertyz Speaking of trolling the Web…z Many things are posted as “use freely”z But if it isn’t Ask before using…just takes an email, and people are usually flattered to have their stuff usedz Also, note that you own the copyright on the code that you write – not UCSD Because you pay for your education Not the same for grad students, staff, or facultyz You can do whatever you want with you projectMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 14Group Web PagesGroup Web Pagesz Each group will maintain web pages for their project Schedule, milestones, comments, pictures, blatherings, etc.z Think of your group Web page as a living design document for your projectz More to come Once we get the groups established, we’ll get the pages up8March 31, 2005 CSE 125 – Lecture 1 – Introduction 15Collaboration Collaboration and Competitionand Competitionz Everyone is in this togetherz I want you to help each other out, even among groups Especially solving bugs Share code tips» E.g., this is how I created a frame buffer with these properties… But not classes, modules, or files» Each group has to developz How? Email (there will be a class list) In the labMarch 31, 2005 CSE 125 – Lecture 1 – Introduction 16GradingGradingz A non-goal of the course is to worry about grades Everyone can get an A in the class… …as long as you contributez We will be meeting with each
View Full Document