Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Dublin Institute of Technology Pre-Requisite Modules code(s) Co-Requisite Modules code(s) ECTS Credits None None 10 Module Code Module Title SPEC4105 Games Programming Module author: Bryan Duggan and Hugh Mc Atamney Module Description: The aim of this course is to introduce the student to the fundamentals of Games Programming. The objective of the course is to develop basic games programming skills such as rendering, representations for scenes, collision detection, networked multi-player technology, level design, modelling and so on. It is intended that the course would feature a strong practical element. Module aims: The aim of this module is to provide students with the necessary knowledge and experience to develop 3d games. Learning Outcomes: Upon successful completion of the subject the student will be able to: Discuss the scope of modern computer games, the current technical developments and their impact on the games programming paradigm. Develop simple 3d games using current API’s and toolkits. Apply elements of game design to various game types. Develop games using commonly understood gaming AI techniques. Learning and Teaching Methods: Lectures Experimental work in computer laboratories Self-directed learning Module content: Context: History of computer gaming, game types, gaming platforms, console, PC, handheld and mobile, gaming hardware 3d graphics cards, memory, resolution, bus types, features, texturing, z-buffering, antiailiasing, filtering, bump mapping, lighting, transforms. Prerequisites: Vectors in 3d space, matrices, basic transformations, planes, rays Rendering basics: The rendering pipeline, model representation, the scene graph, clipping, primitives, colour representation, lighting, texturing, Mipmaps, blending and transparency, stenciling, meshes, camera implementation Rendering Virtual Worlds: Basic terrain rendering, particle systems. Collision Detection: Broad Phase/Narrow Phase Algorithms, Bounding Volume Hierarchies, Broad Phase, Collision Detection with AABBs, Broad Phase Collision Detection with OBBs, Broad Phase Collision Detection with Local or Object Spatial Partitioning, Narrow Phase Collision Detection, Single-phase Approaches. Multi-player Game Technology: Definitions, Implementation of Multi-player Games, The Origin and Nature of Problems in Multi-Player Games, Reducing the Information in Messages, Multi-player Implementation Using Client-Server. Content creation and management: Game concept design, level design, applied game theory, FPS, real time strategy, Turn based strategy, Driving/racing, RPG, MMORPG, Hybrid, modelling, 3d positional audio. Introduction to scripting languages and toolkits: Frameworks, physics engines, game scripting languages, Mod development. AI for gaming: Pathfinding & steering behaviours, the A* algorithm, obstacle avoidance, team and formation movement, finate state machines, techniques for artificial life. Module Assessment Students will be assessment though a combination of assignments (40%) and examination (60%) Essential Reading: Frank D. Luna Introduction to 3D Game Programming with DirectX 9.0, ISBN: 155622913-5 Kevin Oxland , Gameplay and design, ISBN: 0321204670 Supplemental Reading: Andrew Phelps, A Gentle Introduction to Game Programming ISBN: 0130081930 Julian Gold, Object-Oriented Game Development ISBN: 032117660X Web references, journals and other: http://gamedev.net http://www.gamedevelopers.ie/ Further Details: Breakdown of hours per week: Lecture: 2 Experimental work in computer laboratories: 2 Course to be delivered over two semesters. Date of Academic Council Approval: June 2005