cocos creator基础-(六)cc.Sprite使用

1: 了解cc.Sprite的使用;
2: 了解cc.Sprite的大小模式;
3: 学会使用九宫格,使用九宫格节省美术资源;
4: 学会个性化的时间精度条的使用;
5: 代码里面来更换图片;

cc.Sprite

1: 游戏中显示一个图片,通常我们把这个叫做”精灵” sprite
2: cocos creator如果需要显示一个图片,那么需要在节点上挂一个精灵组件,为这个组件指定要显示的图片(SpriteFrame)
3: 显示一个图片的步骤:
(1) 创建一个节点;
(2) 添加一个组件;
(3) 要显示的图片(SpriteFrame)拖动到SpriteFrame;
(4) 配置图片的SIZE_MODE:
a: CUSTOM 大小和CCNode的大小一致;
b: RAW 原始的图片大小;
c: TRIMMED 大小为原始图片大小, 显示的内容是裁剪掉透明像素后的图片;
(5) trim: 是否裁剪掉 图片的透明区域, 如果勾选,就会把完全透明的行和列裁掉, 做帧动画的时候,我们一般是用原始大小不去透明度,动画,不至于抖动;
4: 精灵更换spriteFame;
5: 快捷创建带精灵组件的节点;

图片模式

1: simple: 精灵最普通的模式, 选择该模式后,图片将缩放到指定的大小;
2: Tiled: 平铺模式, 图片以平铺的模式,铺地板砖的模式,铺到目标大小上;
3: Slice: 九宫格模式,指定拉伸区域;
4: Filled: 设置填充的方式(圆,矩形),可以使用比例来裁剪显示图片(只显示的比例);

九宫格的使用

1: 指定拉伸区域, 让图片在拉伸的时候某些区域不会改变;
比如圆角,聊天气泡等
2: 九宫格能省图片资源, (对话框);
3: 编辑九宫格,来制定缩放区域;
4: 体会对话框背景的九宫拉伸;

Filled模式

1: 配置Filled模式
2: 配置Filled模式, 设置为Radius参数;
3: 配置Radius的参数模式,
中心: 位置坐标(0, 1小数), (0, 0)左下脚, (1, 1) 右上角 (0.5, 0.5) 中心点
Fill Start 开始的位置: 0 ~1, 右边中心点开始,逆时针走
Fill Range: 填充总量(0, 1];
FillRange为正,那么就是逆时针,如果为负,那么就是顺时针;
4: 个性化时间进度条案例;
5: 游戏中道具的时间进度显示都可以;

cc.Class({
    extends: cc.Component,

    properties: {
        // foo: {
        //    default: null,      // The default value will be used only when the component attaching
        //                           to a node for the first time
        //    url: cc.Texture2D,  // optional, default is typeof default
        //    serializable: true, // optional, default is true
        //    visible: true,      // optional, default is true
        //    displayName: ‘Foo‘, // optional
        //    readonly: false,    // optional, default is false
        // },
        // ...
        sprite: {
            default: null,
            type: cc.Sprite,
        },

        action_time: 15,
    },

    // use this for initialization
    onLoad: function () {
        // 获取组件的实例,代码获取,编辑器绑定
        var node = this.node.getChildByName("time_bar");
        this.sp = node.getComponent(cc.Sprite);
        // end 

        // this.now_time = 0;
        this.now_time = this.action_time;
    },

    // called every frame, uncomment this function to activate update callback
    update: function (dt) {

        /*this.now_time += dt;
        var percent = this.now_time / this.action_time; // -->百分比
        if (percent >= 1)  {
            percent = 1;
            this.now_time = 0; // 重新开始
        }

        this.sp.fillRange = percent;
        */

        this.now_time -= dt; // 顺时针转动- 逆时针+
        var percent = this.now_time / this.action_time; // -->百分比
        if (percent <= 0)  {
            this.now_time = this.action_time; // 重新开始
        }
        this.sp.fillRange = percent;
    },
});

原文地址:https://www.cnblogs.com/orxx/p/10430227.html

时间: 2024-10-08 18:03:22

cocos creator基础-(六)cc.Sprite使用的相关文章

cocos creator基础-(十三)cc.Loader使用

1: 掌握cc.loader加载本地资源; 2: 掌握cc.loader加载远程资源; 3: 掌握资源释放的机制与autorelease; 4: 掌握手动释放资源; cc.Loader 1:有三个默认的Pipeline: (1) assetLoader: 主要用于加载资源, 加载asset类型资源,和释放这些资源; (2) downloader: 主要用于下载文件, 文本,图像,脚本,声音,字体, 自定义的download; (3) loader: 第三个默认的Pipeline,可以加载json

cocos creator基础-(十六)自定义的帧动画播放组件(需要优化)

