これは、プログラムで四角形を描画するために使用するコードです。
glBegin(GL_QUADS);
glTexCoord2f(0.0f, maxTexCoordHeight); glVertex2i(pos.x, pos.y + height);
glTexCoord2f(0.0f, 0.0f); glVertex2i(pos.x, pos.y);
glTexCoord2f(maxTexCoordWidth, 0.0f); glVertex2i(pos.x + width, pos.y);
glTexCoord2f(maxTexCoordWidth, maxTexCoordHeight); glVertex2i(pos.x + width, pos.y + height);
glEnd();
たとえば、次のように、指定されたテクスチャを持つ単純な長方形を描画します。
OpenGL で次のような境界効果を実現できるかどうかお尋ねしたいと思います。
ご覧のように、このタイルの内側には単純な青色の背景があり、個別に処理できます - テクスチャのサイズが自動的に変更されるだけです。これは、私が提供したコード スニペットで簡単に実現できますが、問題は境界線にあります。
GL_LINES
境界線が 1 つの色であると想定されている場合、テクスチャの周りを使用して空の塗りつぶされていない長方形を描画することもできますが、そうではありません。
また、タイルが常に固定サイズであれば、それに合わせたテクスチャを用意できますが、テクスチャとして使用するビットマップ ファイルを変更せずに簡単にサイズ変更できる必要があります。
したがって、基本的な OpenGL 関数では不可能な場合、最も効率的かつ/または簡単なこの効果を達成するためのアプローチは何ですか?
編集: 2D である必要があります。