我正在關注這款遊戲的流暢畫線教程, http://www.merowing.info/2012/04/drawing-smooth-lines-with-cocos2d-ios-inspired-by-paper/#.U1kiCJG6_Ez我該如何碰撞線本身?
我的問題是我無法獲得線條的碰撞。
我正在關注這款遊戲的流暢畫線教程, http://www.merowing.info/2012/04/drawing-smooth-lines-with-cocos2d-ios-inspired-by-paper/#.U1kiCJG6_Ez我該如何碰撞線本身?
我的問題是我無法獲得線條的碰撞。
在示例代碼中,所有內容都只顯示在屏幕上。沒有實施碰撞檢測系統的一部分。
爲了實現其中之一,最簡單的方法之一是將構成該行的所有點放在NSMutableArray中,並且每次要繪製一個新點時,都可以檢查它是否包含所有包含的點在數組中。如果新點已經包含在數組中,那麼您在該線和您嘗試繪製的新點之間有碰撞。
從那裏開始,您可以研究標準的碰撞系統,並實現其中的一個。 Cocos2D還支持2種物理引擎:Box2D和Chipmunk,它們都具有自己的碰撞檢測功能。爲了提高效率,您可能需要使用其中的一種,而不是實現自己的系統。
感謝您的回覆,您能否給我示例。如何在NSMutableArray中將新點與前一點相交? – user3564985
如果您的線條是多個線段的列表/數組(這是教程鏈接的情況),那麼在添加新線條對象時,請檢查數組中所有以前的線段是否相交。
這可以很容易完成,因爲在how to detect line intersection上有多個解決方案在stackoverflow上。
感謝您的回覆好吧,我想我需要先學習如何將所有對象放在數組中並更新它以檢查第一個對象的交叉點。謝謝 – user3564985
你能否提供更多的細節? –