Cocosd-x屏比

来源:互联网 发布:sas软件好学吗 编辑:程序博客网 时间:2024/06/03 00:59

完美主义情况下android自适屏,最好的方式当然是做多套不同分辨率屏幕大小的图片资源,但是一般作为我们这样的小团队开发,不会去花费太多的时间去做多套不同的资源,能给你多做几个封面就不错了,所以这个重任又从美术的头上落到我们程序猿的头上,在cocos2d-x中android包默认支持等比例的屏幕缩放,具体实现方式,在jni/helloworld/main.cpp中增加如下代码即可。继续拿HelloWorld开刀!

等比缩放效果图:
cocos2d-x-android-screen-scale-img-01

这样游戏就已经等比缩放了,不过在大部分android手机上会有黑边,虽然我个人比较喜欢这种方式,因为等比缩放游戏画面不会变形,但是通常情况下我说是没用的,策划说要全屏的,测试说要全屏的,我说让美术做个图,美术说要约会,没时间加班,好吧。又成了程序员的事了。

上面说过cocos2d-x默认支持等比例缩放,从源代码可以看出来,这些源代码在cocos2dx/platform/android下面,在CCEGLView_android.cpp中

在CCEGLView_android中增加宽高不同的缩放参数,并使用这两个参数来对画面进行不等比缩放

CCEGLView_android.h中增加

CCEGLView_android.cpp中

到此为止,画面上的缩放已经完成啦,但是缩放后触摸的位置还需要修正,继续修改cocos2dx/platform/android/jni/TouchesJni.cpp中关于触摸的缩放,此文件中有多处需要修改的敌方,但是修改方式都一样。以Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeTouchesBegin为例

0 0