Skip to main content

Introduction to Cross Platform Graphics Programming Abstraction With Vulkan and OpenGL ES (5cr)

Code: C-10065-TT00GN82-3001

General information


Enrollment
30.09.2025 - 31.12.2026
Registration for the implementation has begun.
Timing
30.09.2025 - 31.12.2026
Implementation is running.
Number of ECTS credits allocated
5 cr
Institution
Metropolia University of Applied Sciences, Karaportti 2
Teaching languages
english
Seats
0 - 500

Evaluation scale

Hyväksytty/Hylätty

Content scheduling

Online.

Objective

Learn about some of the core graphics programming concepts independent of any specific API Learn how cross platform abstraction could be achieved in C++ application.

Content

Graphics programming with different graphics APIs works quite differently from one another. Some graphics APIs are cross platform but some aren’t and an application targeting multiple platforms might need to be able to support multiple APIs. For a beginner it might get a little confusing to piece together a coherent picture how multiple graphics APIs could be used in cross platform application development. During the course we’ll develop a simple application with C++, for desktop and web environments that draws a simple triangle onto the screen, which can be considered a “Hello World” application of graphics programming. On desktop we’ll use Vulkan. Vulkan is a very low level API and it requires quite a lot from the developer even for relatively simple usage. Despite this, prior knowledge of Vulkan API is not required for this course. For the web implementation we’ll compile the code into WebAssembly using Emscripten SDK which also converts OpenGL ES code into WebGL. Aim of the course is to give an introduction, how graphics API specific code could be abstracted away to be able to use the same rendering logic on multiple platforms. The emphasis of the course is not on the previously mentioned APIs but on common graphics programming concepts across the APIs. You don’t necessarily need to have prior knowledge of Vulkan or OpenGL ES and the code concerning these will be explained.

Location and time

Online in Metropolia's Moodle environment.

Materials

Online.

Teaching methods

Course is 100% online (self-study) course which can be done in own pace. The course is divided into three chapters that consists of multiple lessons. Between the lessons there are quizzes that must be completed in order to proceed to the next lessons. The course is completed by going through each lesson and completing all quizzes.

Employer connections

N/A

Exam schedules

Can be find via course environment.

International connections

N/A

Completion alternatives

N/A

Student workload

Depends on Students starting level.

Qualifications

Moderate C++ skills Some basic knowledge of graphics programming / APIs

Go back to top of page