Я заметил что CharacterController странно реагирует на соллизию: OnCollision***** не всегда вызывается,только на быстрые тела, как исправить?
Например:
void OnCollisionEnter(Collision coll)
{
if(coll.gameObject.tag=="milk1"&& cocoLiv>0)
cocoLiv-=2;
if(coll.gameObject.tag=="Milk" && cocoLiv>0)
{
cocoLiv-=5;
if(cocoLiv<=0){
inanus=true;
mode=0;
GameObject b=Instantiate(Milk,pivotForMilk.transform.position,pivotForMilk.transform.rotation) as GameObject;
b.transform.parent=pivotForMilk.transform;
b.collider.enabled=false;
b.rigidbody.isKinematic=true;
}
}
Debug.Log(coll.gameObject.tag);
for(int i=0;i<coll.contacts.Length;i++){
Debug.DrawLine(this.transform.position,coll.contacts[i].point,Color.red);
}
}
Отзывается только на milk1 и Milk, на другие колайдеры никак,причем это работает,если помимо своего коллайдера(созданного компонентом), второй повешать