1: 掌握帧动画的原理; 2: 完成帧动画组件的编写; 3: 代码中使用帧动画组件; 通过拖拽图片进行播放,比引擎的制作方式方便,但动画不是很灵活 帧动画播放组件 1: creator播放帧动画需要通过动画编辑器去制作; 2: 为了方便控制和使用加入帧动画代码播放组件; 3: 属性设置: sprite_frames: 帧动画所用到的所有的帧; duration: 每帧的时间间隔; loop: 是否循环播放; play_onload: 是否加载组件的时候播放; 4: 接口设置: play_once

cocos creator 基础1,小白自学日常。

<!--作为一个初学者,难免有遗漏和不妥之处,还请不吝赐教,不胜感激.错则改之,无则加勉. 接触ccc的第一天.我首先去看了下Cocos Creator 用户手册(http://docs.cocos.com/creator/manual/zh/),然后跟着做了一个摘星星的小游戏. 第一天就是简单的复制粘贴,简单了解了一下操作界面和运行原理.第二天我找了下前辈们的教程,找了一个基础加实战的教程(http://forum.cocos.com/t/topic/40659),这里对作者表示感谢. 作为小

cocos creator基础-(二十三)android环境搭建、h5/android 打包发布

1: 了解h5打包发布,要注意的事项; 2: 完成android环境配置与creator 项目android打包; 3: 使用 eclips打开项目或android-studio; h5打包发布 1:引擎模块裁剪,减少引擎体积; 2: resources目录的特性,减少setting.js体积; 3: 订制启动的logo,与样式; 4: resources特性 a:creator里面会根据场景的依赖来打包的我们的资源, 资源没有用的,将不会被打包进来; b:有时候我们需要代码加载我们的资源, c

cocos creator基础-cc.Node(三)坐标空间转换

cc.Vec2 1: cc.Vec2 二维向量坐标, 表结构{x: 120, y: 120}; cc.v2(x, y) 创建一个二维向量 cc.p() 创建一个二维向量(这个2.0被废弃了,用cc.v2替代) 2: cc.pSub: 向量相减 cc.pSub(v1, v2) 被废弃,用v1.sub(v2)替代 3: cc.pAdd: 向量相加; cc. cc.pAdd(v1, v2) 被废弃,用v1.add(v2)替代 4: cc.pLength: 向量长度; cc.pLength(dir)被废

cocos creator基础-(二十四)cc.Director与资源加载策略

1: 了解creator场景切换; 2: 了解director基本的一些接口; 3: 理解资源加载的策略; cc.Director对象 1:游戏里面控制管理整个游戏全局对象,包括了场景切换等,为cc.Director对象; 2:导演对象全局只有一个cc.director,大写的为类, 小写的cc.director为全局的导演对象; 3: cc.director来获取导演对象实例; 4: 游戏中各种管理对象都可以通过cc.director获取,比如物理引擎管理,Action管理, 碰撞检测管理等;

cocos creator基础-(二十)物理引擎碰撞检测

1: 理解物体类型和分类,配置碰撞矩阵;2: 编写碰撞响应函数,监听碰撞事件;3: 学会了解Sensor来做触发器,只触发碰撞不改变运动; 物体类型与碰撞矩阵 1: 添加物体类型: Add Layer, 每个类型对应一个名字group与groupIndex2: 创建物体的时候要选择一个类型;3: 配置碰撞矩阵,决定哪些物体类型碰撞; 碰撞事件监听 1: 刚体组件开启碰撞监听;2: 当有碰撞发生的时候,遍历刚体所在的节点所挂的所有的组件,看组件是否实现了碰撞检测函数,如果是,那么调用;3: 在需要

cocos creator基础-(二十五)FileUtils本地文件读写

1: 掌握jsb.fileUtils的基本使用; FileUtils API   CCFileUtils.h 1:jsb是javascript bind的代表,整个C/C++ 导出的绑定都在这个jsb里面,jsb 支持native,不支持h5(浏览器上无法运行jsb is not defined ); 2: FileUtils是本地文件读写的一个工具类,全局只有一个实例; 3: jsb.fileUtils来获取文件读写工具类的实例; 4: jsb.fileUtils.isDirectoryExi

cocos creator基础-(二十九)动画编辑器编辑地图路径

思路 1.利用动画编辑器,设置一个路径,多个路径就编辑多个动画 2.用特定的代码对动画进行处理,获取到路径坐标,大佬已经写好代码,不用自己重复造轮子了(微元法求曲线长度) 获得动画路径的贝塞尔曲线方程 求得每一段贝塞尔曲线的长度 每隔一小段打一个点 最终生成一个路径 3.编写寻路脚本,挂载到物体上,让沿着路径移动 动画编辑 脚本挂载 // gen_map_path.js 动画路径转换坐标的代码 已经升级到2.x cc.Class({ extends: cc.Component, properti