簡體   English   中英

檢測SceneKit中粒子和節點之間的碰撞

[英]Detect collision between particles and nodes in SceneKit

我有幾個帶有Kinematic phyisicsBodyType的節點,我希望它與某些粒子System進行交互,我的意思是我想檢測碰撞並在節點與粒子系統中的nay粒子碰撞時執行一些代碼。 我通過添加事件處理程序找到了一種方法,但我不確定如何使用它( 鏈接到方法 )。

有人可以解釋我如何使用該事件處理程序(首選是在Swift中解釋我),或者你能否給我另一個想法?

最后很簡單。 首先,您必須將一個節點數組分配給粒子系統的colliderNodes屬性。 之后,swift中的代碼看起來像這樣:

    particleSystem.handleEvent(SCNParticleEvent.Collision, forPropierties:[SCNParticlePropertyContactPoint], withBlock: {
        (data: UnsabeMutablePointer<UnsafeMutablePointer<Void>>, dataStride: UnsafeMutablePointer<Int>, indicies: UnsafeMutablePointer<UInt32>, count:Int) in 
        //code on detection collision goes here
})

Apple文檔中簡要解釋了每個參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM