一:什么是協(xié)同程序?
在主線程運(yùn)行的同時(shí)開啟另一段邏輯處理,來協(xié)助當(dāng)前程序的執(zhí)行,協(xié)程很像多線程,但是不是多線程,Unity的協(xié)程實(shí)在每幀結(jié)束之后去檢測yield的條件是否滿足。
二:Unity3d中的碰撞器和觸發(fā)器的區(qū)別?
碰撞器是觸發(fā)器的載體,而觸發(fā)器只是碰撞器身上的一個(gè)屬性。當(dāng)Is Trigger=false時(shí),碰撞器根據(jù)物理引擎引發(fā)碰撞,產(chǎn)生碰撞的效果,可以調(diào)用OnCollisionEnter/Stay/Exit函數(shù);當(dāng)Is Trigger=true時(shí),碰撞器被物理引擎所忽略,沒有碰撞效果,可以調(diào)用OnTriggerEnter/Stay/Exit函數(shù)。如果既要檢測到物體的接觸又不想讓碰撞檢測影響物體移動(dòng)或要檢測一個(gè)物件是否經(jīng)過空間中的某個(gè)區(qū)域這時(shí)就可以用到觸發(fā)器
三:物體發(fā)生碰撞的必要條件?
兩個(gè)物體都必須帶有碰撞器(Collider),其中一個(gè)物體還必須帶有Rigidbody剛體,而且必須是運(yùn)動(dòng)的物體帶有Rigidbody腳本才能檢測到碰撞。