1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

OpenGL May Take On A Greater Role Within Qt

Qt

Published on 18 December 2012 10:29 AM EST
Written by Michael Larabel in Qt
4 Comments

With Qt 5.0 finally seeing the light of day in the very near feature, plans are beginning to be laid for Qt 5.1. One of the improvements being talked about now for future Qt 5.x releases is support for more OpenGL enablers in the tool-kit.

Sean Harmer of Germany's KDAB has started a discussion about adding a lot more OpenGL enablers for Qt 5.1 and beyond. The discussion started this morning on the Qt development list.

Among the items that Harmer is looking to add to Qt for greater OpenGL support are classes that contain member functions for all OpenGL functions of a given version/profile, a QOpenGLVertexArrayObject class to wrap around OpenGL Vertex Array Objects for potential use in QtQuick 2, OpenGL occlusion and timing query objects, OpenGL transform feedback support, and support for Geometry / Tessellation Control / Tessellation Evaluation / Compute Shader support in QOpenGLShaderProgram. Two other items being looked at are integrating support for the GL_ARB_debug_output extension into the Qt debug message system and more enabler classes for OpenGL textures / samplers / higher-level abstractions in Qt3D.

In terms of his first action item of classes that contain member functions for all OpenGL functions of a given version/profile, he's already done some code and has it published for code review while the other Qt-OpenGL items are just being talked about right now on the list.
OpenGL: Add set of version and context specific classes and extensions

This commit adds the output of utils/glgen and some simple modifications to QOpenGLContext to allow easy access to classes containing functions specific to a given OpenGL context and version. This allows compile-time detection of mis-use of OpenGL features. For example, trying to use glBegin(GL_TRIANGLES) with an OpenGL 3.2 Core Profile context will be detected by the compiler rather than at runtime.

This commit also adds classes for every OpenGL and OpenGL ES extension listed in the Khronos registry (as of OpenGL 4.2 and ES 2).

These capabilities make it much easier to add functionality to Qt and applications that relies upon core features of OpenGL from specific versions of that is provided via an extension e.g. geometry shaders.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  2. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  3. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
  4. Sumo's Omni Gets Reloaded
Latest Linux Articles
  1. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
  2. Preview: OS X 10.10 Yosemite vs. Ubuntu Linux GPU Performance
  3. Radeon Graphics Yield Mixed Results With Linux 3.17 Kernel
  4. AMD's RadeonSI Driver Sped Up A Lot This Summer
Latest Linux News
  1. New Virtual Monitor Software Might End Up On Linux
  2. Company of Heroes 2 Might Be Coming Out For Linux
  3. NIR Still Being Discussed For Mesa, LLVM Gets Brought Up Again
  4. Plasma Active Is Mostly Ported To KDE Frameworks 5
  5. Google Chrome 37 Brings Many Security Fixes
  6. MenuetOS Updated With SMP Threads & Onscreen Keyboard
  7. Mesa Has A New Release Manager
  8. Enlightenment E19 Lands Its New Wayland Compositor Code
  9. Nouveau Turns Into A Mess In Latest Linux 3.17 + Mesa 10.3-dev Tests
  10. New GCC 5.0 Changes, Command-Line Options That Landed So Far
Latest Forum Discussions
  1. Updated and Optimized Ubuntu Free Graphics Drivers
  2. [DB] BIOS - ACPI - data collecting
  3. It's Now Possible To Play Netflix Natively On Linux Without Wine Plug-Ins
  4. AMD Releases UVD Video Decode Support For R600 GPUs
  5. Announcing radeontop, a tool for viewing the GPU usage
  6. Users defect to Linux as OpenBSD removes Lynx from base system
  7. Chinese People Try To Patent Wine On ARM
  8. American Citizens running AMOK for food stamps