next up previous contents index
Next: 1.6 Terminology Up: 1 Introduction Previous:1.4 API Version 3

1.5 Conventions

GLUT ウィンドウとスクリーンの座標値はピクセルで表されます. スクリーンあるいはウィンドウの左上隅が (0,0) です. X 座標は右方向へ増加し,Y 座標は下方向へ増加します.

GLUT では整数の識別子は0ではなく1から始まります. よって,ウィンドウ識別子やメニュー識別子,メニューアイテムのインデックスは 0ではなく1から始まります.

GLUT の ANSI C バインディングにおいて, ほとんどのルーチンで基本的な型( int char*)が 用いられています.パラメータが直接 OpenGL に渡されるルーチンにおいては OpenGL の型(GLfloatなど)が用いられます.

GLUT のヘッダ・ファイルは以下のようなインクルード文によって インクルードされなければなりません.

	#include <GL/glut.h>
非常に大きなウィンドウシステム・ソフトウエアのベンダー (名前は伏せておきます)が,OpenGL の API が彼らのウィンドウシステム APIに依存していないということを評価する能力が明らかにないので, 移植性のある ANSI C GLUT プログラムを書くためには 直接 <GL/gl.h> <GL/glu.h>を含むべきでは ありません. その代わり,ANSI C GLUT プログラムは, 必要なOpenGL と GLU 関連のヘッダファイルを含むために, <GL/glut.h>を用いるべきです.

ANSI C GLUT ライブラリは Unix system では典型的な libglut.a という 名前になっています.GLUT プログラムは,システムの OpenGL ライブラリと GLUT ライブラリ(と,それらのライブラリが潜在的に依存しているライブラリ) とリンクする必要があります.ウィンドウシステム依存のライブラリ・ セットもGLUTプログラムとリンクする必要があるでしょう. 例えば,X11 GLUT インプリメンテーションを用いているプログラムは 典型的に Xlib,X extension ライブラリ,X Input extension ライブラリ, X miscellaneous utilities ライブラリ,math ライブラリと リンクする必要があります. X11/Unix におけるコンパイル例は以下のようになります:

	cc -o foo foo.c -lglut -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm

		-lXmu  : X miscellaneous Utilities library
		-lXi   : X input extension library
		-lXext : X extension library
		-lX11  : Xlib
		-lm    : math library


next up previous contents index
Next: 1.6 Terminology Up: 1 Introduction Previous:1.4 API Version 3
Mark Kilgard
Fri Feb 23 08:05:02 PST 1996