いまどきのPyOpenGLのインストール

Pythonのバージョンは2.5.2
●numpy, PILをインストールするべし。
http://numpy.scipy.org/
http://www.pythonware.com/products/pil/


●次に、setuptoolsのインストール
http://peak.telecommunity.com/DevCenter/setuptools#installing-setuptools
↑ここから、
ez_setpu.py
をダウンロードして
ez_setup.py setuptools==dev
を実行するが、proxyの認証が通らず断念した。


代わりに
http://pypi.python.org/pypi/setuptools#installation-instructions
↑ここから、
setuptools-0.6c9.win32-py2.5.exe
をダウンロードして、実行したらうまくった。


●PyOpenGLのインストール
SourceForge.net: PyOpenGL: Files
↑ここから、
PyOpenGL-3.0.0b8.zip
をダウンロード
解凍して、その中のsetup.pyを以下のように実行。
setup.py install
これでOK。


以下の.exeファイルが、いつのまにかダウンロードできるようになっている。
PyOpenGL-3.0.0b8.win32.exe
これを実行すれば、setuptoolsを使わずにインストールできたかも。
この.exeファイルは、pythonのバージョンは関係ないのかな?

OpenGLのマトリックスの行と列

移動が右に来る(A)かそれとも下にくる(B)なのか?

(A)
1 0 0 x
0 1 0 y
0 0 1 z
0 0 0 1
(B)
1 0 0 0
0 1 0 0
0 0 1 0
x y z 1
OpenGLのマニュアルには(A)タイプで記述してあるが、試してみる。
glMatrixMode(GL_MODELVIEW);
glPushMatrix();	
glLoadIdentity();
glTranslatef(2.0f, 3.0f, 4.0f);

GLfloat m[16];
glGetFloatv (GL_MODELVIEW_MATRIX, m);

glPopMatrix();
この結果をデバッガで表示すると以下のようになる。
m[12]	2.0000000	float
m[13]	3.0000000	float
m[14]	4.0000000	float
(B)タイプなのか? glの時は(A)だったような… glのコードをOpenGLに移植した事もあるけど、忘れてしまった。 謎が解けた。OpenGLのマニュアルのマトリックスは、以下の配列の並びで記述してあるようだ。 行と列が逆のような気がするけど…
m[0] m[4] m[8] m[12]
m[1] m[5] m[9] m[13]
m[2] m[6] m[10] m[14]
m[3] m[7] m[11] m[15]

Open GL のFBOでオフスクリーンレンダリング

OpenGLでオフスクリーンレンダリング: framebuffer object
renderbufferてのがわかりにくい。
というのは、framebufferには、texturebufferとrenderbufferがアタッチできるようだけど。
texturebufferがカラーバッファ、renderbufferがデプスやステンシル等のその他のバッファと思いきや、
renderbufferでカラーバッファも作れるような感じ。
renderbufferのカラーバッファには意味あるのか?
texturebufferでデプスバッファも作れるし…

Depth Peeling

床井研究室 - Depth Peeling
○○エンジンでも使っていたみたいで、言葉だけ知ってたけどこういうことだったのか。
これを使うとレンダリングパスが増えそう。大丈夫なのかな。
DirectXだと、Zバッファの値が、取り出せないけど、それは問題ないか。