【Unity】LSaber Model LS004
- 無料0 JPY
- 寄付(無料版と同じです)100 JPY
例のセーバーです。 YouTubeで公開しているタイムラプス動画で制作したモデルです。 DynamicBoneトレイルに加え、新機能の「LS Trail Shader」を搭載しています。 不明点があればTwitter(@tsutsuji815)まで
ファイルについて
モデルにはFBXデータ、テクスチャ、マテリアルに加え各種設定済みのPrefabが用意されています。 また、ブレード及び残像に使用するシェーダーが含まれています。 ブレードは「LS Blade Shader」、残像には専用の「LS Trail Shader」を使用します。 ・LS004_DB.prefab ブレードの残像をDynamicBoneを利用して表現します。有料アセットのDynamicBoneが必要です。 ・LS004_v2.prefab ブレードの残像をシェーダーを利用して表現します。付属の「LS Trail Shader」群とRenderTexture,カメラ,専用メッシュを使用します。 ・LS004_Plane.prefab 残像に何も使いません。マテリアル設定済みのヒルトとブレードのみが含まれます。残像が不要な場合やTrailRenderer等を自分で設定する場合に使用してください。
使用方法
zipファイルを展開するとunitypackageが同梱されていますのでUnityのプロジェクトにインポートしてお使いください。 Assets/Tsutsuji/LS004ディレクトリ以下にあるPrefabをシーンに配置して位置回転スケールをあわせアバター等に持たせます。 セーバー本体のブレンドシェイプ「blade_on」でブレードの出し入れができます。 DynamicBone方式を使用する場合、ブレードOFF時にはDynamicBoneのコンポーネントも非アクティブにしてください。アクティブのままだとヒルト内に隠したブレードが外部にはみ出します。 LS Trail Shaderを使用する場合スケールを変更した際に付属スクリプトを使用してカメラサイズをあわせる必要があります。(次項参照)
LS Trail Shaderについて
それらしい残像を描画するために付属しているシェーダーです。 最大8フレーム前までのブレードの座標を記録し、その座標までポリゴンを伸ばします。 シェーダー群、メッシュ、RenderTexture、カメラ、設定支援スクリプトで構成されています。 基本的にprefabそのままで使用できるようになっていますが、モデルのスケールを変更した場合カメラの領域が合わなくなるので設定支援スクリプトを使用します。 アバター等にスケールをあわせた後、Unity上部のツールバーからTsutsuji/SetupSaberTrailを選択し、表示されたウィンドウにセーバーのルートオブジェクト(ls○○○_v2)をドラッグアンドドロップし、SetupCameraボタンを押すとカメラサイズが自動で設定されます。 カメラとRenderTextureを使用していますので、アバターアップロード時にTexCamA・BのカメラコンポーネントとTrailオブジェクトを非アクティブにした状態でアップロードします。(カメラがアクティブのままだと自分だけに見えるローカル扱いになるため) トレイルを表示したい場合はアニメーション等でこれらをアクティブにします。
LS Trail Shaderの構成とパラメータ
※分かる人むけ ・オブジェクト構成 Trail(トレイル本体) HeadPos,BottomPos(ブレードの根本と先端の座標を取得するためのオブジェクト) PosTexA・B,TexCamA・B(取得した座標を表示、8フレームまで保存するためのメッシュとカメラ) StencilMask(RenderTextureが外から見えないよう隠す) ・LS Trail Shaderのパラメータ MainTex:トレイルに貼るテクスチャです Color:トレイルのメインカラーです OutlineColor:トレイル外側のカラーです OutlineWidth:上記のカラーの太さです PosTex:座標が保存されたRenderTexture、BladePosAが初期設定されており通常変更する必要はありません SampleFrame:描画するトレイルの長さ、最大8フレーム前までを描画し、値を小さくすると短くなります FixToFPS,TargetFPS:FixToFPSがチェックされていると、ゲーム内のFPSがTargetFPSより低下した場合にトレイルの後ろを消してもたつきを誤魔化します
ライセンス
モデルデータにつきましては、クリエイティブ・コモンズ 表示 - 非営利 - 継承 4.0 国際 ライセンス(CC-BY-NC-SA)の下に提供されます。 但し、VRChatのアバターに使用する場合は著作権表示は必要ありません。 http://creativecommons.org/licenses/by-nc-sa/4.0/ シェーダー及びスクリプトのソースコードにつきましては、MITライセンスの下に提供されます。 Copyright (c) 2019 Tsutsuji815 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.