- Home /
Pickaxe Collision Problems
I'm a beginner with Unity 3D and I'm trying to create a 3D survival game. I have modeled a pickaxe in 3ds Max and parented it to a FirstPersonControllerPrefab. In my script which I have written to show the collision between the pickaxe and another object (i.e. a rock) I have it print a message to the debug log and create some sparks when I left click on the other object.
The problem I am having is that when the collider on the pickaxe enters the other object nothing happens, the collision is not recorded. I have tried two boxes as a test, one with a rigidbody and one without. Both have colliders. The small sphere on the end of the pickaxe has the pickCollider script attached to it.
The FPController has a rigidbody attached and I tried adding a rigidbody to the pickaxe as a solution but it just screwed up everything and went all funny :P
Any help is greatly appreciated :D
My script:
var sparksPrefab : Transform; var audioclip : AudioClip;
function OnTriggerEnter(myCollider : Collision){
if(Input.GetButton("Fire1")){
Debug.Log("Pick hit something!");
var contact = myCollider.contacts[0];
var rot = Quaternion.FromToRotation(Vector3.up, contact.normal);
var pos = contact.point;
Instantiate(sparksPrefab, pos, rot);
audio.PlayOneShot(audioclip);
}
}
Answer by syclamoth · Nov 07, 2011 at 11:46 PM
You need to have a kinematic rigidbody on the pickaxe for this to work. You also might want to turn on 'Animate Physics' on the animation component, so that the movement gets calcuated in FixedUpdate.
Ahh yess! Thank you so much! I can't believe all I had to do was to tick a check box :P
Your answer
![](https://koobas.hobune.stream/wayback/20220613034457im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Not working gui buttons 1 Answer
Unity3d won't open anymore 7 Answers
FPController see through walls problem 2 Answers
Adding sound javascript in unity2d 1 Answer