私は、視点で示された地形図を含むOpenGL ES 1でゲームを構築しています。私はマップ上にいくつかのスプライトを描画し、距離に応じて拡大したいと思っています。私はスプライトを描くことができますが、カメラからどのくらい離れていても、常に同じサイズです。OpenGL ESの描画スプライトは、距離に応じて縮尺が変わります。
私はカメラからの距離、ビューポートの幅などに基づいてサイズを動的に計算することができると信じていますが、サイズを自動的に計算する方が好きです。
はここに私のコードです:
GLfloat quadratic[] = { 1.0f, 0.0f, 0.0f };
glPointParameterfv(GL_POINT_DISTANCE_ATTENUATION, quadratic);
glPointSize(40);
glPointParameterf(GL_POINT_SIZE_MAX, maxSize);
glPointParameterf(GL_POINT_SIZE_MIN, 1.0f);
glTexEnvf(GL_POINT_SPRITE_OES, GL_COORD_REPLACE_OES, GL_TRUE);
glEnable(GL_POINT_SPRITE_OES);
GLfloat point_array[] =
{
territoryOrigin.x, territoryOrigin.y, 10.0,
};
glVertexPointer(3, GL_FLOAT, 0, point_array);
glDrawArrays(GL_POINTS, 0, 1);
glTexEnvi(GL_POINT_SPRITE_OES, GL_COORD_REPLACE_OES, GL_FALSE);
glDisable(GL_POINT_SPRITE_OES);
このES 1またはES 2ですか? –
ES 1.元の質問を更新します。 –
オルソビューを使用していませんか?あなたの設定でglOrthofまたはglFrustumfを使用しますか? – led42