Skip to the content | Change text size
PDF unit guide

FIT2049 Games programming with C++ - Semester 2, 2011

This unit will further develop object-oriented programming skills with the C++ language, and place them into the Games Programming context. Fundamental games programming design principles will be covered, including formal game structures and the game program loop. A number of specific games programming techniques with C++ will be also covered. These include the use of DirectX, games physics, and advanced 3D rendering, expressing these concepts through game creation using C++ and Microsoft Windows DirectX. This provides a strong grounding for further study in this area, especially related to games engine development and artificial intelligence.

Mode of Delivery

Caulfield (Day)

Contact Hours

2 hrs lectures/wk, 2 hrs laboratories/wk

Workload

For on campus students, the weekly workload commitments are:
  • four hours of lectures / laboratory (requiring advance preparation), and
  • eight hours of self directed study - this will include reading and computer based activities.

Unit Relationships

Prohibitions

MMS2804

Prerequisites

FIT2071

Chief Examiner

Campus Lecturer

Caulfield

Kieran Love

Tutors

Caulfield

Kieran Love

Contact hours: To be posted on the unit website

Elliott Wilson

Contact hours: To be posted on the unit website

Academic Overview

Learning Objectives

At the completion of this unit students will have:

  • an understanding of game entities and formal games program structure;s
  • an understanding of the notion of the programming game loop and how to set it up;
  • a working knowledge of basic DirectX, including textures, displaying sprites, animation, text, and rendering;
  • a working knowledge of physics in the games programming context, including basic movement and interaction;
  • a working knowledge of Direct 3D rendering, including geometry, models, cameras, textures and lighting;
  • an understanding of scene management in games;
  • the ability to express these concepts in a working Microsoft Windows game prototype.

Graduate Attributes

Monash prepares its graduates to be:
  1. responsible and effective global citizens who:
    1. engage in an internationalised world
    2. exhibit cross-cultural competence
    3. demonstrate ethical values
  2. critical and creative scholars who:
    1. produce innovative solutions to problems
    2. apply research skills to a range of challenges
    3. communicate perceptively and effectively

Assessment Summary

Examination (3 hours): 50%; In-semester assessment: 50%

Assessment Task Value Due Date
DirectX Fundamentals 15% 26 August 2011
Major Game Development Project 35% 21 October 2011
Examination 1 50% To be advised

Teaching Approach

Lecture and tutorials or problem classes
This teaching and learning approach provides facilitated learning, practical exploration and peer learning. Focus will be placed on practical implementation and case study in the latter stages of the semester.

Feedback

Our feedback to You

Types of feedback you can expect to receive in this unit are:
  • Informal feedback on progress in labs/tutes
  • Graded assignments with comments
  • Solutions to tutes, labs and assignments

Your feedback to Us

Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through SETU, Student Evaluation of Teacher and Unit. The University's student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.

For more information on Monash's educational strategy, and on student evaluations, see:
http://www.monash.edu.au/about/monash-directions/directions.html
http://www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html

Previous Student Evaluations of this unit

If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp

Recommended Resources

This unit will require the use of a personal computer and a suitable IDE for Windows C++ and DirectX development. Visual Studio for Windows will be used in the laboratory environment.

Copies of the Windows operating system and Visual Studio 2010 may be obtained free of charge from http://msdnaa.monash.edu.au/fit.
The latest DirectX SDK may be obtained from the Microsoft website.

Unit Schedule

Week Activities Assessment
0   No formal assessment is undertaken in week 0
1 Introduction to the unit, an introduction to win32 programming, setting up window, com, messages, message proc  
2 Maths for games development  
3 Rendering basics, triangles, lines, textures, x.models loading, lighting, light types, shading, direct 3d surfaces, back buffer, time step  
4 The rendering pipeline, 2d sprites and text, camera setup, direct input  
5 Templates/Generic Programming, Design Paradigms useful in gaming (Entity management, Scene management, State Machines, Message System, Singletons etc) Assignment One due Friday 26 August 2011
6 Basic Collision Detection, entity movement and interaction, area triggers  
7 XAudio2  
8 Particle Systems  
9 Bringing it all together / case study  
10 Bringing it all together / case study  
11 Lua Scipting Basics: how to and why it can be useful  
12 Revision Assignment Two due Friday 21 October 2011
  SWOT VAC No formal assessment is undertaken in SWOT VAC
  Examination period LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/
academic/education/assessment/
assessment-in-coursework-policy.html

*Unit Schedule details will be maintained and communicated to you via your MUSO (Blackboard or Moodle) learning system.

Assessment Requirements

Assessment Policy

To pass a unit which includes an examination as part of the assessment a student must obtain:

  • 40% or more in the unit's examination, and
  • 40% or more in the unit's total non-examination assessment, and
  • an overall unit mark of 50% or more.

If a student does not achieve 40% or more in the unit examination or the unit non-examination total assessment, and the total mark for the unit is greater than 50% then a mark of no greater than 49-N will be recorded for the unit

Assessment Tasks

Participation

  • Assessment task 1
    Title:
    DirectX Fundamentals
    Description:
    This task will require students to demonstrate their understanding of the fundamentals of DirectX
    Weighting:
    15%
    Criteria for assessment:

    Explicit assessment criteria will be provided in the assignment brief, however students will be assessed on the following broad criteria:

    • Meeting functional requirements as described in the assignment description
    • Demonstrating a solid understanding of C++ concepts, including good practice
    • Demonstrating a solid understanding of Game Development concepts, including good practice
    • Following the unit Programming Style Guide
    • Creating solutions that are as efficient and extensible as possible
    Due date:
    26 August 2011
  • Assessment task 2
    Title:
    Major Game Development Project
    Description:
    Using C++ and DirectX, and working as a member of a team, students will develop a graphical game
    Weighting:
    35%
    Criteria for assessment:

    Explicit assessment criteria will be provided in the assignment brief, however students will be assessed on the following broad criteria:

    • Meeting functional requirements as described in the assignment description
    • Demonstrating a solid understanding of C++ concepts, including good practice
    • Demonstrating a solid understanding of Game Development concepts, including good practice
    • Following the unit Programming Style Guide
    • Creating solutions that are as efficient and extensible as possible
    Due date:
    21 October 2011

Examinations

  • Examination 1
    Weighting:
    50%
    Length:
    3 hours
    Type (open/closed book):
    Closed book
    Electronic devices allowed in the exam:
    None

Assignment submission

It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz).

Extensions and penalties

Returning assignments

Resubmission of assignments

Students may not resubmit assignments after the due date has passed.

Other Information

Policies

Student services

The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at www.monash.edu.au/students The Monash University Library provides a range of services and resources that enable you to save time and be more effective in your learning and research. Go to http://www.lib.monash.edu.au or the library tab in my.monash portal for more information. Students who have a disability or medical condition are welcome to contact the Disability Liaison Unit to discuss academic support services. Disability Liaison Officers (DLOs) visit all Victorian campuses on a regular basis