3D ToolKit for cocos2dx 是一个简单的cocos2d-x 3D扩展,可以方便地在cocos2dx环境中创建3D图形。
基于cocos2d-x 2.2开发。
已实现功能:
1,向量和矩阵运算。
2,扩展的3D相机。(支持 透视投影 和 正交投影)
3,3D Sprite。(支持空间变换,更换mesh,更换shader)
4,扩展的shader program和uniform回调。
实现原理:http://www.cocoachina.com/bbs/read.php?tid=181942
目前iOS和Win32工程可用。
注意:如果你按下面方法成功编译了Demo工程,但是运行的时候崩溃,可能是由于cocos2d-x 2.2的一个bug造成的,解决办法看这里:https://github.com/wantnon2/3DToolKit-for-cocos2dx/issues/1
编译运行Demo工程:
一,iOS (IDE: Xcode):
1,下载一个cocos2d-x 2.2(如果没有的话)。
2,在cocos2d-x-2.2目录下新建一个文件夹myProject,再在myProject下建一个文件夹3DToolKitDemo。
3,git下来的HelloCpp文件夹放到3DToolKitDemo文件夹中。
4,编译运行HelloCpp中的ios工程。
二,Win32 (IDE: vs2010):
1,下载一个cocos2d-x 2.2(如果没有的话)。
2,在cocos2d-x-2.2目录下新建一个文件夹myProject,再在myProject下建一个文件夹3DToolKitDemo。
3,git下来的HelloCpp文件夹放到3DToolKitDemo文件夹中。
4,打开cocos2d-x-2.2下的cocos2d-win32.vc2010.sln。
5,将demo的win32工程添加到解决方案中,并设为启动项。
6,编译运行。
注意:如果遇到"无法打开xxx.lib"错误,可以在解决方案管理器中选择TestCpp工程,将其设为启动项并编译。编译成功后重新将demo工程设为启动项再运行。
在自己的cocos2dx项目中使用ToolKit:
一,iOS (IDE: Xcode):
1,将c3dToolKit文件夹添加到项目中。
2,将c3dDefaultResource文件夹拷贝到Resources目录下,并将c3dDefaultResource以“蓝色文件夹”的形式添加到项目中。
3,在需要使用的地方包含头文件"c3dToolKit.h"。
二,win32 (IDE: vs2010):
1,在工程的 属性->C++->附加包含目录中 中配置c3dToolKit文件夹路径。
2,将c3dDefaultResource文件夹拷贝到Resources目录下。
3,在需要使用的地方包含头文件"c3dToolKit.h"。
代码:https://github.com/wantnon2/3DToolKit-for-cocos2dx
首先:了解具体情况请看这里:https://github.com/wantnon2/3DToolKit-for-cocos2dx 在看代码之前,最好还是先把项目git下来执行一下demoproject:) ToolKit的代码都在c3dToolKit文件夹下,demo test1的代码在Classes中。 以下通过对ToolKit中重点类进行分析来说明实现思路: 注:在写这篇教程的过程中。对代码
如果有这样的数据,如: “100#200#300#400”,在之前使用orge引擎的情况下,可借助split来实现,如: Ogre::String str = "100#200#300#400"; StringVector strVec = StringUtil::split(str,"#"); 其实现代码如下,在OgreString.cpp中: // 头文件 static vector<Stri
严格来说,X3D是一种技术标准,而非具体的技术产品。 X3D一种无需任何授权费用的开放标准的文件格式以及运行时架构,使用XML来描述与交换3D场景和对象。它是一套ISO认可了的标准,为应用程序中嵌入实时图形内容而提供存储、恢复及回放的系统,在一种开放式架构中支持各式各样的领域与用户种类。 X3D具有一整套丰富的组件化特性,能胜任工程、科学可视化、CAD与建筑、医学可视化、培训与仿真、多媒体、娱乐、
扩展是专门设计的在 Yii 应用中随时可拿来使用的, 并可重发布的软件包。例如, yiisoft/yii2-debug 扩展在你的应用的每个页面底部添加一个方便用于调试的工具栏, 帮助你简单地抓取页面生成的情况。 你可以使用扩展来加速你的开发过程。 信息: 本文中我们使用的术语 "扩展" 特指 Yii 软件包。而用术语 "软件包" 和 "库" 指代非 Yii 专用的通常意义上的软件包。 使用扩展
vscode-react-native vscode-go
扩展为现有的类、结构体、枚举类型、或协议添加了新功能。这也包括了为无访问权限的源代码扩展类型的能力(即所谓的逆向建模)。扩展和 Objective-C 中的分类类似。(与 Objective-C 的分类不同的是,Swift 的扩展没有名字。) Swift 中的扩展可以: 添加计算实例属性和计算类型属性; 定义实例方法和类型方法; 提供新初始化器; 定义下标; 定义和使用新内嵌类型; 使现有的类型遵
概述 范例-hello-world 范例-word-count 范例-language-server 范例-调试器 调试-扩展 安装-扩展 范式-原则 测试-扩展 用我们的方法创造扩展
本页包含内容: 扩展语法 计算型属性 构造器 方法 下标 嵌套类型 扩展就是向一个已有的类、结构体或枚举类型添加新功能(functionality)。这包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模)。扩展和 Objective-C 中的分类(categories)类似。(不过与Objective-C不同的是,Swift 的扩展没有名字。) Swift 中的扩展可以: 添加计算型属
Jinja2 支持扩展来添加过滤器、测试、全局变量或者甚至是处理器。扩展的主要动力是 把诸如添加国际化支持的常用代码迁移到一个可重用的类。 添加扩展 扩展在 Jinja2 环境创建时被添加。一旦环境被创建,就不能添加额外的扩展。要添加 一个扩展,传递一个扩展类或导入路径的列表到 Environment 构造函数的 environment 参数。下面的例子创建了一个加载了 i18n 扩展的 Jinj
一、本功能块说明 1.功能块简介 本功能块主要集中了全站各个模块的一些扩展属性,能够更加直观快速的进入所需的功能页面! 二、术语约定 1.导航栏 在本功能块下 导航栏 统一指整站的头部导航,既如下图所示: 2.菜单栏 在本功能块下 菜单栏 统一指扩展导航栏下的左侧菜单,既如下图所示: