OpenGL®球体とは何ですか?

OpenGraphics®(OpenGL®)球体は、最も基本的なレベルで、一連の三角形または四辺形で構成された3次元(3D)オブジェクトであり、その頂点はすべて中心点から等距離です。これは、OpenGL®球が任意の角度から表示されると、視聴者にとって完全な円としてアウトラインが表示されることを意味しますが、照明とシェーディングはボリュームのような外観を与える可能性があります。 OpenGL®球の作成に使用される頂点の数は、実際の球体の近似でオブジェクトの滑らかさを決定し、12ポイント未満が球体とは見なされないオブジェクトを作成します。球体は多くのグラフィカルなアプリケーションとライブラリで形状の原始的と見なされますが、OpenGL®には球体をレンダリングする生来の機能はありません。つまり、OpenGL®ユーティリティツールキット(GLUT)などの補足ツールキットを使用して、手動で形状を生成するためにコードを作成しないようにする必要があります。OpenGL®のICESは、ある程度の滑らかさで球体を生成するために使用できるポイントの量が12で、Icosahedronとして知られる20の三角形の面を持つオブジェクトを作成します。さらに処理することなく、この方法で構築されたOpenGL®球体は、エッジの周りに目に見える鋭い角を持ち、一部のアプリケーションでは許容される可能性があります。より丸い球を達成するには、各顔をさらに細分化する必要があります。

icosahedronを細分化するために、それが含む頂点の数を増やし、滑らかなOpenGl®球体を形成するには、既存の各三角形の各エッジの中心に新しい頂点を作成することが含まれます。これは、各三角形の面に4つの三角形が含まれることを意味します。サブディビジョンは必要なだけ継続できますが、ポイントを指数関数的に追加すると、レンダリング時間が高いオブジェクトが迅速に作成され、翻訳が扱いにくいオブジェクトを作成できます。

somにもかかわらず数学的便利さのEOpenGL®球体は、頂点座標から容易に計算できる表面正規などのプログラマーを提供し、球体をテクスチャリングすると、いくつかの複雑さが生じる可能性があります。球体に投影される標準の2次元(2D)テクスチャを使用すると、球体の極の近くの三角形の形状が圧縮されるため、テクスチャ画像の上部と下部の領域が圧縮されることを意味します。これを克服するために、キューブマッピングを使用するか、プログラマーがオブジェクトのテクスチャ座標を手動で生成できます。

OpenGL®Sphereを生成するためにユーティリティライブラリを使用することについて1つの要因に注意する必要があります。 GLUTまたは同様のツールキットによって生成される球体は、OpenGL®自体内で変更、最適化、管理が困難な場合があります。このため、カスタム書かれたコードを使用してOpenGL®Sphereを生成して、作成され、可能な限り最も効率的な方法で使用できることが有益な場合があります。プログラムをithin。

他の言語

この記事は参考になりましたか? フィードバックをお寄せいただきありがとうございます フィードバックをお寄せいただきありがとうございます

どのように我々は助けることができます? どのように我々は助けることができます?