forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Физика (http://forum.boolean.name/forumdisplay.php?f=168)
-   -   Проблемы с CharacterController (http://forum.boolean.name/showthread.php?t=16866)

RegIon 05.06.2012 11:05

Проблемы с CharacterController
 
Я заметил что 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, на другие колайдеры никак,причем это работает,если помимо своего коллайдера(созданного компонентом), второй повешать

cahekp 05.06.2012 12:34

Ответ: Проблемы с CharacterController
 
Попробуй использовать еще OnControllerColliderHit(hit : ControllerColliderHit).
http://unity3d.com/support/documenta...lerColliderHit


Часовой пояс GMT +4, время: 10:55.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot