【Unity】Rayで接触するオブジェクトを判断させる
よじ登りの処理が作れたのですが、
バグと言うか思った動作をしてくれない部分があって、
悩んでいる今日この頃なんですが…
何がおかいしかと言うと、
壁に接触した状態から登って行くと、うまくよじ登るようになったんですが、
壁に向かってジャンプして、壁に張り付く前に上端に届くと、
上手く登ってくれない状態なんです。 ( ノД`)シクシク…
また、タイミングによっては、壁の上によじ登っても、
走り出さずに同じモーションを繰り返すなんて事も起こっています。
この辺りを解消しないと動きとしては問題になります。
まず、登り切った所でモーションを繰り返す原因を考えてみたのですが、
青い線がRayです。
足元のオブジェクトが、白が壁でWallレイヤー、茶色が床でFloorレイヤーとしています。
スクリプトでは、
ActionTest
public LayerMask floorLayer;
private bool bodyUnder; //体下Ray
void Update()
{
SetLinecast();
//床の接触判定
if (bodyUnder)
{
FloorAction();
}
else
VerticalMotion(…