你好,游客 登录 注册 搜索
背景:
阅读新闻

Cocos2d-x-3.7.1 发布,C++ 游戏开发引擎

[日期:2015-08-21] 来源:cocoachina.com  作者:Linux [字体: ]

Cocos2d-x-3.7.1 发布下载,亮点功能:

Cocos2d-x v3.7.1 是基于 v3.7 开发的一个稳定版本。该版本最重要的功能是为支持 Cocos 2.3.2 Beta 而增加的骨骼动画支持。

  1. studio: 增加了骨骼动画支持
  2. studio: 增加了对天空盒的支持
  3. studio: JSON解析器支持Parsed Touch/Click/Event事件回调
  4. Node: 新增getNodeToParentTransform(Node*)接口,该接口用于返回到某一特定父类的转换矩阵
  5. web: 新增cc.director.setClearColor()接口用于支持设置透明背景
  6. Widget: 同步UI的enable状态和bright状态
  7. studio: 优化解析代码性能
  8. JSB: 模板代码增加Firefox的远程调试功能

下载地址

Cocos2d-x v3.7.1 包含: C++, Lua & JS

主要功能详细情况

骨骼动画

Cocos2d-x v3.7.1和Cocos 2.3.2增加了新的骨骼动画系统,不同于之前的Armature骨骼动画。这么做的主要原因是我们抽象了ActionTimeline来支持所有基于时间轴的动画但是Armature并不支持这套时间轴体系。为了复用时间轴系统并让骨骼动画系统更精简,数据更轻量,我们实现了这套全新骨骼动画系统。从这个版本开始,开发者将可以在Cocos 2.3.2中编辑骨骼动画。

新的骨骼动画系统包含BoneNode, SkeletonNode, SkinNode三个核心类。SkeletonNode是BoneNode的子类,扩展了容器能力,它可以包含子BoneNode和嵌套其他骨骼来构造一个完整的骨骼结构。

支持的特性:

  1. 骨骼动画播放
  2. 嵌套骨骼
  3. 皮肤切换
  4. 时间轴控制
  5. 渲染调试节点

帧回调事件新骨骼动画系统在web引擎中同步支持,我们还会在未来版本中继续加强其功能

 
获取节点到某一个祖先节点的矩阵变换

在v3.7.1新加了一个接口Node::getNodeToParentTransform()。你可以传入该Node的一个祖先节点,返回的将是该节点到这个祖先节点的矩阵变换,比如:

auto parent2 = Node::create();
auto parent1 = Node::create();
auto node = Node::create();
parent2->addChild(parent1);
parent1->addChild(node);
// This will give you the transform of node in parent2's coordinate system
auto transform = node->getNodeToParentTransform(parent2);

这个接口对于web引擎也是可用的。

web引擎支持设置背景颜色

从v3.7.1开始,我们增加了cc.director.setClearColor(),是的web引擎可以方便地控制游戏的背景颜色。传入的颜色可以是不透明的或者含透明度通道。注意,如果你想要的是不透明的背景颜色的话,这种方法比创建一个不透明的层作为背景更高效。具体可以参考如下代码:

// 方法1:使用不透明的层作为背景
var background = cc.LayerColor(cc.color(255, 0, 0));
background.width = cc.winSize.width;
background.height = cc.winSize.height;
// This will give you a red background
scene.addChild(background, 0);
 
// 方法2:使用setClearColor,该方法比方法1高效
cc.director.setClearColor(cc.color(255, 0, 0));

当然了,你也可以创建完全透明的背景颜色。

Widget的enable状态和birhgt状态

在之前的设计,setEnabled只控制widget是否响应输入,而不影响widget的显示效果。许多开发者对此设计颇有怨言。所以从v3.7.1版本开始,我们修改了这一逻辑,使得setEnabled会影响到widget的显示效果。这就意味着,当你通过调用setEnabled(false)把一个widget变成不可用时,它会显示为灰色。

// 旧版本,你需要这样调用
widget->setEnabled(false);
widget->setBright(false);
 
// 在v3.7.1版本,你只需要调用
widget->setEnabled(false);

Firefox remote debugger support

从v3.7.1版本开始,新建的JSB工程支持Firefox远程调试。可以通过该文档了解如何使用Firefox浏览器来调试你JSB工程。注意,它只能调试JavaScript代码。如果要调试C++代码的话,还是需要通过Xcode或者Visual Studio。

--------------------------------------分割线 --------------------------------------

Ubuntu 下配置/编译/运行 Cocos2dx项目  http://www.linuxidc.com/Linux/2015-07/120723.htm

新里程碑:Cocos2d-x v3.0 正式版本发布! http://www.linuxidc.com/Linux/2014-04/100858.htm

Cocos2d基础及基本函数 http://www.linuxidc.com/Linux/2014-02/97382.htm

Cocos2d 如何做 Android 适配 http://www.linuxidc.com/Linux/2013-05/84616.htm

剖析Cocos2d-x之Action实现 http://www.linuxidc.com/Linux/2013-04/82436.htm

Ubuntu下Cocos2d-x开发环境搭建及配置 http://www.linuxidc.com/Linux/2013-03/81876.htm

--------------------------------------分割线 --------------------------------------

Cocos2D-X 的详细介绍请点这里
Cocos2D-X 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-08/122016.htm

linux
相关资讯       cocos2d-x 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款