axmol/docs/RELEASE_NOTES_CN.md

3.7 KiB
Raw Blame History

Table of Contents generated with DocToc

v3.12

新特性

  • 支持VR目前还处于测试阶段
  • 支持Tizen平台
  • 提升引擎在Android平台的渲染效率
  • 提升Cocos2d-html5 WebGL模式的性能
  • 支持Android的OBB扩展格式
  • Android平台使用clang编译器使用NDK r11+

主要特性的详细介绍

VR支持

该版本添加了VR支持不过还处于测试阶段。目前支持的设备有__Google Cardboard__Oculus RiftSamsung Gear__和__Deepoon E2。关于如何使用、测试VR功能请参考Programming Guide

Tizen支持

该版本添加了Tizen平台的支持。支持的TizenSDK版本是__2.4__。开发Tizen平台应用时需要使用Tizen平台有自己的IDE和模拟器。请参考这篇文档了解如何搭建Tizen应用开发环境。

提高Android渲染效率

这里要多谢社区的开发者帮忙在各种Android设备上测试、验证性能问题。这个问题的原因是因为引擎默认创建了一个比较大的map buffer实际需要传到该map buffer的数据并没有那么多。但是在有些Android设备不管实际数据大小是多少每次都传输和map buffer大小一样多的数据。

通过代码解释如下:

// 初始化map buffer
glBindBuffer(GL_ARRAY_BUFFER, BUFFER_ID);
glBufferData(GL_ARRAY_BUFFER, 65536, xxx , GL_DYNAMIC_DRAW);

具体使用map buffer的代码是

// 实际使用map buffer
glBindBuffer(GL_ARRAY_BUFFER, BUFFER_ID);
// 虽然只需要传输100个元素但是在某些Android机器上仍然传输65536个元素
glBufferData(GL_ARRAY_BUFFER, 100, xxx , GL_DYNAMIC_DRAW);

详细的讨论可以参考这个github issue

提升Cocos2d-html5引擎WebGL模式下的性能

该版本大幅提升了Cocos2d-html5引擎在WebGL模式下的性能。引擎的渲染性能、CPU使用量和内存大小都有提升。

rendering peformance

cpu-usage

memory-usage

Android使用clang编译器

从NDK r11开始Google弃用了gcc所以cocos2d-x也切换到clang编译器。

建议使用NDK r11c。在测试过程中发现如果使用NDK r10c + clang的话Node::enumerateChildren()会崩溃。

其他改动

更完整的改动列表可以阅读full changelog