欢迎光临【多玩游戏注册登陆】-首页网站!
公司名称:多玩游戏开发注册公司
公司地址:辽宁省鞍山市多玩游戏注册集团
公司邮箱:679596@qq.com
公司电话:400-123-3356
招商QQ: 679596
公司网址:http://www.hlxlzsm.com
新闻动态您当前的位置:【多玩游戏注册登陆】-首页 > 新闻动态 >

恩佐2—恩佐2注册【官网登录】

更新时间:2020-04-21 23:45

  

  恩佐2—恩佐2注册【官网登录】诚招代理:【QQ679596】【微信kcwl996】CCNode是cocos2d中最重要的一个基类,是一个抽象类,定义了所有节点的公共属性和方法,因为其重要性,所以这里把官方API对CCNode的属性方法描述粗略了翻译下,方便日后查询使用,也希望能帮到大家,如果有的地方描述不准确,大家可以直接参考官方英文原版的说明:点击打开链接。

  CCNode是一个重要的元素,所有我们看到绘制下来的东西都是CCNode,最常见的CCNode有:CCScene,CCLayer,CCSprite,CCMenu;

  CCNode的主要特征有:每个节点都可以包含子节点、可以定时执行回调、可以执行动作;部分CCNode子类提供了一些独特的功能;

  子类化一个CCNode通常意味着下面这些操作:重写初始化方法以初始化资源或回调、创建回调来控制时间、重写绘制着色;

  CCDirector是整个cocos2d引擎的核心,游戏之中的一些常用操作控制,比如场景的转换,游戏的暂停继续控制,世界坐标和GL坐标之间的切换,对于精灵(游戏元素)的控制等,还有一些游戏数据的保存调用,屏幕尺寸的获取等;

  CCDirector是游戏项目的总导演,会经常调用进行一些控制,所以该CCDirector利用了单件设计模式,也就是项目里取到的director都是同一个;

  Scene场景也是cocos2d中的重要元素,我们可以理解为场景是一个舞台,游戏中最重要的就是构建一个一个的舞台,游戏中关卡,版块的切换就是一个一个场景的切换;CCDirector控制对场景的切换,pushScene,popScene等director中的方法就是控制场景的切换的~有点类似于UINavigationController中的切换方法;

  Scene是CCNode的子类,因为场景的特殊性,所以决定了场景是由一个一个的其他元素构建的,精灵和层,菜单(特殊的层)等,通过addChild等方法,这也是继承自CCNode的一些特性;

  层是依附于场景之上的图层,可以响应用户的操作事件,一个场景常常是由多个层组成的~cocos2d官网上的一张场景分解图可以很形象地说明;

  左上的场景由三个layer组成,背景层,精灵动画层,菜单层,三个层有顺序地叠加形成了一个scene,该scene由director,在适当的时候用push或pop等方式来控制游戏场景切换;与用户交互的事件也在层之上进行定义,比如菜单层上定义的点击事件,另外层还可以响应加速计;

  层是节点CCNode的子类,所以可以被手动控制翻转或用动作(Action)来进行控制,并可以在其上面添加其他层或者精灵等(addChild);

  层的创建由继承自CCNode的node方法来进行,通常在场景的init方法中进行,如下

  层的本质是对节点进行分组(iPhone&iPad cocos2d 游戏开发实战);

  精灵CCSprite继承自CCNode,可以认为是一个可以被手动控制,执行动作的2D图片,我们在游戏中看到的人物形象等基本上全是精灵;精灵可以在其身上添加子精灵,并且运动时,附着的其他精灵会跟着一齐运动;精灵常常与美术相关;

  CCAction是游戏的一个和重要组成部分,游戏之所以区别于应用就是因为形象鲜明,趣味性交互性强,如果游戏元素没有动作,那就很无聊了;

  之前我们已经介绍过,CCNode节点中有一个(void)runAction:(CCAction *)action 方法,所以,所有继承自CCNode的类,比如精灵,层,甚至菜单都可以执行动作;

  瞬时动作更接近于节点属性的设置,有的时候是为了更方便地组成动作序列,延时动作则是我们经常看到的一些动画画面;

  瞬时动作我们会在介绍动作序列时再作详细说明,下面归纳一下延时动作,常用的延时动作有

  关于贝塞尔曲线,主要作用是通过点确定准确的曲线图形,建议大家百度一下点击打开链接

  通过上面这些主流的动作行为,我们可以实现一些很有视觉冲击力的动画效果,常用到的常常有放大(远近景拉伸),旋转,跳越等;

  cocos2d中的动作远比上面这些要灵活的多,下回就介绍一下动作的一些修饰,动作序列,和动作序列中怎样加入一些回调方法;

  该类用于更灵活的使用动作,所以我习惯称为对动作的修饰类,之所以这样叫也是因为CCActionEase在生成时是在已有的action上又包了一层(actionWithAction),而节点调用时也是直接将其作为动作来调用的;大家随便怎么叫吧,知道有这么个玩意儿就行了;

  修饰前的动作运行前向后,运行结束后回弹,注意,这里回弹是超过设定的移动距离再弹回;

  修饰前的动作结束前有三次回到起点的跳跃(自己总结的,大家还是自己看看效果好)

  由慢到快,再由快到慢,注意这三个是CCEaseRateAction的子类,有一个方法

  还有一些CCEase效果,不过因为不常用,或者我也把握不准,试不出来效果,这里就不列了;

  上面动作序列的效果为:sprite向右移动100,其中因为CCEaseBounceOut的原因水平方向往回弹三次,之后往向跳三次,每次50,高度为50;

  注意添加动作序列时需要以nil为结尾,ios开发同学应该很熟悉这种操作;

  一个动作序列中一个动作一个动作之间,如果我们想要调用某个方法,可以使用CCCallFunc来进行,使用方法如下:

  然后用CCCallFunc来生成一个可以添加到动作序列里的对象,并放到两个动作之间;

  这样就会在执行完ease动作之后,执行jump动作之前,调用callBackTest方法,输出内容;

  除了CCCallFunc,还有CCCallFuncN,CCCallFuncND可以使用,三者之间有一定的区别;CCCallFunc调用的方法没有参数,后两者分别有一个,两个参数且固定的第一个参数都是sender本身;

【返回列表页】

地址:辽宁省鞍山市多玩游戏注册集团   电话:400-123-3356    传真:+86-123-4444
Copyright © 2002-2025 【多玩游戏注册登陆】-首页 版权所有 TXT地图 HTML地图 XML地图 招商QQ:679596