Leverage all the graphics power that your hardware offers.
In this course you will learn how to:
- write OpenGL applications from the ground up
- develop with today’s modern shader-based OpenGL implementations
- implement a wide variety of modern rendering techniques that can be applied to your own projects
- debug and profile OpenGL applications
- maximize the processing power of both the GPU and CPU
In class, our trainer will walk you through all necessary topics via a mixture of presentations, examples, and hands-on exercises.
- Basic Concepts: OpenGL pipeline, OpenGL contexts, GLSL, vertex shaders, fragment shaders, vertex buffer objects
- Transformations: matrices, coordinate systems, view and projection transformations
- Lighting: diffuse, Phong, directional
- Texturing: texture sampling, multiple textures, normal mapping, bump mapping, environment mapping, ambient occlusion, procedural texturing
- Optimizing and Debugging: culling, occlusion queries, timer queries, debug extensions, debugging tools (apitrace, etc.)
- Advanced Topics: tessellation, geometry shaders, compute shaders, shadow mapping, stencil shadowing
- Qt Integration (optional): Qt Quick / QML, QWidgets, User Interaction
You can read the full Table of Contents here.
The course uses the Qt 5 framework to simplify the usual tasks of window and OpenGL context management but it is not specific to Qt. No prior knowledge of Qt is required.
The course can be tailored to cover modern OpenGL 4.x and/or OpenGL ES 2 or 3 for embedded platforms (Embedded Linux using EGL; Android; iOS).
- Target audience:
- Developers who want to get started with OpenGL
- The course is suitable for developers with no prior OpenGL knowledge and those who have used legacy fixed-function OpenGL
- 5-day training course
- Sign up:
- Check out our course schedule and register For on-site training, please contact us at email@example.com or fill out our training survey to let us help you tailor your on-site training
Why Learn OpenGL?
OpenGL is a key technology in many fields including data visualization, digital content creation, CAD/CAM/CAE, games, and simulations. OpenGL has been around for many years and in recent times has evolved to shed much of its legacy baggage and better expose the underlying hardware.
Modern OpenGL allows you to take full advantage of the enormous parallel processing power of today’s GPUs. Maximizing performance of OpenGL rendering requires us to understand how GPUs work and how to efficiently feed them with data.
OpenGL plays a key role in the graphics stack of Qt 5 and in particular for the Qt Quick 2 and Qt3D technologies. For attendees with an interest in the Qt Quick 2 and/or Qt3D technologies, KDAB can offer additional modules showing how to integrate modern OpenGL with Qt at a deeper level including custom Qt Quick 2 UI components, overlays/underlays, Widget-based applications and porting Qt with OpenGL accelerated drawing to your custom platform.