日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

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

碰撞檢測 BoxCollider 的特殊實現

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

當作觸發器的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秒鐘內自動發出退出的消息。


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 精品动漫一区二区三区 | 国产精品免费一区二区三区在线观看 | www.视频一区 | 色999日韩 | 久一久久 | av首页在线 | 国产精品久久久久久久久 | 久久久精品日韩 | 亚洲毛毛片| 青青草在线播放 | 国产伦精品一区二区三区照片 | 欧美日产国产成人免费图片 | 欧美www视频 | 婷婷综合在线 | 中文字幕区一区二 | 久久成年 | 日本精品一区二区三区视频 | 欧美在线观看视频 | 久久久久久久国产 | 久一在线视频 | 青草一区 | 国产在线免费 | 天天综合网网欲色 | 久久国产一区二区三区 | 欧美手机在线视频 | av在线播放一区二区三区 | 黄色免费网站在线观看 | 日韩三级中文字幕 | 久久人人97超碰精品888 | 亚洲精品成人在线 | 亚洲免费精品 | 99爱免费视频| 一级毛片在线观看网站 | 免费看成人吃奶视频在线 | 久久99精品国产一区二区三区 | 日本中文字幕电影 | 在线国产精品视频 | 日韩精品高清一区二区三区 | 亚洲欧美国产一区二区三区 | 国产在线播| 玖玖在线资源 |