2020•Unpublished venueRequires access

Developing a Computer Graphics Course with a Game Development Engine

Dimitrij Hmeljak, Holly Zhang

Open publisher page 2 citations

Abstract

This paper reports on an intervention in introductory Computer Graphics courses, where practical coursework is transitioned from standard OpenGL Graphics APIs to the Unity Game Development Engine. Game Development Engines (GDEs) provide powerful programming tools and computing components. Software development in GDEs is facilitated by full-fledged IDEs. Complex scene modeling and image rendering are managed through a rich catalogue of rendering assets. Graphics APIs are evolving towards a lower level of hardware abstraction, reduced overhead, and multithreading capabilities. Such changes in APIs benefit software developers who build graphics engines; how much they benefit Computer Graphics education is yet to be determined. New graphics APIs represent a shift in graphics programming practices, nearly as big as programmable GPUs and shader-based APIs over a decade ago. As then, Computer Graphics instructors have to decide: either use outdated models, or again change how Computer Graphics is taught. This paper describes an educational approach that acknowledges the increasing divide between the ease of use and development speed of GDEs, and the complexity and vastness of new graphics APIs. We show the use of a GDE as software development framework, to support programming assignments covering core Computer Graphics concepts. Relying on a GDE, such graphics assignments don't have to shy away from shader-based graphics programming, while non-graphics low-level tasks are managed by the engine itself. With our approach, we hope to contribute to the discussion about evolving best practices in teaching Computer Graphics.

About this research paper

What this paper is about

This paper reports on an intervention in introductory Computer Graphics courses, where practical coursework is transitioned from standard OpenGL Graphics APIs to the Unity Game Development Engine. Game Development Engines (GDEs) provide powerful programming tools and computing components. Software development in GDEs is facilitated by full-fledged IDEs. Complex scene modeling and image rendering are managed through a rich catalogue of rendering assets. Graphics APIs are evolving towards a lower level of hardware abstraction, reduced overhead, and multithreading capabilities. Such changes in APIs benefit software developers who build graphics engines; how much they benefit Computer Graphics education is yet to be determined. New graphics APIs represent a shift in graphics programming practices, nearly as big as programmable GPUs and shader-based APIs over a decade ago. As then, Computer Graphics instructors have to decide: either use outdated models, or again change how Computer Graphics is taught. This paper describes an educational approach that acknowledges the increasing divide between the ease of use and development speed of GDEs, and the complexity and vastness of new graphics APIs. We show the use of a GDE as software development framework, to support programming assignments covering core Computer Graphics concepts. Relying on a GDE, such graphics assignments don't have to shy away from shader-based graphics programming, while non-graphics low-level tasks are managed by the engine itself. With our approach, we hope to contribute to the discussion about evolving best practices in teaching Computer Graphics.

Why it matters

OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

This paper reports on an intervention in introductory Computer Graphics courses, where practical coursework is transitioned from standard OpenGL Graphics APIs to the Unity Game Development Engine. Game Development Engines (GDEs) provide powerful programming tools and computing components. Software development in GDEs is facilitated by full-fledged IDEs. Complex scene modeling and image rendering are managed through a rich catalogue of rendering assets. Graphics APIs are evolving towards a lower level of hardware abstraction, reduced overhead, and multithreading capabilities. Such changes in APIs benefit software developers who build graphics engines; how much they benefit Computer Graphics education is yet to be determined. New graphics APIs represent a shift in graphics programming practices, nearly as big as programmable GPUs and shader-based APIs over a decade ago. As then, Computer Graphics instructors have to decide: either use outdated models, or again change how Computer Graphics is taught. This paper describes an educational approach that acknowledges the increasing divide between the ease of use and development speed of GDEs, and the complexity and vastness of new graphics APIs. We show the use of a GDE as software development framework, to support programming assignments covering core Computer Graphics concepts. Relying on a GDE, such graphics assignments don't have to shy away from shader-based graphics programming, while non-graphics low-level tasks are managed by the engine itself. With our approach, we hope to contribute to the discussion about evolving best practices in teaching Computer Graphics.

Key concepts: Computer science, Shader, Software rendering, Rendering (computer graphics), Graphics pipeline, Graphics software, Real-time computer graphics, Graphics

Related papers

Back to paper searchBrowse research topicsOriginal source
Developing a Computer Graphics Course with a Game Development Engine — Research Paper | ScholarLens