从像素到米的比例是最好还是更好?

时间:2011-04-27 04:34:40

标签: objective-c c cocos2d-iphone

我正在使用以下比率进行像素到仪表的转换,

PTM_RATIO=32;
v3BodyDef.position.Set(2848/PTM_RATIO, 102/PTM_RATIO);

这会在屏幕上多次产生奇怪的输出,因此设置位置(v3BodyDef.position.Set)采用浮点变量与否我不知道,但我认为这种转换会造成麻烦。

请帮我解决这个问题。 谢谢。

2 个答案:

答案 0 :(得分:3)

没有一个值得推荐的比例(虽然有些人会试着说服你)。

物理引擎中对象的比例应取决于动态对象的平均比例。我的意思是,如果你的玩家与许多物体相互作用“略大”和“略小”,那么最好让玩家的平均尺寸在最佳范围内(例如,Box2D针对两者之间的物体进行优化) 0.1米和10米的尺寸,所以让球员1米或1.5米)。

至于你的像素大小,这完全取决于你希望你的世界在屏幕上的大小。

如果你希望你的英雄高度为屏幕的1/10,距离相机2米,那么算一算:-p其他人可能希望他们的这里是屏幕高度的1/8,或者1 / 12th ..这实际上取决于游戏最终的表现。如果相机放大,像素与物理比率会发生变化。如果屏幕分辨率发生变化(如视网膜显示),则像素与物理比率必须相应改变。

所以在实践中:没有固定值。这实际上取决于游戏,取决于你所使用的硬件最合适的东西。

答案 1 :(得分:0)

这很可能是整数除法问题,将PTM_RATIO更改为浮点数(或者如果您要定义它,请使用#define PTM_RATIO 16.0f