glPointSize 関数
glPointSize 関数は、ラスター化されたポイントの直径を指定します。
構文
void WINAPI glPointSize(
GLfloat size
);
パラメーター
-
size
-
ラスター化されたポイントの直径。 既定値は 1.0 です。
戻り値
この関数は値を返しません。
エラー コード
glGetError 関数では、次のエラー コードを取得できます。
名前 | 意味 |
---|---|
|
size が 0 以下でした。 |
|
この関数は、 glBegin の呼び出しと glEnd の対応する呼び出しの間で呼び出されました。 |
解説
glPointSize 関数は、エイリアス化されたポイントとアンチエイリアス化されたポイントの両方のラスター化された直径を指定します。 1.0 以外のポイント サイズを使用すると、ポイントのアンチエイリアシングが有効になっているかどうかによって異なる効果があります。 ポイントアンチエイリアシングは、引数GL_POINT_SMOOTHを使用して glEnable と glDisable を呼び出すことによって制御されます。
ポイントアンチエイリアシングが無効になっている場合、実際のサイズは、指定されたサイズを最も近い整数に丸めることで決定されます。 (丸め結果の値が 0 の場合は、ポイント サイズが 1 の場合と同じになります)。丸められたサイズが奇数の場合、ポイントを表すピクセル フラグメントの中心点 (x,y) は として計算されます。
(xw + .5、 yw + .5)
ここで、w 添字はウィンドウ座標を示します。 (x,y) の中央に丸められたサイズの正方形グリッド内にあるすべてのピクセルがフラグメントを構成します。 サイズが偶数の場合、中心点は
(xw + .5、 yw + .5)
ラスタライズされたフラグメントの中心は、(x,y) を中心とする丸められたサイズの正方形内の半整数のウィンドウ座標です。 非アンチエイリアス化ポイントのラスター化で生成されたすべてのピクセル フラグメントには、同じ関連データが割り当てられます。点に対応する頂点の頂点の。
アンチエイリアシングが有効になっている場合、ポイントラスタライズは、現在のポイントサイズと等しい直径を持ち、点(xw,yw)を中心とする円内に横たわる領域と交差する各ピクセル正方形のフラグメントを生成します。 各フラグメントのカバレッジ値は、対応するピクセル正方形を持つ円形領域の交差部分のウィンドウ座標領域です。 この値は保存され、最後のラスター化手順で使用されます。 各フラグメントに関連付けられたデータは、ラスター化されるポイントに関連付けられたデータです。
ポイントアンチエイリアシングが有効になっている場合、すべてのサイズがサポートされるわけではありません。 サポートされていないサイズが要求された場合は、サポートされている最も近いサイズが使用されます。 サイズ 1.0 のみがサポートされていることが保証されます。他のユーザーは実装に依存します。 サポートされているサイズの範囲と、範囲内でサポートされているサイズ間のサイズの違いは、GL_POINT_SIZE_RANGEおよびGL_POINT_SIZE_GRANULARITYの引数を使用して glGet を 呼び出すことによって照会できます。
glPointSize で指定されたポイント サイズは、GL_POINT_SIZEクエリが実行されると常に返されます。 エイリアス化されたポイントとアンチエイリアシングされたポイントのクランプと丸めは、指定された値には影響しません。
アンチエイリアシングされていないポイント サイズは、実装に依存する最大値にクランプできます。 この最大値はクエリを実行できませんが、アンチエイリアス化されたポイントの最大値を下回らず、最も近い整数値に丸める必要があります。
次の関数は 、glPointSize に関連する情報を取得します。
glGet と引数 GL_POINT_SIZE
glGet と引数 GL_POINT_SIZE_RANGE
glGet と引数 GL_POINT_SIZE_GRANULARITY
glIsEnabled with argument GL_POINT_SMOOTH
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー |
|
ライブラリ |
|
[DLL] |
|