0

球の周りに軌跡を描きたいです。各ポイントは、緯度と経度の座標で構成されています。そのため、最初の回転 (長さ)、2 番目の回転 (緯度)、および平行移動 (z) を実行して、各ポイントを配置することにしました。

glBegin()でも、 と の間で変換を行うと、線が引けませんglEnd()... 禁止です..

それを行う方法について何か考えはありますか?変換を行う代わりに、lat/lon/alt から各ポイント (x、y、z) の座標を自分で計算する必要がありますか? (私は変換が自分で仕事をするよりも速いと読みました...)

4

2 に答える 2

0

変換を行う頂点シェーダーをアップロードしたくない場合を除き、はい、そうする必要があります。また、glRotate などの関数は、OpenGL 3.0 以降では実際に廃止されています。

そして「遅い」は相対的です。glRotate() などの呼び出しを使用して回転を行うと、各頂点の 3d 空間での位置を計算するよりも遅いことは確かです。

関連する注意事項として、それが軌道である場合、3D 空間で直線として描くのではなく、ほぼ確実に地球上の大円をたどりたいと思うでしょう。

于 2013-07-08T20:02:28.080 に答える