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(基础对象)的更多相关文章

  1. iOS开发UI基础—手写控件,frame,center和bounds属性

    iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...

  2. UI基础UIWindow、UIView

    UI基础UIWindow.UIView 在PC中,应用程序多是使用视窗的形式显示内容,手机应用也不例外,手机应用中要在屏幕上显示内容首先要创建一个窗口承载内容,iOS应用中使用UIWindow.UIV ...

  3. 转发-UI基础教程 – 原生App切图的那些事儿

    UI基础教程 – 原生App切图的那些事儿 转发:http://www.shejidaren.com/app-ui-cut-and-slice.html 移动APP切图是UI设计必须学会的一项技能,切 ...

  4. Android UI基础之五大布局

    Android  UI基础之五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Andro ...

  5. Android UI基础教程 目录

    从csdn下载了这本英文版的书之后,又去京东搞了一个中文目录下来.对照着看. 话说,这本书绝对超值.有money的童鞋看完英文版记得去买中文版的~~ Android UI基础教程完整英文版 pdf+源 ...

  6. UI基础UIButton

    UI基础UIButton 前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实 ...

  7. [UE4]Get All Widgets Of Class、Get All Widgets with Interface,根据类名或者接口UI实例对象

    Get All Widgets Of Class.Get All Widgets with Interface,是系统蓝图函数库提供的方法,可以在任何蓝图中使用. 可以方便地获得UI实例对象,进而使用 ...

  8. 在TypeScript中扩展JavaScript基础对象的功能

    最近工作中用到,记录一下:假设我们需要一个功能,把一个数字比如10000输出为下面的字符串格式“10,000”,一般是写一个方法,那么我希望更方便一点,直接向Number类型添加一个格式化方法,比如叫 ...

  9. 认识JS的基础对象,定义对象的方法

    JS的基础对象: 1.window       //窗口对象 2.document   //文档对象 3.document.documentElement      //html对象 4.docume ...

  10. IOS开发UI基础--数据刷新

    IOS开发UI基础--数据刷新 cell的数据刷新包括下面几个方面 加入数据 删除数据 更改数据 全局刷新方法(最经常使用) [self.tableView reloadData]; // 屏幕上的全 ...

随机推荐

  1. WebAPI2使用Autofac实现IOC属性注入完美解决方案

    一.前言 只要你是.NETer你一定IOC,IOC里面你也会一定知道Autofac,上次说了在MVC5实现属性注入,今天实现在WebApi2实现属性注入,顺便说一下autofac的程序集的注入方式,都 ...

  2. zoeDylan.js框架-数据底层

    zoeDylan.js是墨芈自己写的一套前端框架,不过由于墨芈经验不足,所以框架内部代码有些混乱. 墨芈写这套框架的目的是为了存储以后做前端开发过程中的一些代码,简单的说这套框架就是一个大杂烩. 这套 ...

  3. threejs构建web三维视图入门教程

    本文是一篇简单的webGL+threejs构建web三维视图的入门教程,你可以了解到利用threejs创建简单的三维图形,并且控制图形运动.若有不足,欢迎指出. 本文使用的框架是three.js gi ...

  4. css写一个梯形

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>D ...

  5. Ztree异步加载自动展开节点

    在Ztree的官网Demo中,有自动展开的例子,是通过设置节点属性open:true来实现自动展开的,但是在异步加载中,这个属性设置为true也不会自动展开,因为open:true是指在有子节点的情况 ...

  6. iOS--雪花掉落特效

    - (void)createAnimaton { // 实例化发射器 CAEmitterLayer *snowLayer = [CAEmitterLayer layer]; // 设置大小 snowL ...

  7. 【C#】依赖于SharpZipLib的Zip压缩工具类

    上班第二天下班,课外作业,实现一个ZIP压缩的工具类.本来想用Package,但是写完了才发现不能解压其他工具压缩的zip包,比较麻烦,因此本工具类依赖了第三方的库(SharpZipLib  vers ...

  8. Timer中schedule()的用法

    schedule的意思(时间表.进度表) timer.schedule(new TimerTask(){ void run()},0, 60*60*1000);timer.schedule(new M ...

  9. 使用background和background-image对CSS优先级造成影响

    在写一个关于背景图的CSS时候发现一个奇怪的现象, 原图: 如下代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...

  10. G-nav-01

    <body><header id="masthead" class="masthead" role="banner"> ...