だるだる団の OpenGL

適当な理由で OpenGL に興味が出たから作ってみた。

[ Information ]

OpenGL もしくは OpenGL ES で動くプログラムの開発中に
作成したサンプルのバイナリ&ソースを置いてみた。



[ Platform ]

ここで公開しているサンプルは VC6 用のプロジェクトを入れているので
VC 系ならビルド出来るハズ。

VC6 以外でも OpenGL SDK はほとんどの開発環境で標準で入ってるので
別途 SDK を用意しなくても普通にビルドできる。

さらに GUI と OpenGL のコードを分けているので Windows 以外への
移植も比較的簡単。(Android NDK とか。)



[ Update ]

2017/10/07 gl_caps の結果を更新。
2016/09/06 gl_caps の結果を追加。
2016/06/20 gl_caps の結果を追加。
2014/07/21 gl_caps の結果を追加。



[ Software ]


敵を知るには己から
Download Document
OpenGL Capability
gl_caps.lzh 2014/02/08
GPU の OpenGL バージョンとサポート機能を表示します。
バイナリのみ。
※エクステンションの取得結果
XPRESS 200M AMD 780G VIA CX700 VIA VX800 Chrome430GT
SiS M672 XGI V3XT
Intel 865G Intel Q33 Intel HD3000 Intel HD2500
GeForce6100 GeForce8200 RIVA TNT Quadro NVS 285 NVS 4200M
Mesa3D VMware VirtualBox ReactOS Microsoft




[ Program ]

責任は一切、負わないので自由に使ってください。

OpenGL Test サンプルを作った
Download Document Function ES
gltest01.lzh 2006/07/01
Update ----/--/--
立方体を作って回転させるサンプル。
バイナリ、ソース付き。
・OpenGL 1.1 ×
gltest02.lzh 2006/07/01
Update 2006/07/29
立方体にテクスチャマッピング。
バイナリ、ソース付き。
・OpenGL 1.1 ×
gltest03.lzh 2006/10/07
Update ----/--/--
3Dオブジェクトと2Dフォント(glBitmap)を合成描画する。
バイナリ、ソース付き。
・OpenGL 1.1 ×
gltest04.lzh 2007/01/04
Update ----/--/--
wglUseFontOutlines を使って3Dフォントを描画する。
バイナリ、ソース付き。
・OpenGL 1.1
wglUseFontOutlines
×
gltest05.lzh 2008/01/14
Update 2010/11/16
Windows GUI と OpenGL が共存したウインドウを作る。
バイナリ、ソース付き。
・OpenGL 1.1 ×
gltest06.lzh 2010/09/10
Update 2010/11/16
垂直同期の制御。新旧対応 (OpenGL 3.0 未満、以降)
バイナリ、ソース付き。
・WGL_EXT_extensions_string
・WGL_EXT_swap_control
×
gltest07.lzh 2010/11/09
Update 2010/11/09
ポリゴンをマウスで選択するピッキング処理。(未完成)
バイナリ、ソース付き。
・OpenGL 1.1
glSelectBuffer , glRenderMode
glInitNames , gluPickMatrix
×
gltest08.lzh 2011/01/05
Update 2014/01/02
ポリゴン描画方法いろいろ。
バイナリ、ソース付き。
・OpenGL 1.2
glBegin , glVertex , glEnd
glDrawArrays , glDrawElements
gltest09.lzh 2012/01/07
Update 2014/01/02
ビルボードの生成。(ポリゴン)
バイナリ、ソース付き。
・OpenGL 1.1 ?
gltest10.lzh 2012/01/16
Update 2014/01/02
ポイントスプライトによるビルボードの生成。
バイナリ、ソース付き。
※古い ATI RADEON 9000 系を使っている場合は必ず
ドライバを最新(最終)にアップデートしてください。

AMDサイト:AMD Graphics Drivers and Software
・OpenGL 1.4 or
GL_ARB_point_sprite

GL_POINT_SPRITE_ARB ,
GL_COORD_REPLACE_ARB
gltest11.lzh 2013/10/22
Update 2014/01/02
クリック位置(2D)をZバッファを使って3D位置に変換。
バイナリ、ソース付き。
・OpenGL 1.1 ?
glReadPixels , gluUnProject
×
gltest12.lzh 2014/01/02
Update 2014/02/05
ポリゴンの半透明合成(アルファブレディング)。
バイナリ、ソース付き。
・OpenGL 1.1 ?
GL_BLEND , glBlendFunc
gltest13.lzh 2014/01/26
Update ----/--/--
デバッグ用の文字列受け取り。
OpenGL 4.x 世代のドライバで対応している。
バイナリ、ソース付き。
GL_ARB_debug_output or
GL_AMD_debug_output
×
gltest14.lzh 2014/02/05
Update ----/--/--
DDS 形式と圧縮テクスチャ(S3TC)の使用。
バイナリ、ソース付き。
・OpenGL 1.3 or
GL_ARB_texture_compression ,
GL_EXT_texture_compression_s3tc


