Cocos2d iphone Cocos2d-x坐标

Cocos2d iphone Cocos2d-x坐标,cocos2d-iphone,cocos2d-x,coordinate-systems,Cocos2d Iphone,Cocos2d X,Coordinate Systems,在使用Cocos2D iPhone/swift/spritebuilder几年后,我才开始使用Cocos2D-x 我注意到,X中的坐标系似乎没有使用iOS开发以来常用的点系。也就是说,在1x设备上,10x10个点的框过去是10x10像素,在2x设备上是20x20像素,以此类推 所以我的问题是,cocos2d-x是否只处理像素?我们如何在代码中解决这个问题?因为我们过去能够将精灵放置在50x20的位置,并且无论分辨率如何,它最终都会出现在任何设备的正确位置。在cocos2d-x中不可能?我有3.5

在使用Cocos2D iPhone/swift/spritebuilder几年后,我才开始使用Cocos2D-x

我注意到,X中的坐标系似乎没有使用iOS开发以来常用的点系。也就是说,在1x设备上,10x10个点的框过去是10x10像素,在2x设备上是20x20像素,以此类推

所以我的问题是,cocos2d-x是否只处理像素?我们如何在代码中解决这个问题?因为我们过去能够将精灵放置在50x20的位置,并且无论分辨率如何,它最终都会出现在任何设备的正确位置。在cocos2d-x中不可能?我有3.5分


与此相关的是这份文件,但它说它已经过时了。有更新的文档吗?我真的没找到别的东西

您可以研究使用不同的资源文件夹来获得不同的分辨率大小。因此,对于<480高度,您可能有“/sd/”;对于<800高度,您可能有“/hd/”;对于其他高度,您可能有“/ipadhd/”

FileUtils::getInstance()->setSearchResolutionsOrder(...)
您也可以使用以下方法在AppController.mm中自己更改内容比例因子:

// should behave as if all art is @1x device
Director::getInstance()->setContentScaleFactor(1.0);
// should behave as if all art is @2x device
Director::getInstance()->setContentScaleFactor(2.0);
// should behave as if all art is @4x 
Director::getInstance()->setContentScaleFactor(4.0);
此信息尚未更新,但仍有一些信息:

我最近一直在研究这个问题,我发现在iPhone 5上调用getWinSize、getWinSizeInPixels和getVisibleSize时,我很惊讶。我在这里的部分回答与您的问题有关:是的,交易是设置designResolutionSize。这样做会使我们有一个一致的“点”大小,对于一个设备类别(如iPhone 5、5s、5c),我们只需要一组坐标。当然,现在它仍然变得更加困难,因为iphone4、6、6plus、ipad、Androids等比上述设备类产品有更多/更少的分数。您链接的页面被标记为过时,但似乎仍然是整个官方Cocos2d-x社区中唯一一个解释发生了什么的信息位置。是的,我可能应该写一些东西,在编程指南中包括一个测试项目,否则我认为它在一段时间内不会更新。我知道这是不断变化的特征之一,因为多分辨率+多密度可能很棘手。同意Android(密度/分辨率特定的XML和文件夹)与iOS(@2x,@3x)的做法不同。我最初是在iOS设备上工作的,不知何故,我认为我可以在以后的Android设备上使用相同的资产,只要我使用稍微不同的设置:-p上面的cocos2dx维基链接似乎已经死了。。不过,这一条有点有用: