// Magica Cloth. // Copyright (c) MagicaSoft, 2020-2022. // https://magicasoft.jp using UnityEngine; namespace MagicaCloth { /// /// 方向性の風(これはワールド全体に影響を与える) /// [HelpURL("https://magicasoft.jp/directional-wind/")] [AddComponentMenu("MagicaCloth/MagicaDirectionalWind")] public partial class MagicaDirectionalWind : WindComponent { public override ComponentType GetComponentType() { return ComponentType.DirectionalWind; } /// /// 風タイプを返す /// /// public override PhysicsManagerWindData.WindType GetWindType() { return PhysicsManagerWindData.WindType.Direction; } /// /// 形状タイプを返す /// /// public override PhysicsManagerWindData.ShapeType GetShapeType() { return PhysicsManagerWindData.ShapeType.Box; } /// /// 風向きタイプを返す /// /// public override PhysicsManagerWindData.DirectionType GetDirectionType() { return PhysicsManagerWindData.DirectionType.OneDirection; } /// /// 風が加算モードか返す /// /// public override bool IsAddition() { return false; } /// /// エリアサイズを返す /// /// public override Vector3 GetAreaSize() { return new Vector3(float.MaxValue, float.MaxValue, float.MaxValue); } /// /// アンカー位置を返す /// /// //public override Vector3 GetAnchor() //{ // return Vector3.zero; //} /// /// 風エリアの体積を返す /// /// public override float GetAreaVolume() { return 100000000; } /// /// 風エリアの最大距離を返す /// /// public override float GetAreaLength() { return float.MaxValue; } //========================================================================================= /// /// パラメータ初期化 /// protected override void ResetParams() { main = 5; turbulence = 1; frequency = 1; areaSize = new Vector3(float.MaxValue, float.MaxValue, float.MaxValue); //anchor = Vector3.zero; directionAngleX = 0; directionAngleY = 0; directionType = PhysicsManagerWindData.DirectionType.OneDirection; attenuation.SetParam(1, 1, false, 0, false); } } }