cocos2d-x ResolutionPolicy::SHOW_ALL显示漂亮的图像,而不是黑色的间隙
cocos2d-x ResolutionPolicy::SHOW_ALL show nice images instead of black gaps
当你在cocos2d-x中设置ResolutionPolicy::SHOW_ALL
时,它可能会从上下或从左右两侧出现黑色区域。我可以用一些漂亮的图片覆盖黑色区域吗?
我不认为你可以在后面的区域添加一些东西。
相反,解决方案是建立一个场景,其中已经包含了你想要添加的漂亮图像。步骤如下:在你的AppDelegate::applicationDidFinishLaunching()中使用这个来检测屏幕大小:
CCSize frame = pEGLView->getFrameSize();
设置与此帧大小成比例的设计分辨率,保持其长宽比
把你的"内容"放在中间,然后你必须计算"黑色区域"的位置,并添加精灵来覆盖它们。请记住,对于不同的屏幕,孔可能是不同的,所以你需要做一些数学计算,并适当地覆盖不同的孔尺寸。
因此,执行ResolutionPolicy::SHOW_ALL将openGL视图设置为该大小。这就是为什么不能用那个来做。另一方面,有很多方法可以解决这个问题。我所做的是:1. 不要设置resoltionpolicy
-
使用一个图层来保存这些漂亮的图像/效果
-
在同一个场景中创建一个新层,并根据内容的长宽比设置该层的宽度和高度。把这个作为你的主要游戏视图。
相关文章:
- 除非重新绘制大小,否则SDL_Texture在调整大小后呈现黑色
- 初始化派生结构的基部分/意外打包派生结构字段以对齐基结构的间隙
- 为什么我会得到黑色纹理?
- 具有 GPU 时间表的卤化物产生黑色图像
- OpenGL只是渲染一个黑色的方块
- C++堆栈中数组之间的间隙
- 黑色纹理,如果图片大小在第二个 OpenGL 线程中> 1 * 1
- 将未签名的字符转换为红黑色树的签名字符
- CImage::D raw() 画了一幅黑色的图画
- 纹理显示为黑色
- openCV中的Absdiff可以编译,但显示黑色图像
- 在图像上的矩形区域之外填充黑色
- 如何在串行通信中插入间隙?
- 来自程序子窗口的位图返回为黑色
- 用高斯Seidel红色黑色求解1D泊松方程
- 在 OpenCV 和 C++ 中查找距轮廓中心最近的黑色像素
- 具有SPI_SETDESKWALLPAPER功能的程序仅在尝试使用C++将其更改为图像时将桌面背景更改为黑色
- 现代OpenGL 3.3核心黑色纹理
- 在Android Studio中使用NDK GrabCut返回的OpenCV总是黑色面具
- cocos2d-x ResolutionPolicy::SHOW_ALL显示漂亮的图像,而不是黑色的间隙