OpenGLで顔の法線を使用して私の人間のモデルを照らすと、それぞれの顔がモデル上でどこにあるかが非常に明らかです。頂点の法線を使用しても、ライティングはかなりスムーズになりますが、それでも目立ちます。追加の頂点(例:細分)を追加せずに有機モデルを滑らかにするテクニックはありますか?OpenGLで顔の端を滑らかにするテクニック
2
A
答えて
6
あなたがスムーズに面し有効にするために忘れているかもしれない頂点ごとに法線を持つ単一の顔を見ている場合:それは同じ位置にすべての頂点も同じ通常のを持っていることを確認する助けていない場合
glShadeModel(GL_SMOOTH);
を。しかしこれは自動的にブレンダーで行うべきです。また、モデルのポリゴン数が少なすぎる可能性もあります。そうであれば、より多くのポリゴンを使うか、basszeroが言ったことをする必要があります。 Create a normal mapをGLSLシェーダと一緒に使用してください。
4
あなたが高解像度モデル/メッシュまたは多分細分化または他の空想の方法によってHIGHRESモデルを作成することができますまともな3d modeling toolへのアクセスを持っていれば...
GLSLper-pixel-lighting + normal maps
UPDATE :
http://www.blender.org/development/release-logs/blender-246/render-baking/
1
はいさまざまな手法があります。 1つは、まず各顔の法線を計算し(顔の頂点にはおそらく使用しています)、これらの法線を使って各頂点の新しい法線を計算します。
ここでは、隣接する5つの三角形の平均を計算するoneです。
乾杯!
関連する問題
- 1. OpenGL ES 2.0シェーダで滑らかなテクスチャライン
- 2. 滑らかなOpenGLマウスカメラを作成する
- 3. OpenGLで滑らかで大きなポイントを取得
- 4. スクラッチでスプライトモーションを滑らかにする
- 5. のOpenGL:複雑かつ平滑化ポリゴンに私のOpenGLのプロジェクトで
- 6. Javascript滑らかな滑り?
- 7. OpenGL ESで面ごとの法線を指定し、非平滑/平滑シェーディングを実現できますか?
- 8. イメージはOpenGLで平滑化されますか?
- 9. ナビゲーションメニューバーが滑らかに滑っていないのはなぜですか?
- 10. 顔認識を行う最先端の方法は何ですか?
- 11. Android OpenGLの照明は、顔のサイズに依存します
- 12. QGraphicsSceneで滑らかなアニメーション
- 13. 滑らかなペイントブラシ
- 14. 滑らかなスクロール
- 15. リンクからページを見つけるテクニック
- 16. iosのソースイメージから顔の肌色を変更するには?
- 17. javafxの折れ線グラフを滑らかにするには?
- 18. 移動するRectをより滑らかにする
- 19. 滑らかなエフェクト(フレックス)
- 20. 滑らかなコードが、SIGABRT
- 21. 滑らかな3Dスプライン
- 22. 滑らかなCSSグラデーション
- 23. 滑らかなソフト削除
- 24. Matlab `imagesc`:滑らかな色で表示するには?
- 25. ベクトルをベクトルに滑らせるアルゴリズム
- 26. スネークゲームで滑らかなアニメーション(java)?
- 27. UISliderが滑らかでない
- 28. HTML5キャンバスで滑らかなウォーキングスプライト
- 29. ビットマップが滑らかに見えない
- 30. 顔検出アルゴリズムは15x15ピクセルの顔ですか?
私はBlenderを使用しています。性能上の理由から私のモデルは低ポリである。フォンシェーディングは有望そうだが、OpenGLによってサポートされていないので、その利点はパフォーマンスのヒットを保証するものではない。 – Kai
これはOpenGL ES 1.1の問題(iPhoneなど)ではない場合、ハードウェアはおそらくシェーダをサポートしており、フォンシェーディング+ノーマルマッピングを実装するシェーダを書くことができます。 –
右のように、Blenderでhighresモデルを作成し、それを使って法線マップを生成します。低解像度バージョンを作成し、ノーマルマップ+シェーダを使用して、最終的にレンダリングされた製品に欠落した頂点の詳細を作成します – basszero