// Magica Cloth 2. // Copyright (c) 2023 MagicaSoft. // https://magicasoft.jp using Unity.Mathematics; namespace MagicaCloth2 { /// /// ジョブで利用するためのクロスパラメータ構造体 /// ジョブではclassを参照できないためunmanaged型に変換する必要がある /// public struct ClothParameters { /// /// 1秒間の更新回数 /// //public int solverFrequency; /// /// 重力 /// public float gravity; /// /// 重力方向(ワールド空間) /// public float3 gravityDirection; /// /// 初期姿勢での重力の減衰率(0.0 ~ 1.0) /// 1.0にすることで初期姿勢では重力係数が0になる。 /// 0.0では常にどの姿勢でも重力が100%発生する。 /// 姿勢計算は慣性トランスフォームで行われる。 /// public float gravityFalloff; /// /// リセット後の速度安定化時間(s) /// public float stablizationTimeAfterReset; /// /// 元の姿勢とシミュレーション結果のブレンド割合(0.0 ~ 1.0) /// public float blendWeight; /// /// 抵抗 /// public float4x4 dampingCurveData; /// /// パーティクル半径 /// public float4x4 radiusCurveData; /// /// 法線として利用する軸 /// public ClothNormalAxis normalAxis; // BoneCloth用 public float rotationalInterpolation; public float rootRotation; // 慣性制約(Inertia) public InertiaConstraint.InertiaConstraintParams inertiaConstraint; // 最大距離制約(Tether) public TetherConstraint.TetherConstraintParams tetherConstraint; // 距離制約(Distance) public DistanceConstraint.DistanceConstraintParams distanceConstraint; // トライアングル曲げ制約(TriangleBending) public TriangleBendingConstraint.TriangleBendingConstraintParams triangleBendingConstraint; // 角度復元/角度制限 public AngleConstraint.AngleConstraintParams angleConstraint; // モーション(MaxDistance/Backstop) public MotionConstraint.MotionConstraintParams motionConstraint; // コライダーコリジョン(Collider Collision) public ColliderCollisionConstraint.ColliderCollisionConstraintParams colliderCollisionConstraint; // セルフコリジョン(Self Collision) public SelfCollisionConstraint.SelfCollisionConstraintParams selfCollisionConstraint; // 風(Wind) public WindParams wind; // スプリング(Spring) public SpringConstraint.SpringConstraintParams springConstraint; } }