Personal Profile

OpenGL

Raspbian Jessie Updated with a new Desktop Environment called PIXEL

Raspbian PIXEL desktop environment

Raspbian PIXEL desktop environment

The Raspberry Pi team has released a new version of Raspbian Jessie that comes with a new desktop environment called PIXEL. PIXEL stands for Pi Improved Xwindows Environment, Lightweight. PIXEL follows OS X or Windows 10 desktop with a flat-design approach.

Raspbian PIXEL desktop environment - flat design icons

Raspbian PIXEL desktop environment – flat design icons

Raspbian PIXEL desktop environment - GeeXLab OpenGL 2.1

Raspbian PIXEL desktop environment – GeeXLab OpenGL 2.1


Jessie has an OpenGL 2.1 driver and the version is still 2.1 Mesa 11.1.0 like on previous Jessie versions.

This new version of Raspbian packs some nice wallpapers to customize a bit the desktop:

Raspbian PIXEL desktop environment - flat design icons

Raspbian PIXEL desktop environment – flat design icons


The web browser of the previous versions of Raspbian Jessie has been replaced by Chromium. This is very cool because, I can now watch youtube videos on the RPi, thing that I was not able to enjoy with the old browser. The Chromium browser comes with 2 extensions: the h264ify (which forces YouTube to serve videos in a format accelerated by the RPi hardware) and an ad blocker: uBlock Origin.

Raspbian PIXEL desktop environment - Chromium browser

Raspbian PIXEL desktop environment – Chromium browser


This update of Raspbian brings a modern look to the desktop but I felt a kind of sluggishness (I tested Jessie/PIXEL on a Raspberry Pi 3): the system is not as fast as the previous version of Jessie and is often hung for several seconds. I hope a next update will improve my Jessie PIXEL experience.



Update (2016.10.28): it looks like the microSD (a Transcend Ultimate 16GB) card was the root of all sluggishnesses and hangs. I use this card since one year with the Raspberry Pi and the card has probably reached its limit in matter of read/write operations (I compile GeeXLab directly on the microSD card which can be an explanation).

I replaced the Transcend 16GB by a new Samsung 32GB EVO Plus (read: 80MB/s, write 20MB/s) and the new Raspbian with PIXEL works like a charm!

GPU Caps Viewer 1.34.0 Released

A new version of GPU Caps Viewer (OpenGL, Vulkan, OpenCL and CUDA utility) is available.

GPU Caps Viewer 1.34.0 Released

GPU Caps Viewer 1.34.0 Released

1 – Overview

GPU Caps Viewer 1.34.0 adds the support of the latest GeForce GTX 1080 Ti, Radeon RX 580, RX 570 and RX 560 (based on Polaris 10/11 GPUs) as well as Radeon Pro WX 7100, WX 5100 and WX 4100.

New Vulkan and OpenGL demos (based on GeeXLab engine) have been added in the 3D demos panel:


GPU Caps Viewer 1.34 + new GeeXLab demos
All GeeXLab demos can now be launched using the command line:

GpuCapsViewer.exe /demo_win_width=1920 /demo_win_height=1080
/demo_fullscreen /run_gxl_demo=vk_shadertoy_geomechanical
/benchmark_log_results /benchmark_duration=10000 /demo_msaa=0
/vk_gpu_index=0

Command line parameters can be found in the _run_geexlab_benchmark.bat file available in GPU Caps Viewer folder. The benchmark results are saved in a CSV file (_gxl_benchmark_results.csv).


GPU Caps Viewer 1.34 + new GeeXLab demos

Another change brought to GPU Caps concerns the UAC (User Account Control) execution level that has been reset to the default value (as invoker). The previous UAC level (administrator) didn’t work well with launching demos via the command line.

GPU Caps Viewer 1.33 + GeForce GTX 1060

GPU Caps Viewer 1.33 + GeForce GTX 1060

All Vulkan code has been recompiled with latest Vulkan headers (v1.0.45).


>> Update: 2017.04.29 <<

GPU Caps Viewer 1.34.3.1 is a maintenance release and comes with a new VK-Z version. VS2015 generates some strange patterns in the 32-bit version of VK-Z and no matter the way I compile VK-Z, the 32-bit version of VK-Z is still flagged as infected by some antivirus. The 64-bit version of VK-Z is clean so I just replaced the 32-bit version by the 64-bit one. GPU Caps Viewer has been updated to execute VK-Z x64 on Windows 64-bit only…

>> Update: 2017.04.26 <<

GPU Caps Viewer 1.34.3.0 is a maintenance release and improves the detection of recent AMD Radeon GPUs (RX 580, RX 570, RX 480 and RX 470). GPU Shark has been updated to version 0.9.11.4. VK-Z has been updated to version 0.6.0.5 32-bit (it has been recompiled with other compilation options in order to avoid false positive detection with antivirus. I really don’t understand this pesky problem!).

>> Update: 2017.04.16 <<

GPU Caps Viewer 1.34.2.1 is available with VK-Z 0.6.0.3. The previous 32-bit version of VK-Z was detected as infected by some antivirus scanners. Now VK-Z 32-bit is clean for Nod32, Avira, Avast, Kaspersky, AVG, Norton, and MacAfee.

>> Update: 2017.04.14 <<

GPU Caps Viewer 1.34.2.0 adds the support of NVIDIA TITAN Xp. GPU Shark and VK-Z have been updated to their latest versions.

>> Update: 2017.04.01 <<

