15/08/27 18:12:51.54 VxmGCqDu.net
クロスプラットフォームの3D API OpenGL 及び次世代のローレベルAPI Vulkan に関する話題を扱うスレッド。
現在の最新バージョンは4.5
URLリンク(www.opengl.org)
URLリンク(www.khronos.org)
== OpenGLと一緒に使われるツール&ライブラリ ==
苦労したくなかったらとりあえず入れとけ。
・glx: XからOpenGLを使うためのライブラリ。普通は直接は使わず意識する事はない
・glut: クロスプラットフォームなツールキット。でもさすがに古くさい
・GLFW より新しいマルチプラットフォームなツールキット
・glew: これを入れないと拡張機能が使えないor使いにくい
・glxgears: 歯車が回るベンチマーク。-infoでOpenGLのバージョンが見られる。OpenGLの動作確認はこれで
・glxinfo: 自分の使っているカードのOpenGLの機能が全てリストアップされる。
・OpenTK C#からOpenGLを簡単に使えるようになる。VC#の強力なIntellisenseとあわせてサクサク開発可能。
・OpenSceneGraph: OpenGL を高度に抽象化し、利便性を高めたラッパー。C++ ライブラリ
・OpenGL Mathematics (GLM): GLSL 文法ライクの C++ 数学ライブラリ
== チュートリアルサイト ==
床井研究室: URLリンク(marina.sys.wakayama-u.ac.jp)
OpenGL de プログラミング: URLリンク(wiki.livedoor.jp)
NeHe: URLリンク(nehe.gamedev.net)
Tutorials for OpenGL 3.3 and later URLリンク(www.opengl-tutorial.org)
Learning Modern 3D Graphics Programming URLリンク(www.arcsynthesis.org)
== 前スレ ==
OpenGLスレ Part21
スレリンク(tech板)
== 関連スレ ==
【O3D】HTML5用 3D API WebGL 【Canvas:3D】
スレリンク(tech板)
OpenGL 2.0 専用スレ
スレリンク(tech板)
2:デフォルトの名無しさん
15/08/27 18:13:59.79 Ifj661nZ.net
== 必読書 ==
-- CG入門 --
OpenGL以前の普遍的なCGの概念。
CG-ARTS協会の3冊は初心者向け。あとの2冊は上級者向け。
・コンピュータグラフィックス (CG-ARTS協会)
・ビジュアル情報処理 (CG-ARTS協会)
・ディジタル映像表現 (CG-ARTS協会)
・ゲーム制作者になるための3Dグラフィックス技術
・ビジュアルコンピューティング 3次元CGによる画像生成
-- 初心者用 --
・GLUTによるOpenGL入門
・GLUTによるOpenGL入門2 テクスチャマッピング
・OpenGL ES 2.0 プログラミングガイド
-- 上級者用 --
・OpenGL Shading Language (橙本)
・Shader Xシリーズ
・GPU Gemsシリーズ
・GPU Proシリーズ
3:デフォルトの名無しさん
15/08/27 18:14:34.65 Ifj661nZ.net
== 必読書2 ==
-- モダンなOpenGL --
シェーダーベースの最新のOpenGLの学習
・OpenGL 4.0 シェーディング言語 -実例で覚えるGLSLプログラミング
・OpenGL SuperBible: Comprehensive Tutorial and Reference
・OpenGL 4.0 グラフィックシステム
-- 数学 --
・ゲームプログラミングのための3Dグラフィックス数学
・実例で学ぶゲーム3D数学
・ゲーム開発のための数学・物理学入門
-- 過去の書籍 --
有名だが古いバージョンのOpenGLをもとに書かれているためすでに時代遅れ
通常は買う必要はない
・OpenGLプログラミングガイド 原著第5版 (赤本)
・OpenGL Reference Manual (青本)
== チュートリアルサイト2 ==
OpenGL Step By Step: URLリンク(ogldev.atspace.co.uk)
OpenGL Samples Pack: URLリンク(ogl-samples.g-truc.net)
4:デフォルトの名無しさん
15/08/27 18:43:34.00 N4V/w5+H.net
URLリンク(wakarandouga3.blog.fc2.com)
エロいお姉さんwwwwwwwwwwwwwwww
5:デフォルトの名無しさん
15/08/28 00:40:51.72 J/FclS9C.net
今、点と線を描くプログラム↓を書いています
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0, 1.0, 1.0);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_DOUBLE, 0, point_data);
glDrawArrays(GL_POINTS, 0, point_num);
glutSwapBuffers();
そこでline_data[]内にある頂点データを使っていくつかの直線を描く関数を上のプログラムに追加したいのですが、どうすればいいでしょうか?
6:デフォルトの名無しさん
15/08/28 02:07:15.11 Ev5A+taN.net
>>1乙
7:デフォルトの名無しさん
15/08/28 11:34:06.01 1j3Jp4TC.net
>>1乙!
8:デフォルトの名無しさん
15/08/28 12:42:16.17 PU1M3ZK/.net
>>5
点のはちゃんと動いてんの?だったら9割方出来てんじゃん…
9:デフォルトの名無しさん
15/08/28 15:20:19.68 J/FclS9C.net
>>8
はい、点の方はちゃんと動いています!
ここに線を加えようとしても上手くいかず困っています
10:デフォルトの名無しさん
15/08/28 18:33:28.46 PU1M3ZK/.net
>>9
ほとんどエスパー状態だが…LINESとLINE_STRIPの区別できてる?
11:デフォルトの名無しさん
15/08/28 20:15:55.51 J/FclS9C.net
>>10
はい、繋がっていない線をいくつか描きたいのでLINESの方を使いたいです
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0, 1.0, 1.0);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_DOUBLE, 0, point_data);
glDrawArrays(GL_POINTS, 0, point_num);
glVertexPointer(2, GL_DOUBLE, 0, line_data);
glDrawArrays(GL_LINES, 0, line_num);
glutSwapBuffers();
↑のように付け加えてみましたが、この書き方はだめなようです
直線を描くにはどういう書き方をすればいいのでしょう?
12:デフォルトの名無しさん
15/08/28 20:24:29.73 PU1M3ZK/.net
>>11
line_dataに2×線の数だけ座標が入ってるか?
13:デフォルトの名無しさん
15/08/28 20:40:54.15 J/FclS9C.net
あ、原因が分かりました
>>12も含めて見直していると型がdoubleでなくshortになっていることに気が付きました
ありがとうございました
(昨日あれだけ見直しても気付かなかったなんて・・・)