[解決済み] gluPerspectiveパラメータ - その意味するところは?
質問
はどうなんでしょうね。
gluPerspective
パラメータを使用します。
すべての例で、私は
fovy
は45-60度程度に設定されています。
別の値に設定してみても、オブジェクトは消えてしまうだけです。
どうすればいいのでしょうか?
は
aspect
の値は常に比率であるべきですが、なぜそれを変更する必要があるのでしょうか?
zNear, zFar
- また、通常の値は10前後で500以上ですが、これは何を反映しているのでしょうか?
解決方法は?
4つのパラメータを定義する目的は ビューフラストラム のようなものです。
このため、パラメータを使って4x4の行列を計算し、その行列を使って各頂点をいわゆるクリップ空間に変換します。このとき,ある頂点が錐体の中にあるかどうかを調べるのは簡単です.)
視野 パラメータは、基本的にカメラの位置だけでなく、画面の上部&ampを通過する平面との間の角度であり、カメラの位置と画面の下部を通過する別の平面。この角度が大きいと、より多くの世界を見ることができますが、同時に、見ることができるオブジェクトは小さくなります。
その影響を観察するために、キー操作でfovを徐々に増やしたり減らしたりできる簡単なアプリをコーディングして、球体やその他の基本的なオブジェクトをレンダリングし、fovを変更するとどうなるかを見てみるといいと思います。
アスペクト比 は、ビューポートのアスペクト比です。(上の図では、ビューポートはクリッピング平面に近いところにあります)ビューポートのアスペクト比が異なる場合があるので、これを自由に定義できることは理にかなっています。
zNear & zFarについて の値は、カメラ位置と近傍および遠方のクリッピング平面の距離をそれぞれ定義します。zNear よりもカメラに近いもの、または zFar よりも遠いものは表示されません。両方の値は > 0 でなければならず、明らかに、zFar > zNear となります。 zFar は、理想的には、レンダリングしたいものがすべて見えるように選択すべきですが、必要以上に大きくすると、深度バッファの事前設定 & が無駄になり、z-fighting と呼ばれるちらつき効果につながることがあります。同様に、zNearをカメラに近づけすぎると、同じ効果を引き起こす可能性があります - 実際、妥当なzNear値を持つことはzFarよりも重要です。なぜこのような現象が起こるのかを正確に知りたい場合は、次のような詳細な説明を読むとよいでしょう。 これ または これ
関連
-
[解決済み] X リクエストが失敗したときのエラー。BadValue (整数パラメータが操作の範囲外です)
-
[解決済み] FreeGLUTとGLFWの違いは何ですか?[クローズド]
-
[解決済み] OpenGL - なぜ、インデックスのためのGL_ELEMENT_ARRAY_BUFFERなのですか?
-
[解決済み] OpenGL - GLenumはどのように符号なし32ビット整数ですか?
-
[解決済み] 最新のOpenGLで複数のテクスチャをレンダリングするには?
-
[解決済み] gl_PointSizeの動作について
-
[解決済み] glutDisplayFuncとglutPostRedisplayの関係性を理解する。
-
[解決済み] FOVXの計算(openGL)
-
[解決済み] OpenGLのフレームバッファとレンダーバッファの概念と違いについて教えてください。
-
[解決済み] バーテックスシェーダとフラグメントシェーダの比較 [重複].
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] テスト
-
[解決済み] X リクエストが失敗したときのエラー。BadValue (整数パラメータが操作の範囲外です)
-
[解決済み] OpenGL - なぜ、インデックスのためのGL_ELEMENT_ARRAY_BUFFERなのですか?
-
[解決済み] gl_PointSizeの動作について
-
[解決済み] glDeleteBuffers()はいつ呼び出すべきですか?
-
opengl glGetIntegerv エラーを使用します。アクセス違反 ロケーション0x0000000000000000を実行中
-
[解決済み] 最新のOpenGLでレイトレーシングを行うには?
-
[解決済み] OpenGLのフレームバッファとレンダーバッファの概念と違いについて教えてください。
-
[解決済み] GLSLシェーダーの正しいファイル拡張子は何ですか?[クローズド]。
-
[解決済み] glActiveTextureとglBindTextureの違いと関係