どのようにオブジェクトに正しい法線を置くことができますか? .offから法線を含むオブジェクトに変換する方法がありますか?法線を使ってOpenGLで.offを操作する
答えて
オフファイルは、通常、面または頂点ごとの特殊属性をサポートしていないため、法線はありません。
あなたができる最も簡単なことは、よく知られていて簡単に実装できるface-normalアルゴリズムの1つを使って法線を計算することです。 Hereがいくつかの例です。
テクスチャ(別名bump mapping)で法線を見ることもできます。基本的に3Dプログラムでモデルの法線マップを生成し、何らかの種類のペリピクセルシェーディングを使用して、通常のテクスチャを使用するためにシェードをバインドする必要があります。
このようにすることの利点は、ポリゴンの数を増やすことなくより詳細にすることができることです。 1つの平坦なポリゴンに1つのざらついた凹凸のある石パターンを生成するようなことができます。
また、法線を手続き的に生成する場合は、平滑なシェーディングを混在させることはできません。
ノーマルマッピングでは、各頂点に接線空間が必要です。また、頂点には法線が含まれています。したがって、それは問題の解決策ではありません。 –
@AxelGneiting:モデル空間で法線マップを計算することは完全に可能です。最近はあまり一般的ではありませんが、プログラマブルハードウェアが存在する前はかなり普及していました。 – datenwolf
- 1. OpenGLとGLFWを使ってC配列を操作する
- 2. LinuxでOpenGLを使ってピクセルを操作する単純なフォーム
- 3. ハスケルでOpenGLを使って線を描く
- 4. xcodeを使って簡単なOpenGL C++プログラムを作る方法
- 5. OpenGLでオブジェクトを個別に操作/変換する方法は?
- 6. ComboboxのselectedItemを使ってオブジェクトを操作する方法
- 7. zend mailを使ってメールメッセージを操作する方法は?
- 8. pycharmを使ってpysparkとmongoDBを操作する方法IDE
- 9. phpのボタンを使ってカウントダウンタイマーを操作する方法は?
- 10. タグを使ってUIButtonsを操作する方法
- 11. DOMを使って縦線を作成する方法は?
- 12. LWJGL/OpenGLで基本線分を作る方法
- 13. OpenGl - キューブの法線を計算する
- 14. マウスで線を操作する方法は?
- 15. Android OpenGL ES法線
- 16. OpenGL-ESを使ってアンドロイド上でポンを作る
- 17. フラッシュを使って作成したiPhoneアプリの操作方法
- 18. eclipseを使ってグラフィカルレイアウトでandroid xmlを操作するには?
- 19. addClassとremoveClassを使ってタブを手で操作する
- 20. OpenGL glUniform1i無効な操作
- 21. シェーダから操作するOpenGLオブジェクト
- 22. OpenGLのアンドロイドで線を描く方法
- 23. OpenGL ESを使ってグラフを作成する
- 24. 文字を使ってcppでJPEGを操作する方法は?
- 25. ツールバーのオートローテーションを使ってOpenGL ESテンプレートを作成する方法
- 26. テンプレートを定義してJavaを使って操作する
- 27. 線形レイアウトの操作方法は?
- 28. GenVertexArraysでのOpenGLの無効な操作
- 29. ウェブスクレイピング。 Pythonでアクティブなリンクを使って操作する方法は?
- 30. OpenGLで視界の法線ベクトルを特定する方法は?
このメソッドは機能しました。しかし、私はテクスチャを入れたい、私は船にいくつかの色を意味する。どうやってやるの?オブジェクトの別のフォーマットがありますが、私はOpenGLでそれらの上に色と法線を持つ例のために船を描くことができますか?ありがとうございました! –
@ StanciuAlexandru-Marian OpenGLはフォーマットについて何も知らない。ファイルを自分で解析し、ファイルから抽出した情報を使ってレンダリング機能を設定する必要があります。あなたは自由に任意のテクスチャを使用することができます。 – pmr