[LevelHelper篇]createPhysicBoundaries時,物件沒有掉落至指定區域

cocos2dx使用版本︰v 2.0.4
cocosBuilder使用版本︰v 2.0 alpha 1

一、問題

我在LevelHelper裡設定好一個Sprite物件掉落至下圖指定區塊,
並使用 loader->createPhysicBoundaries(world); 載入邊距資料。

但實機在測試時卻掉落至螢幕底端,
沒有尊照LevelHelper定義出來的位置。



二、解決辦法

後來才知道,在update()函式中,
需要將setPosition的方式改變⋯
myActor->setPositioin( CCPointMake ( b-> GetPosition().x * PRM_RATIO, b->GetPosition().y * PTM_RATIO) );
需要改成
myActor->setPosition(LevelHelperLoader::metersToPoints(b->GetPosition()));

因為整個position的設定方式已經被LevelHelper掌控了,
故需要將setPosition的方式交給LevelHelperLoader::metersToPoints去處理。

物件的掉落位置終於到我們想放置的位置(見下圖)

沒有留言 :

張貼留言