我是iPhone開發新手,想寫一個涉及2d碰撞的遊戲。有人會給我一個關於各種框架如何在典型的二維碰撞遊戲中相互作用的概念性概述嗎?概念性iPhone 2d遊戲開發問題。石英? cocos2d的?花栗鼠? Box2D的?
到目前爲止,我看到提到的候選人是2D軟件包,如石英和Cocos2d和物理引擎,如花栗鼠和Box2D的。我不是非常清楚的是在我的背景下這些關係。
在此先感謝您的回答!
我是iPhone開發新手,想寫一個涉及2d碰撞的遊戲。有人會給我一個關於各種框架如何在典型的二維碰撞遊戲中相互作用的概念性概述嗎?概念性iPhone 2d遊戲開發問題。石英? cocos2d的?花栗鼠? Box2D的?
到目前爲止,我看到提到的候選人是2D軟件包,如石英和Cocos2d和物理引擎,如花栗鼠和Box2D的。我不是非常清楚的是在我的背景下這些關係。
在此先感謝您的回答!
zoul得到了它的權利,我只想補充這:
的cocos2d爲iPhone提供了樣本,包括的Box2D和Chipmunk的,如果你想嘗試一下,看看他們是多麼容易或很難使用。因此,您可以繼續下載Cocos2d,然後稍微播放一下樣本,看看它是否適合您的需求。
Quartz是蘋果公司的2D圖形API。它通常不用於性能密集型遊戲,因爲您可以直接使用OpenGL或者使用一些用於遊戲的精簡框架來獲得更好的性能。 (這是Cocos2D提供的。)碰撞事件在這個爭論中是獨立的,因爲通常在不知道碰撞對象的圖形表示的情況下計算碰撞。
碰撞(或普通物理)引擎和圖形層之間的關係是完全的模型,並在MVC模式的視圖之間的關係。在每個框架中,您將物理世界向前移動(物理),然後在新位置(圖形)上繪製對象。
在現實模型和視圖混合有時有點把事情更快,但原則上他們是完全不同的東西。這意味着你可以選擇OpenGL,Quartz或Cocos2D作爲圖形引擎和Box2D或Chipmunk作爲物理引擎的任何可能組合,並獲得一個體面的遊戲。我不知道具體的組合在實踐中如何做的工作 - 如果這是你的問題,那麼我剛剛浪費生命幾分鐘:-)
太棒了! – Delta2038 2010-09-14 13:48:37
非常感謝!所有偉大的答案。從那以後,我玩了一個Cocos2D + Box2D教程,現在我對這個概念更加清楚了。 – Delta2038 2010-09-14 13:47:52