Bullet Collision Issues

Right now my bullets are just spheres with rigid bodies (continuous-dynamic) attached to them. In order to shoot them I do:

1.Create the projectile using Instantiate 2. In Projectile.Start() do:

`this.GetComponent().AddForce(transform.forward * this.TrajectoryInformation.MuzzleVelocity * 500000 * Time.deltaTime);`

This moves the bullet quickly (which I want), but it sends other objects flying which I do not want. Also, I attempt to apply a decal at the location of the hit like so:

Vector3 hitPosition = new Vector3
            x = collision.contacts[0].point.x,
            y = collision.contacts[0].point.y,
            z = collision.contacts[0].point.z

        Quaternion rotation = Quaternion.Euler(collision.contacts[0].normal);

        //Create the decal (ie: bullet hole)
        GameObject decal = (GameObject)Instantiate(DecalPrefab, hitPosition, rotation);

        //Makes sure the decal stays on whatever it hit
        decal.transform.parent = collision.collider.transform;

This sometimes creates a decal but the decal is never rotated properly.

Any ideas on how to fix these things?

You say your decal sometimes works? Maby the bullet is so fast that the collision detection dont work. Have you tried to extrapolate the rigidbody?

If the bullet is intended to fly fast, maby it is better to do the collision detection with a ray, place the decal at the collided position and just use the model of the bullet for visuals.