(7)UI(基础对象)
1.地图控件:
地图控件可支持导入Tiled地图编辑器导出的tmx格式文件,地图是制作游戏关卡地形图的控件,对于即时战略类型游戏的制作,为了使玩家流畅的切换游戏画面,经常会使用超过屏幕尺寸的地图。如果选择使用不用的背景图片切换场景,不仅造成资源浪费,加载速度也会变的很慢。
地图控件很好的解决了这一问题:采用瓦片地图的形式。一张大的背景图由几种地形表示,每种地形对应一张小图片,即瓦片,把这些瓦片拼接起来,就组成了一个完成的地图。对一些不同地形的场景切换时,只需加载瓦片,大大提升效率。
使用场景
在官方示例的战斗场景中,我们使用了地图控件作为背景,即节约了资源,又提升了效率:
场景1:导入并使用地图文件。
您可以为地图控件导入特定效果的文件(TMX文件):
从资源面板拖动tmx文件至地图控件 特性-〉文件,松开鼠标即实现文件导入;
在属性面板的“特性”中,点击“导入地图文件”按钮,选择文件导入;
在画布中选中地图控件右键选择“设置地图文件”,选择文件导入。
2.粒子
粒子是带有随机性特效的控件,是计算机图形学中模拟特定现象的技术实现:如爆炸、烟花、水流等效果。在游戏制作时,粒子可以制造酷炫的效果,使场景表现更丰富。
粒子控件可支持导入Particle Designer导出的plist文件。
使用场景。
为了增加显示效果,游戏中很多细节都会使用粒子效果,在官方示例中,我们就在显示金币和钻石的位置,使用了粒子效果,以突出它们:
场景1:导入并使用粒子。
您可以为粒子导入特定效果的文件(plist文件):
(1) 从资源面板拖动文件至粒子控件 特性-〉文件,松开鼠标即实现文件导入;
(2) 在属性面板的“特性”中,点击“导入粒子文件”按钮,选择文件导入;
(3) 在画布中选中粒子控件右键选择“设置粒子文件”,选择文件导入。
3.声音
声音是控制音乐与音效的控件。在游戏制作时,声音对表现效果有至关重要的作用。Cocos Studio声音控件支持mp3、wav两种格式的音效文件。
使用场景:
在官方示例的胜利界面中,我们使用了声音控件来作为胜利的音效,您可以获取官方示例进行查看
场景1:导入文件
您可以为声音导入特定效果的文件(mp3/wav文件):
. 从资源面板拖动文件至声音控件 特性-〉文件,松开鼠标即实现文件导入;
. 在属性面板的“特性”中,点击“导入声音文件”按钮,选择文件导入;
. 在画布中选中粒子控件右键选择“设置声音文件”,选择文件导入。
场景2:能否让音效循环播放。
勾选特性-循环播放“支持”项时,在实际游戏项目中声音文件将会循环播放,未勾选时,声音文件只播放一遍即停止。
4.节点
节点是场景图的基本元素,在游戏制作时,经常需要用节点标记或创建父子关系。节点有三个主要特点:可以包含其他节点对象;可以执行一些操作。
使用场景:
在2D,3D制作中,我们大量应用了节点控件用于管理多个控件间的联动效果。
5.精灵
添加一张精灵控件,可导入图片资源。精灵控件和图片控件比,具有以下特性:
.不具备九宫格属性,但其性能开销低,经常被用来设置游戏中大部分图片资源。
.在Cocos Studio中精灵也常被用来做序列帧动画。
使用场景:
精灵控件使用十分频繁,我们给出一张官方示例中的界面图,您能想到哪些是由精灵控件组成的么?
您可以获取官方示例后,打开DifficultSelect.csd文件查看我们是如何使用精灵控件的,也许会对您的项目有所启发。
场景1:何时使用精灵控件?
上图中,窗口的边框都是由精灵控件组成的,为什么要这样做?有以下两个原因:1.节约资源浪费,减少资源大小。2.从复用做起,游戏中不同大小的窗口,均可使用同一套资源拼接。 拼接上图的边框,我们只使用了如下资源:
在画布上添加一个图片后,选择该图片控件,在属性面板的特性部分会展示控件当前的图片资源缩略图,您可以通过双击缩略图修改控件的图片资源,也可以将图片资源拖动到当前的样式资源上以替换为新的资源。 除此之外也能通过图片控件的右键菜单添加新的资源。
(7)UI(基础对象)的更多相关文章
- iOS开发UI基础—手写控件,frame,center和bounds属性
iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...
- UI基础UIWindow、UIView
UI基础UIWindow.UIView 在PC中,应用程序多是使用视窗的形式显示内容,手机应用也不例外,手机应用中要在屏幕上显示内容首先要创建一个窗口承载内容,iOS应用中使用UIWindow.UIV ...
- 转发-UI基础教程 – 原生App切图的那些事儿
UI基础教程 – 原生App切图的那些事儿 转发:http://www.shejidaren.com/app-ui-cut-and-slice.html 移动APP切图是UI设计必须学会的一项技能,切 ...
- Android UI基础之五大布局
Android UI基础之五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Andro ...
- Android UI基础教程 目录
从csdn下载了这本英文版的书之后,又去京东搞了一个中文目录下来.对照着看. 话说,这本书绝对超值.有money的童鞋看完英文版记得去买中文版的~~ Android UI基础教程完整英文版 pdf+源 ...
- UI基础UIButton
UI基础UIButton 前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实 ...
- [UE4]Get All Widgets Of Class、Get All Widgets with Interface,根据类名或者接口UI实例对象
Get All Widgets Of Class.Get All Widgets with Interface,是系统蓝图函数库提供的方法,可以在任何蓝图中使用. 可以方便地获得UI实例对象,进而使用 ...
- 在TypeScript中扩展JavaScript基础对象的功能
最近工作中用到,记录一下:假设我们需要一个功能,把一个数字比如10000输出为下面的字符串格式“10,000”,一般是写一个方法,那么我希望更方便一点,直接向Number类型添加一个格式化方法,比如叫 ...
- 认识JS的基础对象,定义对象的方法
JS的基础对象: 1.window //窗口对象 2.document //文档对象 3.document.documentElement //html对象 4.docume ...
- IOS开发UI基础--数据刷新
IOS开发UI基础--数据刷新 cell的数据刷新包括下面几个方面 加入数据 删除数据 更改数据 全局刷新方法(最经常使用) [self.tableView reloadData]; // 屏幕上的全 ...
随机推荐
- 随便谈谈用canvas来实现文字图片粒子化
声明:本文为原创文章,如需转载,请注明来源WAxes,谢谢! 看了岑安大大的教程http://www.cnblogs.com/hongru/archive/2012/03/28/2420415.htm ...
- Ajax基础详解1
Ajax也是前端必备技能了,学习任何语言,都需要以理论为基础的大量实践才能真正学会,之前学了Ajax很多遍,因为缺乏大量实践,总是会忘.所以不实践是失败之母...当然理论基础也很重要啦,今天谈谈我对A ...
- javascript基础(1)
1.前言 ECMAscript解释,用来解释JS代码 DOM 文档对象模型,浏览器在做显示时需要渲染DOM树 BOM 浏览器对象模型,可以控制浏览器的行为,代码的兼容性很差 2.基本类型 数字类型: ...
- Bootstrap3.0学习第七轮(按钮)
详情请查看http://aehyok.com/Blog/Detail/13.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...
- 第四十一课:CSS3 animation详解
animation是css3的另一个重要的模块,它成型比transition晚,吸取了Flash的关键帧的理念,实用性高. animation是一个复合样式,它可以细分为8个更细的样式. (1)ani ...
- AngularJS——grunt神器的安装
前言: 刚开始学 angularJS,在慕课网上看的大漠老师的视频(http://www.imooc.com/learn/156),里面刚开始讲述了前端开发-调试-测试所使用的手段和工具,本人对前端开 ...
- 配置ipvsadm服务
LVS的三种包转发方式 LVS提供了三种包转发方式:NAT(网络地址映射).IP Tunneling(IP隧道).Direct Routing(直接路由) 不同的转发模式决定了不同的 ...
- poj3107 树形dp
好久没更了.前段时间去ec-final,实力水一波,混了个铜,虽然很弱,但是可以算是对之前一段时间的回报吧. 现在每天忙着复习,逃课太多,啥都不会...不想挂科啊!!Orz... 题意(简化):警察想 ...
- Java基础-被final修饰的引用变量的指向
final修饰的引用变量一旦初始化赋值之后就不能再指向其他的对象,那么该引用变量指向的对象的内容可变吗?看下面这个例子: public class Test { public static void ...
- Memcache查看运行状况
连接上memcache telnet 127.0.0.1 11211 当前memcache的状态 stats pid memcache服务器的进程ID uptime 服务器已经运行的秒数 time 服 ...