GPU Caps Viewer 1.34.1.0 improves the detection of AMD Radeon GPUs in some systems that include Intel iGPU + AMD Radeon GPU. A new GeeXLab/OpenGL demo has been added (Alien Corridor).

GPU Caps Viewer 1.34.1

GPU Caps Viewer 1.34.1


2 – Dowloads

2.1 – Portable version (zip archive – no installation required):

2.2 – Win32 installer:

For any feedback or bug report, a thread on Geeks3D forums is available HERE.

 

3 – What is GPU Caps Viewer?

GPU Caps Viewer is a graphics card information utility focused on the OpenGL, Vulkan, OpenCL and CUDA API level support of the main (primary) graphics card. For Vulkan, OpenCL and CUDA, GPU Caps Viewer details the API support of each capable device available in the system. GPU Caps Viewer offers also a simple GPU monitoring facility (clock speed, temperature, GPU usage, fan speed) for NVIDIA GeForce and AMD Radeon based graphics cards. GPU data can be submitted to an online GPU database.


GPU Caps Viewer panels

4 – Changelog

Version 1.34.3.1 – 2017.04.29
! replaced VK-Z 0.6.0.5 32-bit by VK-Z 0.6.0.3 64-bit.
VK-Z 64-bit does not produce false positive with some
antivirus. VK-Z 64-bit is only executed on Windows 64-bit.

Version 1.34.3.0 – 2017.04.20
! improved detection of Radeon RX 580, RX 570,
RX 480 and RX 470.
! updated: GPU Shark 0.9.11.4
! updated: VK-Z 0.6.0.5
! updated: ZoomGPU 1.20.4 (GPU monitoring library).

Version 1.34.2.1 – 2017.04.16
! updated: VK-Z 0.6.0.3

Version 1.34.2.0 – 2017.04.14
+ added support of NVIDIA TITAN Xp.
! updated Radeon RX 560 shader cores.
! updated: VK-Z 0.6.0
! updated with GeeXLab SDK libs.
! updated: GPU Shark 0.9.11.3
! updated: ZoomGPU 1.20.3 (GPU monitoring library).

Version 1.34.1.0 – 2017.04.01
! improves the detection of AMD Radeon GPUs in some systems
that include Intel iGPU + AMD Radeon GPU.
+ added new OpenGL demo (GeeXLab): Alien Corridor (based on this demo).
Command line demo codename: gl21_shadertoy_mp_alien_corridor
! updated: GPU Shark 0.9.11.2
! updated: ZoomGPU 1.20.2 (GPU monitoring library).

Version 1.34.0.0 – 2017.03.25
+ added support of the GeForce GTX 1080 Ti.
+ added support of AMD Radeon RX 580, RX 570 and RX 560.
+ added support of AMD Radeon Pro WX 7100, WX 5100, WX4100,
WX 4150 and WX 4130.
+ added initial support of AMD Polaris 12 and Vega 10 based videocards.
+ added new parameters for launching GeeXLab demos via the command line.
+ added new Vulkan and OpenGL demos (GeeXLab): Vulkan geomechanical (based on this demo), OpenGL rainforest (based on this demo), OpenGL radialblur (based on this demo), OpenGL rhodium (based on this demo), OpenGL cell shading, OpenGL geometry instancing, OpenGL gs mesh exploder.
! set UAC (User Account Control) execution level to as invoker.
! recompiled with latest Vulkan API headers (v1.0.45).
! updated with latest GeeXLab SDK libs.
! updated: GPU Shark 0.9.11.1
! updated: ZoomGPU 1.20.1 (GPU monitoring library).

Impressive Pixel Shader of a Snail (GLSL)

Impressive Pixel Shader of a Snail (GLSL)

Impressive Pixel Shader of a Snail (GLSL)

The wizard behind Shadertoy has struk once again with this beautiful demo showing an animated snail. This demo has been ported to GeeXLab by our news hunter Stefan.

The demo is available in the code samples pack in the host_api/GLSL_ShaderToy/ folder (snail_gl2.xml). The demo is also available in the X-MAS 15 pack HERE. To test the demo, just run GeeXLab (you can download the latest version from THIS PAGE) and load (or drag and drop) the demo (snail_gl2.xml) into GeeXLab (GeeXLab 0.9.2.0 is recommended).

This demo has been ported to GeeXLab by our news hunter Stefan

This demo has been ported to GeeXLab by our news hunter Stefan

I quickly benchmarked few GPUs with this demo. The default settings are 800×480 pixels in windowed mode. The anti-aliasing can be set directly in the pixel shader and is equal to 1 by default (line 30 in the snail_gl2.xml file). A value of 4 improves the visual quality but destroys the framerate ? (try for yourself). I benchmarked with AA=1.

Testbed: Core i5 6600K, ASUS Z170 Pro Gaming, 8GB DDR4 Corsair Vengeance, Win10 64-bit, all hardware with stock clock speeds.

The demo runs fine without artifacts on an Intel HD Graphics 530!

Radeon R9 290X (Crimson 15.12) 89 FPS (avg)
GeForce GTX 960 (R361.43) 45 FPS (avg)
HD Graphics 530 (v4326) 10 FPS (avg)

A time lapse of the creation process of this demo with Shadertoy is available here:


Direct3D 12 vs OpenGL: A quick Test

Direct3D 12 vs OpenGL: A quick Test

Direct3D 12 vs OpenGL: A quick Test

