ITCS 4235/5235 Game Engine Construction – Spring 2019
Instructor: prof. zachary wartell
overview
Introduction to principles and techniques behind modern computer and console game engines. Graphics Rendering Pipeline (transformations, lighting ,shading); 2D/3D Texture Mapping; Image Based Rendering; Spatial Data Structures and Acceleration Algorithms; Level of Detail; Collision Detection, Culling and Intersection Methods; Vertex/Pixel Shaders; Pipeline Optimization; Rendering Hardware. (on demand).
Official Prerequisites:
- ITCS 4235: ITCS 3120 or permission of department.
- ITCS 5235: ITCS 4120 or ITCS 6120 or permission of the instructor. (ITCS 3120 is acceptable too in this case please contact Dr. Wartell, zwartell@uncc.edu, to request registration authorization).
Unofficial Prerequisites: This course assumes students have a strong background in basic computer graphics and have strong programming and debugging skills. In group projects, each student must make an equal contribution to the programming components.
textbook
Required: [Moller18] Real-Time Rendering, 4rd edition. Tomas Akenine-Möller, Eric Haines, Naty Hoffman. A.K. Peters Ltd., ISBN-13: 978-1138627000, 2018, 1045 pages.
- Electronic: (Kindle Edition) ~$40
- Website: http://www.realtimerendering.com/
Recommended:
- WebGL:
OR (see API)
- OpenGL:
- “Red Book” 7th or 8th Edition:
- “Orange Book” 3rd Edition:
programming
API: Students will develop their projects in either OpenGL or WebGL, whichever of these that each student is familiar with.
Programming Language: For WebGL, use of JavaScript is encouraged, but not required. For OpenGL, C++ is encouraged, but not required.
- For the individual projects (see below) skeleton code will be made available only in one programming language of the instructor’s choice. Students using a different language are expected have enough programming experience to convert any skeleton given into whichever programming language (and verison of OpenGL) they want to develop in.
Projects:
- one or two smaller intro individual projects
- a large semester group project (group size limited to 1-3). This will have with multiple milestones and deadlines.
Exams:
- there will be a mid-term and final-exam (non-comprehensive)