I have a cube placed on a plane. When I start the game, a collision occurs between the two. I want to prevent this collision because it is triggering a sound effect called within an OnCollisionEnter function.
The plane is at (0,0,0) with a y-scale of .00001. The cube has a scale of 5 and is placed at (0, 2.48, 0). The cube has Y = 2.48 rather than 2.5 because its falls from 2.5 to this point once the game starts. Even when set at 2.48, the cube moves by an infinitesimally small amount on the X and Z (from 0 to ~-2.434473e-25) .
Things I have tried aside from tweaking the positions of the cube:
- modifying the Physics setting ‘min penetration for penalty’. This prevents the objects from bouncing off one another, but the collision event still occurs.
- placement of both the plane and grid using ‘snap’ to position. Does not help.
This does prevent the collision on the game start:
if (collision.relativeVelocity.magnitude > 0.01){
Debug.Log("collision occurring");
audio.PlayOneShot(crashSound);
}
However, I am hoping to understand if it is possible to prevent the collision altogether?