テッセレーション!
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

テッセレーション!

2014-06-10 21:11
  • 3
  • 15
ようやくDirectX11対応のグラフィックカードを購入しました。
なので早速テッセレーションです。

実装したのはPN-AEN(Point-Normal Triangles using Adjacent Edge Normals)です。
クラックフリーな曲面補間テッセレーションアルゴリズムですね。

CRACK-FREE POINT-NORMAL TRIANGLES USING ADJACENT EDGE NORMALS

「テッセレーションって何?」「なんか分からないけど期待」など、色々と思っている方もいらっしゃると思うので、とりあえずテッセレーション見てみたい方に向けて公開です。

ご注意
・まだ全然色々動いていません。終了時にエラーで落ちるかもしれませんが、気にしないでください。エラー報告も不要です。
・DirectX11対応のグラフィックカード必須です。
・実装方法や内容等は今後変更となる可能性があります。

Download


テッセレーション使い方
音量の上あたりにある謎のトラックバーを動かすと、テッセレーションが効きます。
ワイヤーフレーム表示にすると効果が分かりやすいと思います。


その他
テッセレーションによる曲面補間は、一般的に「太る」ことになります。
平面→曲面にすると膨らむので、当たり前ですね。
なので、髪とかには結構有効に働くのですが、口の中などを作りこんでいるモデルは、口の中が太って飛び出してくることもあります。

また今回、最低限の実装となり、パフォーマンス最適化やLoDは実装していません。
ご了承ください。









広告
×
早速 試させてもらいました。うちの自作モデル(頂点4000ぐらい)が綺麗に曲面になってくれました。
どう実装されていくのか楽しみにしています。がんばってください。
38ヶ月前
×
お疲れ様です。早速試させていただきました。
私の環境(Windows7 64bit版)では、PMD、PMXファイルを読み込んだときに以下のようなエラーが出ました。
「DLL'Matrix.dll'を読み込めません:指定されたモジュールが見つかりません。(HRESULTからの例外:0x8007007E)」
参考になれば幸いです。

一応、このバージョンではないのですが、現行バージョンでも別の問題が起きたので報告させていただきます。
今、自分が作っているエフェクトをMMM向けに書き直そうとしているのですが、どうやらオフスクリーン描画のエフェクト割り当てに使用する"self"と、コントロールオブジェクトで使用する"(self)"および"(OffScreenOwner)"がうまく機能していないようです。
割り当ての"self"は、使用しても自分自身の名前として判定されていないようです。
コントロールオブジェクトは座標の取得に用いたのですが、(self)を使うと、エフェクトを読み込んだ際にできる.xオブジェクトの座標になり、(OffScreenOwner)を使うと、モデルを指定できずfloat3(0,0,0)になってしまいます。
自分の環境では、現在公開されているMMMの32bit版、64bit版のどちらのバージョンでも同様でした。
対応していただけるとありがたいです。
38ヶ月前
×
GPUのドライバーを最新にアップデートするとことで、"Matrix.dll"エラーが表示されなくなり、モデルを読み込むことができました
38ヶ月前
コメントを書く
コメントをするには、
ログインして下さい。