GeeXLab, the successor of GLSL Hacker, comes with the support of Direct3D 12. It’s not a full support but most of the basic things are available: command lists (CL), pipeline state objects (PSO), constant buffers (CB) and HLSL shaders.

An introduction to Direct3D programming with GeeXLab is available HERE.

Since GeeXLab is now available with an OpenGL and a Direct3D 12 renderers, here is a quick benchmark that shows the difference of performance between Direct3D 12 and OpenGL 3.2 in a very simple scene: a phong-textured mesh (a torus to be original) is rendered with various polygon density. This test uses one command list, one PSO, one HLSL program, one mesh and one texture.


GeeXLab - Direct3D 12 vs OpenGL

You can download both GeeXLab (version 0.9.3.0+ is recommended) and the test from THIS PAGE. The test is available in the host_api/Direct3D12_vs_OpenGL/ folder of the code sample pack (files: 09-lighting-mesh-d3d12.xml and 09-lighting-mesh-gl32.xml).

You can change the number of polygons by editing the source code of both files: lines 76-84 (09-lighting-mesh-d3d12.xml) and 47-54 (09-lighting-mesh-gl32.xml).

The results of this test should be taken with caution because it’s my first implementation of a Direct3D 12 plugin for GeeXLab and graphics drivers are also constantly updated. I will update this post as soon as I find bugs or bring some optimizations in GeeXLab that can change the results.

Testbed:

  • CPU: Intel Core i5 6600K @3.5GHz
  • Motherboard: ASUS Z170 Pro Gaming
  • RAM: 8GB DDR4 Corsair Vengeance
  • OS: Windows 10 64-bit
  • Drivers:
    • Radeon R9 290X: Catalyst 15.10 beta
    • GeForce GTX 970: R358.50
    • HD Graphics 530: v4279

Clock speeds: stock values for the CPU, memory and graphics cards.

The FPS in the following tables are the average framerates.

Direct3D 12 results

Triangles AMD Radeon R9 290X
(avg FPS / GPU load)
NVIDIA GeForce GTX 970
(avg FPS / GPU load)
Intel HD Graphics 530
(avg FPS)
800 9100 / 40% 5500 / 25% 1360
5’000 8200 / 45% 5300 / 35% 1220
20’000 5800 / 60% 5100 / 45% 1100
80’000 2400 / 80% 2600 / 70% 850
320’000 720 / 90% 700 / 85% 500
500’000 480 / 98% 480 / 90% 400
2’000’000 130 / 100% 130 / 97% 160

OpenGL 3.2 results

Triangles AMD Radeon R9 290X
(avg FPS / GPU load)
NVIDIA GeForce GTX 970
(avg FPS / GPU load)
Intel HD Graphics 530
(avg FPS)
800 4600 / 25% 3700 / 35% 1220
5’000 4300 / 25% 3600 / 35% 1160
20’000 4200 / 25% 3600 / 36% 1060
80’000 4100 / 30% 3600 / 58% 840
320’000 4100 / 46% 2800 / 87% 500
500’000 3200 / 70% 2200 / 90% 420
2’000’000 1000 / 100% 930 / 95% 180


Direct3D 12 vs OpenGL - benchmark results

According to this test, Direct3D 12 is faster than OpenGL when the number of triangles is low. AMD Radeon cards are particularly fast! Around 80K polygons, Direct3D offers the same kind of performance than OpenGL. Above 80K polygons, OpenGL is faster. The case of Intel GPU is interesting because it has more or less the same performances in D3D12 and GL. What’s more for a mesh of 2-million polygons, The Intel GPU is faster than a GTX 970 or a R9 290X in D3D12! It looks like for many polygons, there is a CPU-bottleneck somewhere in the D3D12 rendering pipeline that does not reflect the real power of GPUs.

The results are similar with latest drivers (R361.43 / Crimson 15.12).

I also did a simple draw stress test: a quad is rendered 100, 400 and 4000 times. No hardware instancing is used, each quad is rendered with its own draw call. I only tested on my dev system, with a GeForce GTX 960 + R361.43.


GeeXLab - Direct3D 12 vs OpenGL

The test is available in the host_api/Direct3D12_vs_OpenGL/ folder of the code sample pack (files: 08-drawstress-d3d12.xml and 08-drawstress-opengl.xml).

In this test, a quad is made up of 4 vertices and 2 triangles.

To change the number of quads, edit the xml file and look for the lines:

quads = {x=10, y=10, size=10.0} -- 100 quads
--quads = {x=40, y=10, size=10.0} -- 400 quads
--quads = {x=100, y=40, size=10.0} -- 4000 quads

Direct3D 12

Num quads GeForce GTX 960 (R361.43)
(avg FPS / GPU load)
100 2900 / 20%
400 1070 / 26%
4000 180 / 20%

OpenGL 3.2

Num quads GeForce GTX 960 (R361.43)
(avg FPS / GPU load)
100 1840 / 58%
400 730 / 30%
4000 97 / 20%

GeeXLab is maybe not the best tool for this kind of test (a loop with 4000 iterations) because of the overhead of the virtual machine (Lua and host API functions calls). A C/C++ based test should be better. But this GeeXLab test shows that we can draw more objects with Direct3D 12 than with OpenGL. This is particularly visible with 4000 quads: D3D12 is twice faster: 180FPS for D3D12 against 97 FPS for OpenGL.

NVIDIA R364.47 WHQL Graphics Drivers with Vulkan Support

NVIDIA R364.47 WHQL Graphics Drivers with Vulkan Support-NVIDIA GeForce GTX logo

