目前Cocos Studio的UI控件中包含ScrollView、PageView、ListView三种滚动层,但是经常会遇到开发者们抱怨在游戏中会显示说有的内容,而不会将超出区域裁剪掉。
目前经过总结,基本由以下三种情况造成:
一:未开启“模拟裁剪属性”
如上图:这个属性在所有的滚动层容器都可以看到。如果你想正常显示滚动层的内容,请注意勾选此项。二:未开启OpenGL深度缓存这个问题在ios会经常遇到,部分安卓机型也会出现,遇到此问题按照下面的方法修改:ios 工程修改 :AppController.mm文件(在ios项目根文件夹)
复制代码
- EAGLView *__glView = [EAGLView viewWithFrame: [window bounds]
- pixelFormat: kEAGLColorFormatRGBA8
- depthFormat: GL_DEPTH24_STENCIL8_OES
- preserveBackbuffer: NO
- sharegroup: nil
- multiSampling: NO
- numberOfSamples: 0];
|
安卓工程 修改 game activity,在安卓项目的src目录下
复制代码
public Cocos2dxGLSurfaceView onCreateView() {
Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
glSurfaceView.setEGLConfigChooser(5,6,5,16,8);
return glSurfaceView;
}
三:硬件不支持
如果您尝试过以上方法还是不能解决,这多数情况下是由于这台设备的显卡不能够支持,这部分机型多数集中于10年左右的机型,如U880等低端机。目前这批机型已经基本退出市场,可以给予忽略。
如果大家有其他问题并未包含在以上三种情况欢迎跟帖回复。
四:背景变为绿色
该问题是opengL渲染模式问题导致的,请您尝试修改appActivity.java解决。代码如下:
public Cocos2dxGLSurfaceView onCreateView() {
Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
glSurfaceView.setEGLConfigChooser(5,8);
//仍不行可以试试
8,8,0
return glSurfaceView;
}
还有一种只在切换/加载场景、截屏的时候出现绿色,但是加载完毕后一切正常
这个请参考
https://github.com/cocos2d/cocos2d-x/pull/7927 修复。仅针对3.0~3.2,3.3以后版本无需修改。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。