Overview

How to run

  • mac: use or CMake
  • iOS: use CMake to generate Xcode project, then run
  • Android: use cocos command or Android Studio
  • windows: use cocos command or CMake
  • linux: use cocos command or CMakeCMake的使用教程可以参考。

改动点

更详细的接口变化,请参考API 改动

  • 移除了以下接口

在 Renderer 下添加了 backend 层,其中与 Metal 相关的适配文件统统放在了 metal 文件夹下,与 OpenGL ES 渲染相关的文件都放在 opengl 文件夹。原则上,除了 metal 和 opengl 这两个文件夹下的源码之外,不允许直接使用任何平台下的图形 API。

Shader 及 Program

Metal 使用 作为 shader 开发语言。为了支持 OpenGL ES shader 运行在 Metal 框架上,V4 采用 glsl-optimizer 将 OpenGL ES shader 转换成 Metal MSL shader。

V4 将原来存放在 renderer/路径下以 "ccShader" 开头的 shader 文件移到 renderer/shaders/ 路径下,除了将shader 文件名稍作修改外(删除了),在 shader 文件中显式声明 uniform 和 texture,不在使用 GLProgram 中预定义的 attribute,uniform 及 texutre 名。

  • 移除源码中使用 OpenGL ES API 情况。

  • 移除了 convertXXX,统一使用 CCTextureUtils.h 下的 convertXXX 接口。

  • 新增了如下接口,用于设置 render texture。
  • 移除了 opengl texture object(GLuint _name ),改用 backend::Texture2DBackend* _texture 作为纹理对象。

TO be continue…