天天看點

Cocos2d中update與fixedUpdate的差別(一)

<a href="http://kirillmuzykov.com/update-vs-fixedupdate-in-cocos2d/">原文連結</a>

Cocos2d中update與fixedUpdate的差別(一)

關于這個問題cocos2d中的fixedupdate:(或者是unity中的fixedupdate)在不同論壇中出現略顯頻繁.它被回答過很多次了,不管如何,每次一些童鞋在得到答案後還是有一些問題.

該問題典型的答案是:

update:在每一幀調用一次,而fixedupdate:保持一個恒定的調用率.

我将會就cocos2d-swift(ex. cocos2d-iphone)中的update和fixedupdate做一些解答,但是同樣這些也适用于unity中的update和fixedupdate方法.

但這是神馬意思呢?而且更重要的是,在cocos2d中什麼時候用update,什麼時候用fixedupdate呢?

遊戲就像一系列的幀一樣

在了解你應該在哪裡寫代碼之前,讓我們把問題說的再明顯點:為什麼我們從根本上需要寫這些代碼?

聽起來想一個瘋狂地問題!當然我們寫這些代碼去移動遊戲對象,更新标簽,計算碰撞點以及找尋路徑等等.但是執行這些大多數代碼的結果是啥呢?

結果是将在螢幕看到神馬!看到目前的幀!

無論你建立什麼類型的遊戲,在你的代碼中有多少抽象層或者你使用什麼模式.最後你的遊戲隻是簡單的在玩家的裝置上一幀一幀顯示幀.

當然我們取得玩家的輸入,模拟實體對象以及玩家不會看到的其他事情.但是最終隻有一個東西有意義,就是玩家看到螢幕顯示的東西.這就是玩家對于遊戲的視角.

現在讓我們回到我們的update方法的讨論中去.

繼續閱讀