So basically I want to be able to detect if my capsule collides with my sphere. Right now it just isn’t working. Here is the script I place on the sphere:
For some reason it never does any of this when the capsule collides with it. I have the capsule as a Rigidbody and a trigger, so I can’t think of a reason why this won’t work. Any help would be appreciated.
Is the Sphere that this script is on also a trigger?
edit: actually the example code for C# does have some stuff not present in your script.
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
void OnTriggerEnter(Collider other) {
Destroy(other.gameObject);
}
}
I’m not a C# user myself but it might just need those first few extra lines and also the “public class example” part before it will work at all.
Ok I went ahead and replicated the scene you described, and it seems to be working fine. This is what the entire script I have looks like:
using UnityEngine;
using System.Collections;
public class test2 : MonoBehaviour {
public GameObject ParticlePrefab;
void OnTriggerEnter(Collider col){
Debug.Log("Hit");
Destroy(col.gameObject);
//Instantiate(ParticlePrefab, transform.position, transform.rotation);
}
}
Though as you can see I commented out the Instantiate part, the Debug.Log part is definitely working. So I’m not sure what’s going on with yours… my scene is using a simple Unity sphere and capsule, the sphere has the script on it, and the capsule has a rigidbody applied and nothing else. Are you using a character controller on your capsule?