ヒストリ
勉強のため整理。
知識不足なので、まずはバージョンごとにどんな機能が使えるのかをしるために。
知識不足なので、まずはバージョンごとにどんな機能が使えるのかをしるために。
OpenGL 1.0
- 1992年1月リリース
OpenGL 1.1
- 1997年1月リリース
GPUハードウェア上でテクスチャについてサポート。
対応カード
すべて。
拡張
Extension | Extension ID | Functions |
頂点配列 | EXT_vertex_array | glVertexPointer, glColorPointer, glNormalPointer |
ポリゴン・オフセット (depth biasing) | EXT_polygon_offset | glPolygonOffset |
RGBA混合 | EXT_blend_logic_op | glBlendFunc |
テクスチャ・コピー/Subコピー | EXT_subtexture, EXT_copy_texture | glTexSubImage1D/2D/3D |
テクスチャ・フォーマット | EXT_texture | RGB, LUMINANCE, ALPHA, INTENSITY (in glTexImage2D) |
テクスチャ・オブジェクト | EXT_texture_object | glGenTextures, glBindTextures |
OpenGL 1.2
- 1998年3月リリース
ボリュームテクスチャ
パックドピクセル
normal rescaling
clamped/edgeテクスチャ・サンプリング
イメージ・プロセッシング
パックドピクセル
normal rescaling
clamped/edgeテクスチャ・サンプリング
イメージ・プロセッシング
対応カード
- Rage 128
- Rage 128 GL
- Rage XL/XC,
- Rage 128 Pro
- Rage Fury MAXX
それ以降のカード
拡張
Extension | Extension ID | Functions |
3D Volume Textures | GL_EXT_texture3D | glTexImage3DEXT |
BGRA Texture Format | GL_EXT_bgra | BGR_EXT, BGRA_EXT (in glTexImage2D) |
Packed Pixels | GL_EXT_packed_pixels | |
Normal Rescaling | GL_EXT_rescale_normal | |
Separate Specular Color | GL_EXT_separate_specular_color | |
Texture Coord Edge Clamping | SGIS_texture_edge_clamp | |
Texture LOD Control | SGIS_texture_lod | |
Draw Range Elements | EXT_draw_range_elements | glDrawRangeElements |
Image Processing Subset | EXT_color_table, EXT_convolution, SGI_color_matrix, EXT_histogram, EXT_blend_color, EXT_blend_minmax |
OpenGL 1.2.1
- 1998年10月リリース
multi-texture
texture unit
rendering pipeline
texture unit
rendering pipeline
対応カード
- Radeon
- Radeon Mobility
- Radeon 7500 Mobility
- Radeon 8500
- Radeon 9000
- Radeon 9200
- Radeon 9600
- Radeon 9800
- GeForce 3
- GeForce 4Ti
- GeForce FX
それ以降のカード
拡張
Extension | Extension ID | Functions |
マルチ・テクスチャリング | SGIS_multitexture | glActiveTextureARB, glClientActiveTextureARB |
OpenGL 1.3
- 2001年8月リリース
cubemap texture
multi-texturing
multi-sampling
texture unit combine opeerations(add, combine, dot3, border clamp)
multi-texturing
multi-sampling
texture unit combine opeerations(add, combine, dot3, border clamp)
対応カード
- Radeon 32/36
- Radeon 64/7200
- Radeon 7000
- Radeon 7500
- Radeon IGP 320M
- Radeon IGP 345M
- ES1000
- Radeon 8500
- Radeon 9000/Pro
- Radeon 9100/9200/9250 (Pro & IGP)
- GeForce 3
- GeForce 4Ti
- GeForce FX
それ以降のカード
拡張
Extension | Extension ID | Functions |
Compressed Textures | GL_ARB_texture_compression | |
Cubemaps | GL_EXT_texture_cube_map | TEXTURE_CUBE_MAP_EXT |
Multi-Sampling | GL_ARB_multisample | |
Texture Add | GL_ARB_texture_env_add | |
Texture Combine | GL_ARB_texture_env_combine | |
Texture Dot3 | GL_ARB_texture_env_dot3 | |
Texture Border Clamping | GL_ARB_texture_border_clamp | |
Matrix Transpose | GL_ARB_transpose_matrix |
OpenGL 1.4
- 2002年6月リリース
hardware shadowing
fog coordinates
automatic mipmap generation
additional texture mode
fog coordinates
automatic mipmap generation
additional texture mode
対応カード
- Quadro DCC
- Quadro4 380 XGL
- Quadro4 500XGL, 5500XGL
- Quadro4 700XGL, 750XGL
- Quadro4 900XGL, 980XGL
それ以降のカード
- GMA 900 (910GL, 915GL, 915GV, 915G)
- GMA 950 (945GZ, 945GC, 945G, Mobile 945 Family)
- GMA 3000 (946GZ, Q963, Q965)
拡張
Extension | Extension ID | Functions |
Automatic Mipmaps | SGIS_generate_mipmap | |
Blend Squaring Functions | GL_NV_blend_square | |
Depth Textures | GL_ARB_depth_texture | DEPTH_COMPONENT16/24/32_ARB |
Hardware Shadowing Z-depth | GL_ARB_shadow | COMPARE_R_TO_TEXTURE |
Fog Coordinates | GL_EXT_fog_coord | |
Multiple Draw Arrays | GL_EXT_multi_draw_arrays | |
Point Parameters | GL_ARB_point_parameter | |
Secondary Color | GL_EXT_secondary_color | |
Separate Blend Functions | GL_EXT_blend_func_separate | |
Stencil Wrapping | GL_EXT_stencil_wrap | |
Texture Crossbar Environment Mode | GL_ARB_texture_env_crossbar | |
Texture LOD Bias | GL_EXT_texture_lod_bias | |
Texture Mirrored Repeat | GL_ARB_texture_mirrored_repeat | |
Window Raster Position | GL_ARB_window_pos |
OpenGL 1.5
- 2003年6月リリース
vertex buffer objects(VBO)
occlusion queries
extended shadowing function
occlusion queries
extended shadowing function
対応カード
- Radeon X800
- Radeon 9600
- Radeon 9700
- Radeon 9800
- GeForce FX
それ以降のカード
- GMA 3100 (Q33, Q35, G31, G33)
- GMA 3150 (Atom Dx10, N4x0)
- GMA X3100 (GL960, GLE960, GM965, GME965)
拡張
Extension | Extension ID | Functions |
VBOs Vertex Buffer Objects | GL_ARB_vertex_buffer_object | glBindBufferARB, glBufferDataARB, glGenBuffersARB |
Occlusion Queries | GL_ARB_occlusion_query | |
Extended Shadow Functions | GL_EXT_shadow_funcs |
OpenGL 2.0
- 2004年9月リリース
ARB呼び出しGPUベースassembly language
ユーザ・プログラマブル・シェーダ
バーテックス・シェーダ
フラグメント・シェーダ
ユーザ・プログラマブル・シェーダ
バーテックス・シェーダ
フラグメント・シェーダ
対応カード
- Radeon 9650
- Radeon 9500
- Radeon 9500/9550/9600/9700/9800 (Pro, SE, XT)
- Radeon X1050
- Radeon Xpress 200/1100
- Radeon X300
- Radeon X550
- Radeon X600/Pro
- Radeon X700
- Radeon X800(VE, SE, GT, Pro)
- Radeon X850
- Radeon Xpress 1250
- Radeon X1200
- Radeon X1250
- Radeon 2100
- Radeon X1300
- Radeon X1550
- Radeon X1600
- Radeon X1650
- Radeon X1800
- Radeon X1900
- Radeon X1950 (Pro, XT, GT)
- GeForce 6800
- Quadro 600
- Quadro FX 500
- Quadro FX 700
- Quadro FX 1000
- Quadro FX 2000
- Quadro FX 3000
- Quadro FX 1400
- Quadro FX 1500
- Quadro FX 3450
- Quadro FX 3500
- Quadro FX 4500X2
- Quadro FX 4500 SDI
それ以降のカード
- GMA 500 (UL11L, US15L, US15W)
- GMA X3000 (G965)
- GMA X3500 (G35)
拡張
Extension | Extension ID | Functions |
Shader Objects | GL_ARB_shader_objects | |
Vertex Programs | GL_ARB_vertex_program | glBindProgramARB, glGenProgramsARB |
Vertex Shaders (VS) | GL_ARB_vertex_shader | |
Fragment Shaders (FS) | GL_ARB_fragment_shader | |
Multiple Render Targets | GL_ARB_draw_buffers | glDrawBuffers |
Rectangular Texture | GL_ARB_texture_rectangle | GL_TEXTURE_RECTANGLE_ARB |
Point Sprites | GL_ARB_point_sprite | |
Separate Blend Equation | GL_EXT_blend_equation_separate | |
Separate Stencil | GL_EXT_stencil_two_side |
OpenGL 2.1
- 2006年6月リリース
pixel buffer objects(PBO)
sRGBテクスチャ(gamma-corrected textures)
non-square matrices
Shading Language GLSL 1.20
sRGBテクスチャ(gamma-corrected textures)
non-square matrices
Shading Language GLSL 1.20
対応カード
- Radeon GD 2350
- GeForce FX (with driver 175.19)
- GeForce 6000シリーズ
- Geforce 7000シリーズ
- GeForce Go 7000シリーズ
- Quadro FX 4000
- Quadro FX 350
- Quadro FX 550
- Quadro FX 560
- Quadro FX 1400
- Quadro FX 1500
- Quadro FX 5500
それ以降のカード
- GMA 4500 (B43, Q43, Q45)
- GMA X4500 (G41, G43)
- GMA X4500HD (G45)
- GMA 4500MHD (GL40, GS40, GM45, GS45)
- GMA Graphics:GMA HD (Clarkdale GMCH Die:Ironlake, Arrandale GMCH Die:Ironlake)
拡張
Extension | Extension ID | Functions |
Non-Square Matricies | glUniformMatrix{}fv | |
PBOs Pixel Buffer Objects | GL_ARB_pixel_buffer_object | |
sRGB Texture (gamma 2.2) | GL_EXT_texture_sRGB |
OpenGL 3.0
- 2008年6月リリース
- OpenGL Shading Language 1.30 (GLSL)
- Vertex Array Objects
- More flexible Framebuffer Objects
- 32-bit(single precision) floating-point textures and render buffers
- 16-bit(half precision) floating-point vertex and pixel data
- Ability to render vertex transformations into a buffer
- Texture arrays
- 32-bit(single precision) float point depth buffer support
対応カード
- Radeon HDシリーズ
- GeForce 8000, 9000
- GTX 100
- GTX 200
- GTX 300シリーズ
拡張
Extension | Extension ID | Functions |
Geometry Shader (GS) | GL_EXT_geometry_shader4 | GEOMETRY_SHADER_EXT |
FBOs Frame Buffer Objects | GL_EXT_framebuffer_object | glFrameBufferTexture2DEXT |
FBO Multisampling | GL_EXT_framebuffer_multisample | |
Hardware Instancing | GL_EXT_draw_instanced | glDrawArraysInstancedEXT, glDrawElementsInstancedEXT |
VAOs Vertex Array Objects | GL_ARB_vertex_array_object | glBindVertexArray, glGenVertexArray |
sRGB Framebuffers (gamma 2.2 | GL_EXT_framebuffer_sRGB | FRAMEBUFFER_SRGB_EXT |
OpenGL 3.1
- 2009年5月
- OpenGL Shading Language 1.40(GLSL)
- Texture Buffer Objects
- Uniform Buffer Object
- Signed normalized textures (+-1.0 range)
- A minimum of 16 texture units accessible by the vertex shader
- Primitive restart
- Instancing
- CopyGBuffer API
対応カード
OpenGL 3.2
- 2009年8月
- OpenGL Shading Language 1.50(GLSL)
- ジオメトリ・シェーダ
- BGRA vertex component ordering
- Shader Fragment coordinate convention control
- Seamless cube map filtering
- Fragment depth clamping
- Multisampled textures and texture samples for specific sample locations
- Sync and Fence objects
対応カード
- Radeon HD シリーズ
- GeForce 8000, 9000
- GTX 100
- GTX 200
- GTX 300シリーズ
OpenGL 3.3
- OpenGL Shading Language 3.3(GLSL)
- このバージョンからOpenGLとGLSLのバージョンを合わせてきた
OpenGL 4.0
- OpenGL Shading Language 4.0(GLSL)
DirextX11相当
OpenGL 4.1
- OpenGL Shading Language 4.1(GLSL)
参考
- http://en.wikipedia.org/wiki/OpenGL
- http://en.wikipedia.org/wiki/Intel_GMA