2014/08/25
1
Peter Wentworth
Classes are held in Coral Seminar Room / Lab.
Much of it will be hands‐on.
Bring headphones each day.
Wednesday afternoon pracs in Hamilton West.
Course web site
http://www.cs.ru.ac.za/courses/Csc303/GameDev
Please note our home page now redirects – so go directly to this link.
Provisional week‐by‐week topics
Weeks 1 & 2: XNA basics and 2D Sprite game development, Platformer game
September VAC week
Week 3: 3D Geometry and game basics Week 4: 3D Models and 3D game techniques Week 5:Skeletal Animation. Custom shaders
2014 Good news is that you have the vac to work on this stuff!
Test Date: Wednesday 1 October
The Textbook
Download our paid‐for copy in the labs from the course site
http://www.cs.ru.ac.za/courses/
Csc303/GameDev/textbook This is a restricted area, so you'll need to be logged in on the ICT domain.
It is on loan to you until the end of the semester. It remains the property of the Department.
Agendas and Themes
The approach is "as Computer Scientists"
We're more interested in underlying principles than in the short‐term outcomes.
Build your general programming skills
Knowledge should transfer and be useful in your other courses
We emphasize
sensible design and programming practices
software architecture
case studies.
I am primarily interested in "serious gaming", e.g. using gaming to teach logic and/or programming skills. Expect some biased case studies and not much shooting.
Commitment
It is a third course in your major year.
It will probably need 15 hours per week.
2014/08/25
2
The book is for XNA 3.
But our software is XNA 4.
XNA 4 is nicer, a bit cleaner in places, and there are just a few things you'll need to do differently.
So if you type in some code from the book and it doesn't work as expected, ask whether there was a change to the mechanism in XNA 4. There are a few places, but not so many as to warrant buying another book.
XNA Game Loop
http://msdn.microsoft.com/en‐us/library/bb203873.aspx
n
We’re only going to use Fixed‐Step game loops as discussed under Game Loop Timing, here:
Discussion/review points:
Event‐driven and multi‐threading paradigm vs the XNA Game Loop.
The role of the gameTime value.
What a frame is, the framerate, etc. How this differs from the animation rate.
How might you measure the actual framerate?
How could you see how fast it would be possible to go?
Why do we clear and redraw the whole screen on each frame?
How is this different from games you might write on a PC using older technology like GDI, and what are
technologies like AJAX trying to achieve?
Get Started Now! Before tomorrow...
Download your (on‐loan) copy of the textbook, and read and/or implement things up to the end of chapter 2.
Play a couple of levels of light‐Bot. One site is http://www.kongregate.com/games/Coolio_Niato/light‐bot