NVIDIA R364.47 WHQL Graphics Drivers with Vulkan Support-NVIDIA GeForce GTX logo

NVIDIA has published a new set of Windows certified graphics drivers that bring various optimizations for for Tom Clancy’s The Division, Hitman, Need for Speed, Ashes of the Singularity, and Rise of the Tomb Raider.

R364.47 is also the first WHQL driver with Vulkan support.

More information about R364.47 can be found HERE.

UPDATE (2016.03.08)

R364.47 WHQL cause crashes on some systems with multiple monitors and have been replaced by R364.51 BETA. More information available HERE.

R364.51 Desktop Downloads

R364.51 Notebook Downloads

Geeks3D GPU Caps Viewer-NVIDIA R364.47 + GeForce GTX 960 + GPU Caps Viewer

Geeks3D GPU Caps Viewer-NVIDIA R364.47 + GeForce GTX 960 + GPU Caps Viewer

R364.47 is an OpenGL 4.5, OpenCL 1.2 and Vulkan 1.0.4 driver and exposes 381 OpenGL extensions including two new ones:

  • GL_NV_draw_vulkan_image
  • WGL_NV_bridged_display

The complete list of all OpenGL extensions exposed for a GeForce GTX 960 on Win10 64-bit

- OpenGL vendor: NVIDIA Corporation
- OpenGL renderer: GeForce GTX 960/PCIe/SSE2
- OpenGL Version: 4.5.0 NVIDIA 364.47
- GLSL (OpenGL Shading Language) Version: 4.50 NVIDIA
  • GL_AMD_multi_draw_indirect
  • GL_AMD_seamless_cubemap_per_texture
  • GL_AMD_vertex_shader_viewport_index
  • GL_AMD_vertex_shader_layer
  • GL_ARB_arrays_of_arrays (OpenGL 4.3)
  • GL_ARB_base_instance (OpenGL 4.2)
  • GL_ARB_bindless_texture (OpenGL 4.4)
  • GL_ARB_blend_func_extended (OpenGL 3.3)
  • GL_ARB_buffer_storage (OpenGL 4.4)
  • GL_ARB_clear_buffer_object (OpenGL 4.3)
  • GL_ARB_clear_texture (OpenGL 4.4)
  • GL_ARB_clip_control (OpenGL 4.5)
  • GL_ARB_color_buffer_float (OpenGL 3.0)
  • GL_ARB_compatibility (OpenGL 3.2)
  • GL_ARB_compressed_texture_pixel_storage (OpenGL 4.2)
  • GL_ARB_conservative_depth (OpenGL 4.2)
  • GL_ARB_compute_shader (OpenGL 4.3)
  • GL_ARB_compute_variable_group_size (OpenGL 4.3)
  • GL_ARB_conditional_render_inverted (OpenGL 4.5)
  • GL_ARB_copy_buffer (OpenGL 3.1)
  • GL_ARB_copy_image (OpenGL 4.3)
  • GL_ARB_cull_distance (OpenGL 4.5)
  • GL_ARB_debug_output (OpenGL 3.0)
  • GL_ARB_depth_buffer_float (OpenGL 3.0)
  • GL_ARB_depth_clamp (OpenGL 3.2)
  • GL_ARB_depth_texture (OpenGL 1.4)
  • GL_ARB_derivative_control (OpenGL 4.5)
  • GL_ARB_direct_state_access (OpenGL 4.5)
  • GL_ARB_draw_buffers (OpenGL 2.0)
  • GL_ARB_draw_buffers_blend (OpenGL 4.0)
  • GL_ARB_draw_indirect (OpenGL 4.0)
  • GL_ARB_draw_elements_base_vertex (OpenGL 3.2)
  • GL_ARB_draw_instanced (OpenGL 3.1)
  • GL_ARB_enhanced_layouts (OpenGL 4.4)
  • GL_ARB_ES2_compatibility (OpenGL 4.1)
  • GL_ARB_ES3_compatibility (OpenGL 4.3)
  • GL_ARB_ES3_1_compatibility (OpenGL 4.5)
  • GL_ARB_ES3_2_compatibility (OpenGL 4.5)
  • GL_ARB_explicit_attrib_location (OpenGL 3.3)
  • GL_ARB_explicit_uniform_location (OpenGL 4.3)
  • GL_ARB_fragment_coord_conventions (OpenGL 3.2)
  • GL_ARB_fragment_layer_viewport (OpenGL 4.3)
  • GL_ARB_fragment_program (OpenGL 1.3)
  • GL_ARB_fragment_program_shadow (OpenGL 1.3)
  • GL_ARB_fragment_shader (OpenGL 2.0)
  • GL_ARB_fragment_shader_interlock (OpenGL 4.5)
  • GL_ARB_framebuffer_no_attachments (OpenGL 4.3)
  • GL_ARB_framebuffer_object (OpenGL 3.0)
  • GL_ARB_framebuffer_sRGB (OpenGL 3.0)
  • GL_ARB_geometry_shader4 (OpenGL 3.2)
  • GL_ARB_get_program_binary (OpenGL 4.1)
  • GL_ARB_get_texture_sub_image (OpenGL 4.5)
  • GL_ARB_gpu_shader5 (OpenGL 4.0)
  • GL_ARB_gpu_shader_fp64 (OpenGL 4.0)
  • GL_ARB_gpu_shader_int64 (OpenGL 4.5)
  • GL_ARB_half_float_pixel (OpenGL 3.0)
  • GL_ARB_half_float_vertex (OpenGL 2.1)
  • GL_ARB_imaging
  • GL_ARB_indirect_parameters (OpenGL 4.3)
  • GL_ARB_instanced_arrays (OpenGL 3.3)
  • GL_ARB_internalformat_query (OpenGL 4.2)
  • GL_ARB_internalformat_query2 (OpenGL 4.3)
  • GL_ARB_invalidate_subdata (OpenGL 4.3)
  • GL_ARB_map_buffer_alignment (OpenGL 4.2)
  • GL_ARB_map_buffer_range (OpenGL 2.1)
  • GL_ARB_multi_bind (OpenGL 4.4)
  • GL_ARB_multi_draw_indirect (OpenGL 4.3)
  • GL_ARB_multisample (OpenGL 1.3)
  • GL_ARB_multitexture (OpenGL 1.3)
  • GL_ARB_occlusion_query (OpenGL 1.5)
  • GL_ARB_occlusion_query2 (OpenGL 3.3)
  • GL_ARB_parallel_shader_compile (OpenGL 4.5)
  • GL_ARB_pipeline_statistics_query (OpenGL 4.5)
  • GL_ARB_pixel_buffer_object (OpenGL 2.1)
  • GL_ARB_point_parameters (OpenGL 1.4)
  • GL_ARB_point_sprite (OpenGL 2.0)
  • GL_ARB_post_depth_coverage (OpenGL 4.5)
  • GL_ARB_program_interface_query (OpenGL 4.3)
  • GL_ARB_provoking_vertex (OpenGL 3.2)
  • GL_ARB_query_buffer_object (OpenGL 4.4)
  • GL_ARB_robust_buffer_access_behavior (OpenGL 4.3)
  • GL_ARB_robustness (OpenGL 4.1)
  • GL_ARB_sample_locations (OpenGL 4.5)
  • GL_ARB_sample_shading (OpenGL 4.0)
  • GL_ARB_sampler_objects (OpenGL 3.3)
  • GL_ARB_seamless_cube_map (OpenGL 3.2)
  • GL_ARB_seamless_cubemap_per_texture (OpenGL 4.3)
  • GL_ARB_separate_shader_objects (OpenGL 4.1)
  • GL_ARB_shader_atomic_counter_ops (OpenGL 4.5)
  • GL_ARB_shader_atomic_counters (OpenGL 4.2)
  • GL_ARB_shader_ballot (OpenGL 4.5)
  • GL_ARB_shader_bit_encoding (OpenGL 3.3)
  • GL_ARB_shader_clock (OpenGL 4.5)
  • GL_ARB_shader_draw_parameters (OpenGL 4.3)
  • GL_ARB_shader_group_vote (OpenGL 4.3)
  • GL_ARB_shader_image_load_store (OpenGL 4.2)
  • GL_ARB_shader_image_size (OpenGL 4.3)
  • GL_ARB_shader_objects (OpenGL 2.0)
  • GL_ARB_shader_precision (OpenGL 4.1)
  • GL_ARB_shader_storage_buffer_object (OpenGL 4.3)
  • GL_ARB_shader_subroutine (OpenGL 4.0)
  • GL_ARB_shader_texture_image_samples (OpenGL 4.5)
  • GL_ARB_shader_texture_lod (OpenGL 2.0)
  • GL_ARB_shading_language_100 (OpenGL 2.0)
  • GL_ARB_shader_viewport_layer_array (OpenGL 4.5)
  • GL_ARB_shading_language_420pack (OpenGL 4.2)
  • GL_ARB_shading_language_include (OpenGL 3.2)
  • GL_ARB_shading_language_packing (OpenGL 4.1)
  • GL_ARB_shadow (OpenGL 1.4)
  • GL_ARB_sparse_buffer (OpenGL 4.5)
  • GL_ARB_sparse_texture (OpenGL 4.3)
  • GL_ARB_sparse_texture2 (OpenGL 4.5)
  • GL_ARB_sparse_texture_clamp (OpenGL 4.5)
  • GL_ARB_stencil_texturing (OpenGL 4.3)
  • GL_ARB_sync (OpenGL 3.2)
  • GL_ARB_tessellation_shader (OpenGL 4.0)
  • GL_ARB_texture_barrier (OpenGL 4.5)
  • GL_ARB_texture_border_clamp (OpenGL 1.3)
  • GL_ARB_texture_buffer_object (OpenGL 3.1)
  • GL_ARB_texture_buffer_object_rgb32 (OpenGL 4.0)
  • GL_ARB_texture_buffer_range (OpenGL 4.3)
  • GL_ARB_texture_compression (OpenGL 1.3)
  • GL_ARB_texture_compression_bptc (OpenGL 4.2)
  • GL_ARB_texture_compression_rgtc (OpenGL 3.0)
  • GL_ARB_texture_cube_map (OpenGL 1.3)
  • GL_ARB_texture_cube_map_array (OpenGL 4.0)
  • GL_ARB_texture_env_add (OpenGL 1.3)
  • GL_ARB_texture_env_combine (OpenGL 1.3)
  • GL_ARB_texture_env_crossbar (OpenGL 1.4)
  • GL_ARB_texture_env_dot3 (OpenGL 1.3)
  • GL_ARB_texture_filter_minmax (OpenGL 4.5)
  • GL_ARB_texture_float (OpenGL 3.0)
  • GL_ARB_texture_gather (OpenGL 4.0)
  • GL_ARB_texture_mirror_clamp_to_edge (OpenGL 4.4)
  • GL_ARB_texture_mirrored_repeat (OpenGL 1.4)
  • GL_ARB_texture_multisample (OpenGL 3.2)
  • GL_ARB_texture_non_power_of_two
  • GL_ARB_texture_query_levels (OpenGL 4.3)
  • GL_ARB_texture_query_lod (OpenGL 4.0)
  • GL_ARB_texture_rectangle (OpenGL 3.1)
  • GL_ARB_texture_rg (OpenGL 3.0)
  • GL_ARB_texture_rgb10_a2ui (OpenGL 3.3)
  • GL_ARB_texture_stencil8 (OpenGL 4.4)
  • GL_ARB_texture_storage (OpenGL 4.2)
  • GL_ARB_texture_storage_multisample (OpenGL 4.3)
  • GL_ARB_texture_swizzle (OpenGL 3.3)
  • GL_ARB_texture_view (OpenGL 4.3)
  • GL_ARB_timer_query (OpenGL 3.3)
  • GL_ARB_transform_feedback2 (OpenGL 4.0)
  • GL_ARB_transform_feedback3 (OpenGL 4.0)
  • GL_ARB_transform_feedback_instanced (OpenGL 4.2)
  • GL_ARB_transform_feedback_overflow_query (OpenGL 4.5)
  • GL_ARB_transpose_matrix (OpenGL 1.3)
  • GL_ARB_uniform_buffer_object (OpenGL 3.1)
  • GL_ARB_vertex_array_bgra (OpenGL 3.2)
  • GL_ARB_vertex_array_object (OpenGL 2.1)
  • GL_ARB_vertex_attrib_64bit (OpenGL 4.1)
  • GL_ARB_vertex_attrib_binding (OpenGL 4.3)
  • GL_ARB_vertex_buffer_object (OpenGL 1.5)
  • GL_ARB_vertex_program (Requires OpenGL 1.3)
  • GL_ARB_vertex_shader (OpenGL 2.0)
  • GL_ARB_vertex_type_10f_11f_11f_rev (OpenGL 4.4)
  • GL_ARB_vertex_type_2_10_10_10_rev (OpenGL 3.3)
  • GL_ARB_viewport_array (OpenGL 4.1)
  • GL_ARB_window_pos (OpenGL 1.4)
  • GL_ATI_draw_buffers (Requires OpenGL 1.3)
  • GL_ATI_texture_float (Requires OpenGL 1.3)
  • GL_ATI_texture_mirror_once (Requires OpenGL 1.2.1)
  • GL_S3_s3tc
  • GL_EXT_texture_env_add
  • GL_EXT_abgr
  • GL_EXT_bgra (OpenGL 1.2)
  • GL_EXT_bindable_uniform (OpenGL 2.0)
  • GL_EXT_blend_color (OpenGL 1.4 OpenGL 1.4)
  • GL_EXT_blend_equation_separate
  • GL_EXT_blend_func_separate (Requires OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_blend_minmax (Requires OpenGL 1.2)
  • GL_EXT_blend_subtract (Requires OpenGL 1.2)
  • GL_EXT_compiled_vertex_array (Requires OpenGL 1.1)
  • GL_EXT_Cg_shader
  • GL_EXT_depth_bounds_test
  • GL_EXT_direct_state_access
  • GL_EXT_draw_buffers2 (OpenGL 3.0)
  • GL_EXT_draw_instanced (Requires OpenGL 2.0)
  • GL_EXT_draw_range_elements (Requires OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_fog_coord (Requires OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_framebuffer_blit (OpenGL 3.0)
  • GL_EXT_framebuffer_multisample (OpenGL 3.0)
  • GL_EXTX_framebuffer_mixed_formats
  • GL_EXT_framebuffer_multisample_blit_scaled
  • GL_EXT_framebuffer_object (Requires OpenGL 3.0)
  • GL_EXT_framebuffer_sRGB (OpenGL 3.0)
  • GL_EXT_geometry_shader4 (Requires OpenGL 2.0)
  • GL_EXT_gpu_program_parameters (Requires OpenGL 2.0)
  • GL_EXT_gpu_shader4 (OpenGL 3.0)
  • GL_EXT_multi_draw_arrays (OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_packed_depth_stencil (OpenGL 3.0)
  • GL_EXT_packed_float (OpenGL 3.0)
  • GL_EXT_packed_pixels (Requires OpenGL 1.2)
  • GL_EXT_pixel_buffer_object
  • GL_EXT_point_parameters
  • GL_EXT_polygon_offset_clamp
  • GL_EXT_post_depth_coverage
  • GL_EXT_provoking_vertex
  • GL_EXT_raster_multisample
  • GL_EXT_rescale_normal (Requires OpenGL 1.2)
  • GL_EXT_secondary_color (Requires OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_separate_shader_objects
  • GL_EXT_separate_specular_color (Requires OpenGL 1.2)
  • GL_EXT_shader_image_load_formatted
  • GL_EXT_shader_image_load_store
  • GL_EXT_shader_integer_mix
  • GL_EXT_shadow_funcs (Requires OpenGL 1.3 / Core Feature of OpenGL 1.5)
  • GL_EXT_sparse_texture2
  • GL_EXT_stencil_two_side
  • GL_EXT_stencil_wrap (Requires OpenGL 1.4)
  • GL_EXT_texture3D (Requires OpenGL 1.2)
  • GL_EXT_texture_array (OpenGL 3.0)
  • GL_EXT_texture_buffer_object (Requires OpenGL 2.0)
  • GL_EXT_texture_compression_dxt1
  • GL_EXT_texture_compression_latc
  • GL_EXT_texture_compression_rgtc (OpenGL 3.0)
  • GL_EXT_texture_compression_s3tc (Requires OpenGL 1.2.1)
  • GL_EXT_texture_cube_map (See GL_ARB_texture_cube_map)
  • GL_EXT_texture_edge_clamp
  • GL_EXT_texture_env_combine
  • GL_EXT_texture_env_dot3
  • GL_EXT_texture_filter_anisotropic (Requires OpenGL 1.2)
  • GL_EXT_texture_filter_minmax
  • GL_EXT_texture_integer (OpenGL 3.0)
  • GL_EXT_texture_lod
  • GL_EXT_texture_lod_bias (Requires OpenGL 1.2 / Core Feature of OpenGL 1.4)
  • GL_EXT_texture_mirror_clamp (Requires OpenGL 1.4)
  • GL_EXT_texture_object (Requires OpenGL 1.1)
  • GL_EXT_texture_shared_exponent (OpenGL 3.0)
  • GL_EXT_texture_sRGB
  • GL_EXT_texture_sRGB_decode
  • GL_EXT_texture_storage
  • GL_EXT_texture_swizzle (OpenGL 2.1)
  • GL_EXT_timer_query (Requires OpenGL 1.5)
  • GL_EXT_transform_feedback2
  • GL_EXT_vertex_array (Requires OpenGL 1.1)
  • GL_EXT_vertex_array_bgra
  • GL_EXT_vertex_attrib_64bit
  • GL_EXT_import_sync_object
  • GL_IBM_rasterpos_clip
  • GL_IBM_texture_mirrored_repeat
  • GL_KHR_context_flush_control (OpenGL 4.5)
  • GL_KHR_debug (OpenGL 4.3)
  • GL_KHR_no_error
  • GL_KHR_robust_buffer_access_behavior
  • GL_KHR_robustness (OpenGL 4.5)
  • GL_KTX_buffer_region
  • GL_NV_bindless_multi_draw_indirect
  • GL_NV_bindless_multi_draw_indirect_count
  • GL_NV_bindless_texture (OpenGL 4.0)
  • GL_NV_blend_equation_advanced
  • GL_NV_blend_equation_advanced_coherent
  • GL_NV_blend_square (Requires OpenGL 1.2.1 / Core Feature of OpenGL 1.4)
  • GL_NV_command_list
  • GL_NV_compute_program5
  • GL_NV_conditional_render (OpenGL 3.0)
  • GL_NV_conservative_raster
  • GL_NV_conservative_raster_dilate
  • GL_NV_copy_depth_to_color
  • GL_NV_copy_image
  • GL_NV_depth_buffer_float (OpenGL 3.0)
  • GL_NV_depth_clamp
  • GL_NV_draw_texture
  • GL_NV_draw_vulkan_image
  • GL_NV_ES1_1_compatibility
  • GL_NV_ES3_1_compatibility
  • GL_NV_explicit_multisample
  • GL_NV_fence
  • GL_NV_fill_rectangle
  • GL_NV_float_buffer
  • GL_NV_fog_distance
  • GL_NV_fragment_coverage_to_color
  • GL_NV_fragment_program
  • GL_NV_fragment_program_option
  • GL_NV_fragment_program2
  • GL_NV_fragment_shader_interlock
  • GL_NV_framebuffer_mixed_samples
  • GL_NV_framebuffer_multisample_coverage
  • GL_NV_geometry_shader4
  • GL_NV_geometry_shader_passthrough
  • GL_NV_gpu_program4
  • GL_NV_internalformat_sample_query
  • GL_NV_gpu_program4_1
  • GL_NV_gpu_program5
  • GL_NV_gpu_program5_mem_extended
  • GL_NV_gpu_program_fp64
  • GL_NV_gpu_shader5
  • GL_NV_half_float (OpenGL 3.0)
  • GL_NV_light_max_exponent
  • GL_NV_multisample_coverage
  • GL_NV_multisample_filter_hint
  • GL_NV_occlusion_query (Requires OpenGL 1.3)
  • GL_NV_packed_depth_stencil
  • GL_NV_parameter_buffer_object
  • GL_NV_parameter_buffer_object2
  • GL_NV_path_rendering
  • GL_NV_path_rendering_shared_edge
  • GL_NV_pixel_data_range
  • GL_NV_point_sprite
  • GL_NV_primitive_restart (OpenGL 3.1)
  • GL_NV_register_combiners
  • GL_NV_register_combiners2
  • GL_NV_sample_locations
  • GL_NV_sample_mask_override_coverage
  • GL_NV_shader_atomic_counters
  • GL_NV_shader_atomic_float
  • GL_NV_shader_atomic_fp16_vector
  • GL_NV_shader_atomic_int64
  • GL_NV_shader_buffer_load
  • GL_NV_shader_storage_buffer_object
  • GL_NV_texgen_reflection (Requires OpenGL 1.3)
  • GL_NV_texture_barrier
  • GL_NV_texture_compression_vtc
  • GL_NV_texture_env_combine4
  • GL_NV_texture_multisample
  • GL_NV_texture_rectangle
  • GL_NV_texture_shader
  • GL_NV_texture_shader2
  • GL_NV_texture_shader3
  • GL_NV_transform_feedback
  • GL_NV_transform_feedback2
  • GL_NV_uniform_buffer_unified_memory
  • GL_NV_vertex_array_range
  • GL_NV_vertex_array_range2
  • GL_NV_vertex_attrib_integer_64bit
  • GL_NV_vertex_buffer_unified_memory
  • GL_NV_vertex_program
  • GL_NV_vertex_program1_1
  • GL_NV_vertex_program2
  • GL_NV_vertex_program2_option
  • GL_NV_vertex_program3
  • GL_NV_viewport_array2
  • GL_NVX_conditional_render
  • GL_NVX_gpu_memory_info
  • GL_NVX_nvenc_interop
  • GL_NV_shader_thread_group
  • GL_NV_shader_thread_shuffle
  • GL_KHR_blend_equation_advanced (OpenGL 4.5)
  • GL_KHR_blend_equation_advanced_coherent
  • GL_SGIS_generate_mipmap (Requires OpenGL 1.4)
  • GL_SGIS_texture_lod (Requires OpenGL 1.2)
  • GL_SGIX_depth_texture
  • GL_SGIX_shadow
  • GL_SUN_slice_accum
  • GL_WIN_swap_hint
  • WGL_EXT_swap_control (Requires OpenGL 1.2)
  • WGL_ARB_buffer_region
  • WGL_ARB_create_context (OpenGL 3.0)
  • WGL_ARB_create_context_profile
  • WGL_ARB_create_context_robustness (OpenGL 4.1)
  • WGL_ARB_context_flush_control (OpenGL 4.5)
  • WGL_ARB_extensions_string
  • WGL_ARB_make_current_read
  • WGL_ARB_multisample
  • WGL_ARB_pbuffer
  • WGL_ARB_pixel_format
  • WGL_ARB_pixel_format_float
  • WGL_ARB_render_texture (Requires OpenGL 1.1)
  • WGL_ATI_pixel_format_float (Requires OpenGL 1.3)
  • WGL_EXT_create_context_es_profile
  • WGL_EXT_create_context_es2_profile
  • WGL_EXT_extensions_string
  • WGL_EXT_framebuffer_sRGB (OpenGL 2.0)
  • WGL_EXT_pixel_format_packed_float (OpenGL 2.0)
  • WGL_EXT_swap_control_tear
  • WGL_NVX_DX_interop
  • WGL_NV_DX_interop
  • WGL_NV_DX_interop2
  • WGL_NV_bridged_display
  • WGL_NV_copy_image
  • WGL_NV_delay_before_swap
  • WGL_NV_float_buffer
  • WGL_NV_multisample_coverage
  • WGL_NV_render_depth_texture
  • WGL_NV_render_texture_rectangle

What’s New in OpenGL 4.5 and OpenGL Shading Language 4.5

The OpenGL 4.5 and OpenGL Shading Language 4.50 Specifications were released on August 11, 2014.

New features of OpenGL 4.5 include:

  • Direct State Access (DSA)
    object accessors enable state to be queried and modified without binding objects to contexts, for increased application and middleware efficiency and flexibility;
  • Flush Control
    applications can control flushing of pending commands before context switching – enabling high-performance multithreaded applications;
  • Robustness
    providing a secure platform for applications such as WebGL browsers, including preventing a GPU reset affecting any other running applications;
  • OpenGL ES 3.1 API and shader compatibility
    to enable the easy development and execution of the latest OpenGL ES applications on desktop systems;
  • DX11 emulation features
    for easier porting of applications between OpenGL and Direct3D.

New extensions to OpenGL 4.5 include:

  • GL_ARB_clip_control
  • GL_ARB_cull_distance
  • GL_ARB_ES3_1_compatibility
  • GL_ARB_conditional_render_inverted
  • GL_KHR_context_flush_control
  • GL_ARB_derivative_control
  • GL_ARB_direct_state_access
  • GL_ARB_get_texture_sub_image
  • GL_KHR_robustness
  • GL_ARB_shader_texture_image_samples
  • GL_ARB_texture_barrier

API & GLSL specifications



Popular Pages
Popular posts
Interested
About me

My name is Sayed Ahmadreza Razian and I am a graduate of the master degree in Artificial intelligence .
Click here to CV Resume page

Related topics such as image processing, machine vision, virtual reality, machine learning, data mining, and monitoring systems are my research interests, and I intend to pursue a PhD in one of these fields.

جهت نمایش صفحه معرفی و رزومه کلیک کنید

My Scientific expertise
  • Image processing
  • Machine vision
  • Machine learning
  • Pattern recognition
  • Data mining - Big Data
  • CUDA Programming
  • Game and Virtual reality

Download Nokte as Free


Coming Soon....

Greatest hits

Gravitation is not responsible for people falling in love.

Albert Einstein

The fear of death is the most unjustified of all fears, for there’s no risk of accident for someone who’s dead.

Albert Einstein

Anyone who has never made a mistake has never tried anything new.

Albert Einstein

It’s the possibility of having a dream come true that makes life interesting.

Paulo Coelho

Waiting hurts. Forgetting hurts. But not knowing which decision to take can sometimes be the most painful.

Paulo Coelho

Imagination is more important than knowledge.

Albert Einstein

You are what you believe yourself to be.

Paulo Coelho

One day you will wake up and there won’t be any more time to do the things you’ve always wanted. Do it now.

Paulo Coelho


Site by images
Statistics
  • 6,637
  • 19,350
  • 63,548
  • 18,587
Recent News Posts