私はゲームの作業中です。私はpngとしてマップに追加し、私が通過したくない領域(それは2Dプラットフォーマー)の周りにコライダーを追加しています。私はすでに敵を設計し、それが動き回るとしてそれに2DRigidBodyコンポーネントを追加し、レベルのためのコライダーとして2DBoxCollidersを使用し始め、そして私が書いた私のスクリプトいる:2Dポリゴンコライダーが2次元ポリゴンコライダーと衝突しない
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Sexapus : MonoBehaviour {
public static int Velocity = 42;
public Rigidbody2D rb;
public Vector2 dir;
public Animator anim;
void Start() {
rb = GetComponent<Rigidbody2D>();
dir = new Vector2(1, 0);
anim = GetComponent<Animator>();
}
// Update is called once per frame
void Update() {
rb.velocity = dir * Velocity;
anim.SetFloat ("Direction", dir.x);
}
void OnCollisionEnter2D (Collision2D col) {
dir = dir * -1;
}
//CHECK TASKS
}
は敵がだろうことを意味し壁の側に当たってから、回転して、もう一方の方向に進みます。私は、複数の2DBoxCollidersを使用しているマップのサイズで実現しました(そして、複数の場合、おそらく100を超えるものを使用しなければならないということを意味します)。私は今、マップの2Dポリゴンのコロダーを使い始めましたが、敵は壁の側面に衝突せず、向きを変えずに移動します。誰でも知っている理由は?