LoginSignup
7
3

More than 5 years have passed since last update.

【Unity】標準より綺麗になるトレイルアセットAra Trails

Last updated at Posted at 2018-09-09

はじめに

Ara Trails」とは
Ara_Trails_-_Asset_Store.png

Araはパーティクルシステムのコンセプトを借用して歩道を過充電する高度なトレイルレンダラーです。

使いやすく、非常に柔軟でカスタマイズ可能です。 UnityのデフォルトトレイルレンダラーをAraに置き換えると、決して振り返らないでしょう。 (すべてのプラットフォームで動作)

一般的な使用例をカバーするために、基本的なAraトレイルレンダラの上に構築された追加のユーティリティコンポーネントが含まれています。

-TireTracks:タイヤ&スキッドマークを簡単に作成できます。
-ElectricArc:手続き型電気アークを作成します。
-ColorFromSpeed:スピードに基づいてトレイルの色を変更します。
特徴:

  • スプラインベースのトレイルスムージング。動きの速いオブジェクトは、最終的にスムーズなバタフライの軌跡を残します。

  • 高品質のラインコーナーの取り扱い:鋭い、鈍いまたは丸い。

  • 単一のオン/オフトグルを使用してトレイルエミッションを有効/無効にする機能。トレイルレンダラーのプールを使用する必要はなく、実行時にコンポーネントを作成/破棄するなどの厄介な解決策は必要ありません。

  • 時間と長さに基づいた色と厚さ。時間または長さベースのアプローチを個別に使用するか、それらを組み合わせることができます。

  • 世界と地域の空間生成。

  • ビューと(アーティファクトフリー)ローカルトレイルアラインメント。武器の道、ライトサイクルの道に最適です...

  • 物理:重力、慣性、ダンピング...あなたの軌跡を生かす!

  • 複数のテクスチャモード:ストレッチ、タイル、アンカー...

  • スクリプトによるトレイルポイントへの直接アクセス:既存のトレイルポイントを変更したり、新しいトレイルポイントを追加したり、自分自身でトレイルポイント全体を削除または置き換えたりすることができます。個々のポイントには、位置、方向、速度、色、厚さ、連続性、寿命情報が含まれています。

  • Excepcionalパフォーマンス。フレームごとに割り振られたゼロメモリ=ガベージコレクションなし。

  • うまく構造化された、きれいで完全にコメントされたC#ソースが含まれています。

  • いくつかの出荷されたプロジェクトで戦闘がテストされました。

Sep-09-2018 15-47-32.gif
Sep-09-2018 15-48-11.gif
Sep-09-2018 15-48-42.gif
Sep-09-2018 15-49-03.gif
Sep-09-2018 15-49-19.gif
Sep-09-2018 15-49-54.gif

動作環境

Mac 10.13.6
Unity 2018.2.5f1
Animated GIF Player 1.13.4

使い方 剣筋的なものをつける場合

アセットをインポートしてきたら、ターゲットになるオブジェクトに「AraTrail」コンポーネントを付与し、トレイルのマテリアルがないのでアタッチする 
Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png
シェーダーは特に専用のシェーダーはなく標準のシェーダーでもいいっぽいです
基本これで動くのですが、このままだと小さすぎたりするので、
サイズ調整をします。
調整する為には、「Thickness」をいじると調整できます
Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png
一つサイズ調整の注意としては、「AraTrail」コンポーネントの付与しているオブジェクトの中心軸からスケールを行うので、剣みたいなオブジェクトに付与したい場合は剣の中心にあるゲームオブジェクトに付与しましょう 特に空のゲームオブジェクトでも大丈夫そうです
スクリーンショット_2018-09-09_17_29_10.png

結果こんな感じでできます
Sep-09-2018 17-22-28.gif

AraTrailパラメーター

Overall

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
Space トレイルを生成してシミュレートするために、ワールド空間またはローカル空間を使用するかどうか
TimeScale 定期的な時間を使用するかどうか
Alignment トレイルのジオメトリを整列する方法:カメラの向きに合わせて(トランスフォームの回転(ローカル)を使用する)
Thickness 厚さ乗数(メートル単位)
smoothness トレイル形状に適用されたスムージング反復の量
highQualityCorners 急なコーナーでの正確な厚さの計算
cornerRoundness 鋭いコーナーの場合は0、丸いコーナーの場合は1、丸いコーナーの場合は1を超える値に設定します。

Lenght

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
thicknessOverLenght カーブの太さ
colorOverLenght 頂点の色

Time

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
thicknessOverLenght 時間経過に伴うトレイルの厚さの変化
colorOverLenght 時間経過に伴う頂点の色の変化

Emmition

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
  Emit 描画するか
initialThickness 最初の厚さ
 initialColor 最初の色
initialVelocity 最初の速度
timeInterval 新しいトレイルを作成されるまでの時間(秒単位)
 minDistance 放出された点の間に維持されるべき最小距離
time トレイルの長さ(秒単位)

Physics

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
  enablePhysics 描画するか
warmup トレイルが現れる前にシミュレーションされた秒数。 ゲーム開始時にトレイルを既にシミュレートしたい場合に便利です
 gravity トレイルに影響する重力
inertia トランスフォームからトレイルに転送される速度の量。 0は速度が転送されないことを意味し、1は速度の100%が転送されることを意味する
velocitySmoothing 変換からトレイルに転送される速度に適用される時間平滑化の量
 damping トレイルの速度に適用されるダンピングの量。 値が大きくなると、時間の経過とともにトレールが遅くなります

Rendering

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
  materials トレイルをレンダリングするために使用されるマテリアルのリスト。 トレイルはマテリアルごとに1回レンダリングされます。
castShadows トレイルをレンダリングするときに使用されるシャドウキャストモード。
 receiveShadows 他のオブジェクトから影を受け取るべきか? (シェーダが許可している場合)
useLightProbes ライトプローブをレンダリングに使用するかどうか(シェーダが許可している場合)

Texture

Unity_2018_2_5f1_Personal__64bit__-_SampleScene_unity_-_New_Unity_Project__2__-_PC__Mac___Linux_Standalone__Personal___Metal_.png

項目 内容
  textureMode トレイルの上にテクスチャを適用する方法:長さ全体に伸ばしたりする方法やタイルベースで描画する方法
uvFactor テクスチャモードが「タイル」に設定されている場合は、各タイルの幅を定義します
 tileAnchor テクスチャモードが「タイル」に設定されている場合、タイリングを開始する場所を定義します.0はトレイルの開始を意味し、1は終了を意味します
7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3