(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]; // 屏幕上的全 ...
随机推荐
- android用欢迎界面加载运行环境
以前一直以为splash页只是图好玩.. 今天才知道是应该把环境加载放在这个页面... 论坛和github上太多仿XXX的项目果然只能学习下ui的思路... 以前把环境加载放在application里 ...
- IT男的”幸福”生活"续3
我和MM一进饭店,服务员走过,面带笑容,说:“欢迎,欢迎,两位里面坐.” ...... 谢谢大家的捧场,IT的”幸福”生活.是我的回忆录来着.真实可靠,在写法上有点小说化.可能是我一直看小说的原因吧, ...
- Fiddler工具的基本功能
Fiddler是一款用于网页数据分析,抓取的工具,里面集成了对网页强大的功能外,还可以通过设置,使其对手机的数据也可以进行抓取 Fiddler的原理是: 通过在客户端和服务器之间创建一个代理服务器来对 ...
- 简单统计SQLSERVER用户数据表大小(包括记录总数和空间占用情况)
在SQLSERVER,简单的组合sp_spaceused和sp_MSforeachtable这两个存储过程,可以方便的统计出用户数据表的大小,包括记录总数和空间占用情况,非常实用,在SqlServer ...
- 看别人的代码学习的css
<ul class='y1'> <li><a href="#">菜单</a></li> <li ...
- Linux各目录作用
- [C#]Main(String[] args)参数输入问题
Main函数是程序的入口点,它是入口点,那它的参数,又是怎样来的呢?首先写个简单的测试程序看看args到底是什么? class Program { static void Main(string[] ...
- LINQ浅析
在C# 3.0之前,我们对不同的数据源(数据集合.SQL 数据库.XML 文档等等)进行操作(查询.筛选.投影等等),会使用不同的操作方式. C# 3.0中提出了LINQ(Language Integ ...
- HDU 3401 Trade dp+单调队列优化
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3401 Trade Time Limit: 2000/1000 MS (Java/Others)Mem ...
- Java继承中属性、方法和对象的关系
大家都知道子类继承父类是类型的继承,包括属性和方法!如果子类和父类中的方法签名相同就叫覆盖!如果子类和父类的属性相同,父类就会隐藏自己的属性! 但是如果我用父类和子类所创建的引用指向子类所创建的对象, ...