プロフィール

Na-7

Author:Na-7
SE(システムエンジニア)として約15年間システム系ソフト会社を勤めあげ、2008年3月退社。現在、ゲーム制作会社設立を目指して活動中。


アクセスカウンター


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


DATE: CATEGORY:スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
DATE: CATEGORY:Softimage Mod Tool
これがアイソポイント?
謎のポイント
Softimageで「カーブの調整」ツール起動中に、セグメント(実線)上の任意の場所をクリックすると黄色いポイントが出現する。これがアイソポイント?



前回の続きです(2回に分けたのでご注意ください)。

◎カーブ?

旗手モデルの旗はボーンアニメで作る予定でしたが、Q&Aを読むうちに、クロス(シミュレーション)に興味が出てきました。XNAでどうなるかわかりませんが、良い機会ですのでクロスを試してみましょう!

…で、クロスの前にまずこちらでシミュレーションのチュートリアルを勉強しようとしたら、最初にカーブが出てきていきなり躓(つまず)きました。

そういえば、カーブは全然やったことなかったなぁ…。
シミュレーションより先に、カーブを修得せねば(汗)

とりあえず適当に描こうとすると、GIMPと操作方法が違うようで、思い通りのカーブを作れません。カーブはビデオやHPでは少し触れるだけというパターンが多いのですが、作成>カーブのメニューコマンドだけでも14個、修正>カーブは23個もあります。XNAで全て有効とは限らないし、違いをきちんと理解しないとまずいかも…。

というわけで、ヘルプでNURBSモデリングの基本からじっくり勉強することにしました。



◎NURBS

ヘルプには「NURBSとは、非ユニフォーム有理Bスプラインです。」と書かれています。…なんのこっちゃ?w

…よくわかりませんが、NURBSは、カーブやサーフェイス(曲面)を実装するための業界規格です(たぶん)。メタセコイヤやXNAもNURBSでサーフェイスを実装してるんじゃないですかね~?(たぶん)

NURBS関連用語メモ

カーブでポイントと言えばコントロールポイント(カーブの曲がり具合の制御)のことで、セグメント(実線)の繋ぎ目はノットと言うのですね。

これでようやく「ノットポイントでキュービックを描く」というコマンドが「3次カーブを描く」コマンドだと理解できるようになりました。

…いや、専門家にはこのコマンド名称が分かりやすいのかもしらんけど、一般人には分かりにくいって^^;



◎カーブの描画

NURBSは一通り理解したので、次はカーブです。細かい操作までチェックすると、意外にボリュームありますね。

カーブ描画関連メモ

カーブ関連では、5種類の描画ツールと‘カーブの調整’ツールが中心となります。‘カーブの調整’ツールでは、ベジュノットか非ベジュかで操作や右クリックメニューが異なるので注意しましょう。



◎曲線と直線の組み合わせ

ヘルプには「Softimageは同一のサブカーブ中のリニアと3次NURBSセグメントの共存をサポートしませんが、ベジェノットを使用して3次カーブ上で直線セグメントを取得できます。」とあります。
察するに、「修正>ノットセグメントをリニアに」のコマンドは、正確に言うとリニアではなく疑似リニア(1次カーブっぽく見えるだけで実は3次カーブ)ということでしょう。(たぶん)

もしそうであれば、直観的にわかりにくい上に不正確なのは頂けません。「カーブを直線的に」とか直観的にわかりやすいコマンド名称にして欲しいものです。ーー

ちなみに、次数はカーブ全体、多重度は個々のノットが保持しているという認識です。パラメータを参照して確認しましょう。

多重度がたくさん追加された状態

あら~…。

多重度の属性情報はどんどん増えるので履歴っぽいけど、オペレータスタックをフリーズしても減らないから別モノかもしれません。少し試してみたのですが、多重度が増える条件は単純ではなさそうで、結局「多重度はノット単位で保持する」説のウラは取れませんでした。



