onCollisionEnter doesn't work without RIgidbody?

Hi,
I am trying to check the collision between two colliders and OnCollisionEnter() doesn’t work unless one of the object is RigidBody. I can’t use Rigid Body for all the objects as it’s a way expensive…

Also tried with trigger and it doesn’t work without Rigidbody too… Anyone helps me…

Correct. As shown in the docs, in order for anything to generate OnCollision events, one of the two objects involved must be a Rigidbody. There’s no way around that.

→ You don’t put a Rigidbody on everything, just the objects that move.

Well since none of these answers actually help solving the OP’s issue, I recommend anyone having this same problem to search about Physics.OverlapBox and/or Physics.OverlapSphere.

Just like this video shows:

But for 3D.

Source:

Unity - Manual: Interaction between collider types