多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > 碰撞檢測 BoxCollider 的特殊實現

碰撞檢測 BoxCollider 的特殊實現

來源:程序員人生   發布時間:2015-02-04 09:14:47 閱讀次數:4795次

當作觸發器的Collider檢測,可以通過 


private void OnTriggerStay(Collider collider);

private void OnTriggerEnter(Collider collider);

private void OnTriggerExit(Collider collider);


來實現,當有物體與當前觸發器碰撞時候自動調用OnTriggerEnter(),當物體在觸發器內容時候自動調用OnTriggerStay(),當物體離開觸發器時候自動調用OnTriggerExit(),


但是當處于觸發器內部的物體消失(被消滅,被殺死  Deactive)時候,這個物體就不會觸發OnTriggerExit,有興趣的同學可以自己測試1下。


所以當我們需要實現1個這樣的效果:


當有目標物體進入觸發器內部的時候就發出1個進入的事件,以后當觸發器內部沒有物體的的時候再發出1個退出的事件。


注意這里觸發器內部沒有物體是在先有進入物體的條件下,所以當使用OnTriggerEnter 和OnTriggerExit 來發失事件時候就不正確了,由于當1個物體進入觸發器 發出了進入的事件,但是它被Deactive了,此時觸發器內部沒有物體,但是卻不會發出退失事件。


我的實現方法是使用1個記時裝置,使用協同程序,當觸發進入事件


以后打開記時裝置,

這個程序的實現為:

IEnumerator ChackTarget() { bool isContinue = true; while(isContinue) { _chackNum -= Time.deltaTime; yield return new WaitForSeconds(Time.deltaTime); if (_chackNum<0) { OnTargetExit(); isContinue = false; } } }

在OnTriggerStay里檢測到物體停留就為 _chackNum賦值,當OntriggerStay 不在運行時候,計時器就會不斷削減 _chackNum 最后小于0調用退出方法。

對了這個方法說1下,如果在觸發器內部有物體的話,這個方法會每幀被調用1次。


private void OnTriggerEnter(Collider collider) { if (collider.gameObject.layer == Layers.WEAPON_HIT && collider.gameObject.tag == Tags.DAMAGED) { OnTargetEnter(); _chackNum = 1f; StartCoroutine("ChackTarget"); } } private void OnTriggerStay(Collider collider) { if (collider.gameObject.layer == Layers.WEAPON_HIT && collider.gameObject.tag == Tags.DAMAGED) { _chackNum = 1f; } }


如此實現,可以保證在1個進入和退出進程中只有1個計時程序在運行,在觸發器中沒有物體后的1秒鐘內自動發出退出的消息。


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 99精品国产在这里白浆 | 久久久久在线观看 | 亚洲成在人线久久综合 | 午夜网站视频 | 羞羞视频网站免费入口 | 国美女福利视频午夜精品 | 国产一级理论免费版 | 人操人| 欧美黑人xxxx猛战黑人 | 久久中文字幕不卡一二区 | 免费高清黄色 | 秋霞免费手机理论视频在线观看 | 午夜老司机永久免费看片 | 欧美成人影院免费观 | 视频在线欧美 | 久久亚洲欧美 | 久久国产欧美日韩精品免费 | 91九色网址 | 成人娱乐网站 | 亚洲高清免费视频 | 欧美激情亚洲激情 | 亚洲一区二区三区高清视频 | 成人免费看黄页网址大全 | 亚洲欧美高清 | 久久精品免费i 国产 | 久久久久国产精品免费 | freehdvideo性欧美 | 一级aa免费视频毛片 | 末发育娇小性色xxxxx视频 | h国产在线| 中文精品视频一区二区在线观看 | 久久亚洲日本不卡一区二区 | 国产成人高清亚洲一区久久 | 中文字幕日韩专区 | 欧美大陆日韩一区二区三区 | 成人精品在线视频 | 韩国jizz | 成a人v欧美综合天堂 | 中文字幕亚洲色图 | a级亚洲片精品久久久久久久 | jux397在线三浦惠理子 |