◎アイソポイント

ヘルプには「アイソポイントとは、カーブ/サーフェイス上の任意の場所です。」とあります。カーブの調整中に、セグメント(実線)上の任意の場所をクリックすると黄色いポイントが出現し、これを操作するとカーブのトレースを調整できるので、これがアイソポイントであろうと認識しました。

これがアイソポイント?

しかし、Selectメニューのアイソポイントボタンを押しても、先程のポイントは表示されず選択できません。ということは、先程のアレはアイソポイントではないってこと?うーん謎ですね~(^_^;



◎所感

以前は「XNAで動かなければ意味が無い」ってことで、どうしてもやる気が湧かなかったのですが、槍兵モデル再作成以降は自信が付いて学習意欲も上昇中。

ビデオで感触を掴み、チュートリアルで練習し、HPで基礎を学び、ヘルプで理論を抑え、Q&Aでヒントを貰い、実際に動かして確認する。メタセコやRockDeBone2は適用にやってても何とかなりましたが、Softimageは多角的に学習しないとダメですね。「基礎も応用も全て把握する」ぐらいの気概がなければ使うべきじゃないツールだということが呑み込めてきました。MOD TOOLという名前に騙されるな!w

あとは、勉強すればするほど次々と湧いてくる疑問をどこまで追求するのか?が難しいですね。疑問にこだわると時間がかかるし、無視したら勉強にならないし。少し調べて、時間がかかりそうなら保留して先に進むのがベターかもしれませんが、気分的にはいまいちスッキリしません(^_ー;



◎次回予告

実はまだカーブの学習終わってません。結構深いな~。

というわけで、次回はカーブの続きとサーフェイスを学習します。その後、パーティクルとクロスシミュレーションを修得し、旗手モデルの旗をクロスで作る予定です。

…ペース上げないとヤバイ(汗)

スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

コメント

>メタセコイヤやXNAもNURBSでサーフェイスを実装してるんじゃないですかね~?

ち、違う!(笑)

ご存知のように、一般的なモデルデータ上の各プリミティブは小さな三角形の平面です。なのでカメラがものすご~くアップになった場合には“三角形”の集合であることがバレてしまいます。

しかし三角形の3つの線分を3つのNURBS曲線にしておくと、それぞれの中間点を割り出せます。これをもとに、必要に応じて1つの三角形を複数の細かい三角形に分割してやれば、アップにも耐えられるわけです

こうした「プリミティブをあらかじめ用意しておいたデータよりも細かく分割する」手法を、テッセレーションと言うのですが、これをリアルタイムでやるにはDirectX10で採用されたジオメトリシェーダやDirectX11で採用されたテッセレータが必要になるため、DirectX9準拠のXNAでは未対応だと考えられます。


Metasequoiaにも、Catmull-Clark曲面などNURBSの代わりになるようなものはあります。ただこれもプリミティブをあらかじめソフト上で細かくするツールであって、ランタイム側で操作できるものではなさそうです(仮にプラグインを自作してそれらを出力しても、DirectX10やOpenGL3.2以降でしか使えない)。

御教授ありがとうございます

なるほど。テッセレーションという単語は聞いたことがありますが、そういう意味だったのですね。

NURBSとCatmull-Clarkについて少し調べてみましたが、NURBSは自由な曲面が表現可能で、Catmull-Clarkは表現力が劣る反面、レスポンスは良さそうです。

いずれにせよ、DirectX9ではテッセレーションができないので、三角形ポリゴン形式で出力したデータを渡してそのまま描画するしかないのですね。曲面アップはなるべく避けるよう気を付けます。

○NURBS参考
http://www.trycut.com/nurbs.htm

○Catmull-Clark参考
http://www.i-berry.ne.jp/~teratera/catmullclark.html

コメントの投稿


管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー)



copyright © ゲーム制作の舞台裏 all rights reserved.Powered by FC2ブログ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。