理解してないけど難しそうなのを移植した
Download Document Function
OpenGL for Nurbs
gl_nurbs.lzh 2006/09/09
Bスプライン曲線 (NURBS) サンプル。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
gluBeginSurface
gluNurbsSurface
gluEndSurface
OpenGL for 波紋
gl_hamon.lzh 2006/09/09
2次元波動方程式を差分法で解く。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
OpenGL for メタボール
gl_meta.lzh 2006/09/17
Cマガ記事の Direct3D から移植。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
OpenGL for Water
gl_water.lzh 2006/10/01
Cマガ記事の Direct3D から移植。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
OpenGL for ATI
gl_ati.lzh 2007/01/01
欲しい人は掲示板へ。
海外で見つけたスキニングのサンプル。(頂点ブレンド)
(RADEON 8500 以外だとソフトウェア処理)
サイズの都合でソースのみ。[こんな感じ]
・GL_ARB_vertex_blend
・GL_EXT_compiled_vertex_array
OpenGL for Trackball
gl_track.lzh 2008/01/04
Update 2010/10/29
マウスのドラッグで立方体を回転させる。
バイナリ、ソース付き。
・OpenGL 1.1
OpenGL for Shadow
gl_shadow.lzh 2008/01/18
ステンシルを使って立方体の影を床に描画する。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
glStencilFunc
glStencilOp
OpenGL for Buggy
gl_buggy.lzh 2008/02/24
欲しい人は掲示板へ。
ODE (Open Dynamics Engine) のサンプルを改良。
ただし、曲がろうとするとすぐに吹っ飛んでしまう…。
バイナリ、ソース(別途ODEが必要)付き。
・OpenGL 1.1
・ODE Ver 0.7 API
OpenGL for MQO
gl_mqo.lzh 2012/02/01
Update 2014/01/20
Metasequoia v2.4 で出力された MQO ファイルを
GLMetaseq で読み込んで VBO で描画する。
・OpenGL 1.1
・GL_ARB_vertex_buffer_object


とりあえず作った
Download Document Function
D3DX互換ライブラリ
dx8_matx.lzh 06/11/04
行列&ベクトル計算関数を作ってみた。
D3DXライブラリの関数となんとなく互換。
ソース付き。
なし
OpenGL for Movie
gl_movie.lzh 2008/02/10
Update 2010/11/01
立方体のテクスチャとして動画を貼り付けてみた。
DirectShow グラバフィルタを使用。非常に重い。
音声なし、通常再生時の10倍以上の負荷がかかる。
バイナリ、ソース付き。 [こんな感じ]
・OpenGL 1.1
・DIB (Win32)
・DirectShow (DX8)
OpenGL for Movie2
gl_movie2.lzh 2010/11/01
立方体のテクスチャとして動画を貼り付けてみた。
DirectShow レンダラフィルタを作成。少し重い。
音声あり、通常再生時の2倍くらいの負荷がかかる。
バイナリ、ソース付き。[こんな感じ]
・OpenGL 1.1
・DIB (Win32)
・DirectShow (DX8)
GLSL Build Checker
glsl_bld.lzh 2010/11/11
GLSL のコンパイルとリンクをチェックしたかった。
文法などのエラーがある場合にそれを表示する。
バイナリ、ソース付き。
・GL_ARB_shader_objects
・GL_ARB_vertex_shader
・GL_ARB_fragment_shader
・GL_ARB_geometry_shader4
OpenGL Mesh R16
glm32.lzh 2013/10/20
OpenGL でモデルデータを使いたかった
OpenGL でメッシュの標準的なファイル形式が
存在しないのでライブラリを作ってみた。
コンバータとサンプルソース付き。 [こんな感じ]
-
OpenGL Mesh for ES
希望者のみ。(要許可)
WindowsCE や Android でモデルデータを使いたかった
ベースには OpenGL ES 1.x を使用。
Android 版は Java を使わず NDK (JNI) で開発。
制限事項:フォント機能が使えない。
-
Mesa Ver 7.0.2 for VC6
m702vc6.lzh 2008/01/26
Mesa 3D を VC6 で使いたかった
Mesa 7.0.2 には VC6 のプロジェクトが無いので作った。
なし


でも GLUT だった
Download Document Function
OpenGL on GLUT
glut_ko.lzh 2006/07/01
www.komoto.org で公開されているサンプルプログラムの
ソースコードの文字コードを EUC から SJIS に変更して
VCプロジェクトを追加したパッケージ。
・OpenGL 1.1




OpenGL とは?

SGI (Silicon Graphics) 社が中心となって開発された
3Dグラフィックス処理のためのAPI。

仕様の策定を行う団体は SGI → ARB → Khronos と変わっている。
(ARB → Architecture Review Board)

[ Link ]
www.opengl.org
 Extension Registry
 Tutorial Listings

khronos
 OpenGL ES Reference Manual
 OpenGL ES Implementations

Mesa 3D
ODE - Open Dynamics Engine




Back (だるだる団)