cocos2dx - v2.3.3编辑器简单使用及不同分辨率适配
准备工具
Cocos 引擎当前最新版本:v2.3.3 官网下载地址: http://www.cocos.com/download/
前述:cocos自带UI编辑器在最新的版本有了很大的改动,整合了动画相关成为一个新的引擎工具。甚至用法都做了相当改变,这里简单讲几个常用的实现。
UI项目
一、新建
用Cocos Studio工具新建一个状态栏项目。如下图:
二、预览
在新的编辑器,可以轻松看到效果,选中MainScene.csb,同时点击如下调试按钮即可看到效果。
下图中 在编辑器的左上角的分辨率及横向纵向,可以轻松查看不同的分辨率下UI的显示。
三、新建Layer窗口
选择文件->新建文件 可以选择新建的类型,新建一个Layer层窗口,改名为BattleWnd,方便我们之前新建游戏的使用。
添加资源等不在细述,我们直接用现有的Demo中资源来测试,选中PlayerStats->TopBar ->右键 -> 复制 。如下图
回到BattlerWnd, 右键Layer -> 黏贴。 可以看到效果图中,UI被拉伸了
选中TopBar,对其属性进行调整
将尺寸改为按像素设置,而不用原来的根据父节点的比例设置,并设置UI设计时的大小(640,150),然后再调回比例显示尺寸。 同时对下面UI排列的上和左选中,表示向上对齐,向左对齐。
为了方便游戏使用,将状态栏的内容去掉一些,同时调整下位置。
这样一个简单的UI界面就制作好了。
四、导出到项目
点击项目->发布与打包->发布资源,在res目录看到如下文件,导出目录也可以自己做修改
实际应用中,复制BattlerWnd.csb及MainMenu,Common目录到游戏Resource目录下。
注意: 导出的文件的相对路径需要始终保持一致,不然加载资源会有问题。
回到项目中,在对应地方添加如下代码
#include "cocostudio/CocoStudio.h"
///////////////////////////////////////////////////
m_pRootNode = CSLoader::createNode("BattlerWnd.csb");
if (!m_pRootNode)
{
return false;
}
// 层级在最上层
this->addChild(m_pRootNode, );
显示如下
看起来一切都很好了???试试不同分辨率看下,在AppDelegate.cpp中,调整 designResolutionSize大小。
发现不同分辨率下,状态栏并没有靠左靠右对其,而是始终在我们设计UI时的固定位置。这时候无比怀念上个版本的自适应分辨率选项,在编辑器上做了各种调整发现都不能有效。
最后才发现原来是要添加下面这段代码!!!
#include "ui/CocosGUI.h"
/*--------------------------*/
auto visibleSize = Director::getInstance()->getVisibleSize(); //根据设计 显示的实际大小
m_pRootNode->setContentSize(visibleSize);
ui::Helper::doLayout(m_pRootNode);
效果如下:
位置终于回来了,然后这不该在加载csb就做的吗???
至此,游戏有了一个状态栏,具体的大小位置,根据上述可以再各自调整哈~
cocos2dx - v2.3.3编辑器简单使用及不同分辨率适配的更多相关文章
- cocos2dx - v2.3.3编辑器骨骼动画
接上一节内容:cocos2dx - v2.3.3编辑器简单使用及不同分辨率适配 本节主要Cocos骨骼动画的创建及使用 一.新建 用Cocos Studio工具新建一个状态栏项目.如下图: 当然也可以 ...
- Cocos2d-x V2.x版本对64bit的支持
2015年2月1日后新提交的应用必须要支持64位架构. 我所使用的是cocos2d-x V2.0版本,而且源码有部分代码是修改过的.好在cocos2d-x官方已经放出了一个支持64位的2.2.6版本, ...
- [wp8游戏] cocos2d-x v2.2 + VS2013 环境搭建
[wp8游戏] cocos2d-x v2.2 + VS2013 环境搭建 by:唐小崇 http://www.cnblogs.com/tangchong 从cocos2d-x v2.1.4 以来,co ...
- cocos2d-x v2.2 IOS工程支持64-bit 遇坑记录
修改缘由 由于 iPhone 5S的A7 CPU iPhone 6(A8 CPU)都已经支持64-bit ARM 架构,据说64位处理器跑64代码会提高处理能力?因此二月一新提交appstore应 ...
- UEditor富文本编辑器简单使用
UEditor富文本编辑器简单使用 一.下载地址:https://ueditor.baidu.com/website/ 官网中并没有 python 版本的 UEditor 富文本编辑器,本文简单介绍 ...
- 使用TensorFlow v2张量的一个简单的“hello world”示例
使用TensorFlow v2张量的一个简单的"hello world"示例 import tensorflow as tf # 创建一个张量 hello = tf.constan ...
- Bootstrap在线编辑器简单分享
Bootstrap 已经使响应式网站开发变得简单很多. 但是如果你不必手动写全部代码,事情会如何呢? 如果你可以自由地选择你想要使用的Bootstrap 组件.并可以把它们拖拽到画布中,事情会如何呢? ...
- pycharm编辑器简单配置-- 持续更新完善
目录 python解释器安装.多版本共存等 给pycharm编辑器选择python解释器版本 配置pip仓库地址 方式一:直接修改文件配置 方式二:pycharm配置 方式三:通过临时指定pip仓库地 ...
- vim 编辑器简单使用总结
http://blog.csdn.net/sharp_allen/article/details/27075133转载 说了这么多,其实还少一个和word,记事本一样的编辑器,在各个操作系统都有编辑器 ...
随机推荐
- 转:【Java集合源码剖析】TreeMap源码剖析
前言 本文不打算延续前几篇的风格(对所有的源码加入注释),因为要理解透TreeMap的所有源码,对博主来说,确实需要耗费大量的时间和经历,目前看来不大可能有这么多时间的投入,故这里意在通过于阅读源码对 ...
- 团队作业7---Alpha冲刺之事后诸葛亮
一.设想与目标 1.我们的软件要解决什么问题? 我们的软件主要是帮助老师解决通过博客地址收集博客的相关信息来对学生对课程的认真与努力程度进行评定的问题,主要就是根据采集到的各项博客数据作为评分项,构建 ...
- 团队作业4--第一次项目冲刺(Alpha版本) 5
一.Daily Scrum Meeting照片 二.燃尽图 三.项目进展 对前两天完成的功能进行整合 测试完成功能(测试算法是否有bug,界面设计是否人性化,适合用户使用.) 四.困难与问题 在对前两 ...
- 201521123003《Java程序设计》第4周学习总结
1. 本章学习总结 你对于本章知识的学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 参考资料: 百度脑图 XMind 1.2 使用常规方法总结其他上课内容. (1)了解了类型转换(cast) ...
- Linux系统下用户与组的管理
Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...
- logback:用slf4j+logback实现多功能日志解决方案
slf4j是原来log4j的作者写的一个新的日志组件,意思是简单日志门面接口,可以跟其他日志组件配合使用,常用的配合是slf4j+logback,无论从功能上还是从性能上都较之log4j有了很大的提升 ...
- 前端基础之HTML
一.HTML 段落是通过 <p> 标签进行定义的 如: <p> hello world! </p> <html> 与 </html> 之间的 ...
- panda库------对数据进行操作---合并,转换,拼接
>>> frame2 addr age name 0 beijing 12 zhang 1 shanghai 24 li 2 hangzhou 24 cao >>> ...
- lintcode.22 平面列表
平面列表 描述 笔记 数据 评测 给定一个列表,该列表中的每个要素要么是个列表,要么是整数.将其变成一个只包含整数的简单列表. 注意事项 如果给定的列表中的要素本身也是一个列表,那么它也可以包含 ...
- JDBC第二篇--【PreparedStatment、批处理、处理二进制、自动主键、调用存储过程、函数】
这是我JDBC的第一篇 http://blog.csdn.net/hon_3y/article/details/53535798 1.PreparedStatement对象 PreparedState ...