Summer!」の8月11日の記事です。Splineアセット概要ポイント同士を結んでパスを作ることができます。パスに沿って移動することもできるし、オブジェクトを配置したり、メッシュを生成することもできます。パスの軌道は色々調整できます。下の動画は公式のプロモーションです。大体何ができるか把握できるのではないかと。基本の使い方~パスの作成~アセットをインポートするとCurvyメニューが追加されます。最初にパスを作ってみます。メニューのGameObjectからCurvy➡Splineをクリック。「CurvySpline」コンポーネントを持ったオブジェクトと、CurvyGlobalというオブジェクトが自動で生成されます。Hierarchy内のSplineオブジェクトを選択すると、シーンビュー内に以下画像のようなメニューが表示されているはずです。DrawSplineをクリック。Ctrl(MacならOption?)キーを押しながらクリックしていくと「CurvySplineSegment」コンポーネントを持ったオブジェクトを生成していきます。このオブジェクトの座標同士を結んで曲線を生成していきます。普通のオブジェクトを操作するように移動できます。オブジェクトを消せば自動でパスを補完してくれます。パスのつながり方は、「CurvySpline」コンポーネントのInterpolationプロパティから色々変更できます。直線、曲線、ベゼル曲線。実際に触りながらやってみた方が分かりやすいかと。基本の使い方~パスに沿って移動~SplineControllerを使う簡単な方法は用意されているコンポーネントを使うことです。Hierarchyで右クリックしてCurvy➡Controller➡Spline。「SplineController」コンポーネントのGeneralタブ➡Splineプロパティに、「CurvySpline」を持ったオブジェクトを設定します。MoveタブのSpeedプロパティを変更すれば、パスにそって移動します(実行時のみ)。スクリプトから動かすスクリプトから自分で動かしたいときに使いそうなメソッド。spline.GetOrientationUpFast(mTF);デモの11:RigidBodyシーンとRigidBodySplineController.csファイルが参考になると思います。こんな感じで曲線にそって色々できたり、パスを簡単に作れるアセットなわけです。これだけじゃありません。パスに沿ってメッシュ生成パスにそってメッシュを生成することができます。メッシュの形状もパスの形にすることができます。Hierarchy内で右クリック➡Curvy➡Generatorでオブジェクトを作って、CurvyGeneratorインスペクタのノードっぽい絵が描かれているボタンをクリックするとGeneratorウィンドウが開きます。ウィンドウ内で右クリック➡AddTemplate➡ShapeExtructionでメッシュ生成の処理をまとめてしてくれます。ノード(小さい枠)がいくつか作られるはずです。ShapeExtructionノード内の「InputSplinePath」タブからSplineプロパティの「+」ボタンをクリックすると、パスが生成されます。生成されたパスを動かすと、その通りにメッシュが動きます。マテリアルのUV値を設定するのがちょっと手間でした。マテリアルを変更するときはVolumeMeshノードのMat0タブからMaterialプロパティを変更します。ShapeのパスポイントごとにUVを調整したりできます。ShapeExtrusionノードのCrossタブから、HardEdgesとExtendedUVプロパティにチェックを入れます。InputSplineShapeノードに設定してあるパスのゲームオブジェクトを選択してインスペクタの「MetaCGOptions」コンポーネント内のExtendedUVカテゴリのUVedgeにチェックをいれて、FirstUとSecondUの値を調整します。パスに沿ってオブジェクト生成パスにそってオブジェクトを指定距離ごとに生成することができます。Hierarchy内で右クリック➡Curvy➡CurvyGeneratorをクリック。インスペクタのノードっぽいボタンをクリックしてGeneratorウィンドウを開く。VolumeSpotsノード内のGeneralタブ➡Simulateプロパティにチェックを入れておくべきです。最高で10000個配置することができますが、大量にオブジェクトを生成しようとして低スペックのPCだと時が止まることがあります。Generatorウィンドウ内で右クリック➡AddTemplateからSpotGameObjectsを選択。ウィンドウ内で右クリック➡Add➡Input➡SplinePathでInputSplinePathノードを追加。Add➡Build➡RasterizePathノードを追加。InputSplinePathノード内でSplineプロパティの「+」ボタンをクリックしてパスを設定。InputSplinePathーRasterizePath-VolumeSpotsみたいにノード同士を線でつなぎます。あとはInputGameobujectsノードのSerializedPropertyに生成したいゲームオブジェクトのプレハブを設定すればパスにそってオブジェクトが生成されるはずです。簡単な使い方をざっくり書いてみました!他にもUIのテキストをパスにそって動かしたりもできます。応用の利くアセットだと思いました。今のところアップデートもばっちりされてるみたいですし。レベルデザインにも便利。パスにそって動くということに焦点を当ててゲームも作れそうな気がしてきます。実際作ろうとしたら色々問題でてくると思いますが。アセットのデモを見てみると他にも色々出来るみたいです。購入して確認してみてはいかがでしょうか。無料3Dモデルを爆活用してみたです。Tips本当に細かいことです。上の一行で速さのようなものを取得できました。√(x*x+y*y+z*z)の計算をしてくれてるようです。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。