Cocos2d-x 3D功能学习笔记 分类: cocos2d代码编写 ...

3D游戏中也有Sprite对象。理所当然地,任何游戏的核心基本对象都是Sprite对象。3D精灵不仅有x、y轴,还有z轴。与常见的Sprite一样,Sprite3D有多种方式。
使用Sprite3D


给Sprite3D对象添加3D模型


上文中提到3D模型是网格的集合。所以你可以将一个3D模型添加到其他的3D模型上,从而创建出丰富的效果。我们来举一个给对象添加武器的例子。首先需要找到武器要添加到的附着点,这个可以使用getAttachNode(attachment_point_name) 函数来实现。然后需要使用addChild()函数将这个新模型作为一个子节点添加到附着点上。你可以把以上过程理解为将多个简单的3D模型组合起来创建更复杂的模型。


更换3D模型
当进行3D建模时,你或许想要给模型添加动态变化。也许道具、外观的变化或视觉信号会使用户注意到=模型状态的改变。


如果3D模型是由网格组成的,可以使用getMeshByIndex()和getMeshByName()来访问网格数据。使用这些函数可以实现更换武器或者改变对象外观的效果。如下图中我们给女孩穿上一件外套:






动画


Sprite3D对象是游戏的核心。我们已经学到了如何操作精灵。然而,我们还需要更复杂的操作,例如动画!你可以使用Animation3D和Animate3D对象来运行一个3D动画。然后使用Ainmation3D对象来创建一个Animate3D动作。


摄像机


Camera对象在3D建模中非常重要。3D世界不是一个平面,需要使用 Camera 作为3D世界的导航。正如我们在看电影时屏幕面板的左右切换一样,这个概念同样适用于 Camera对象。Camera对象继承自Node,因此支持大部分的Action对象。Camera对象有两种类型:透视(perspective)摄像机和正交(orthographic)摄像机


Camera对象听起来很复杂,但是在Cocos2d-x中使其变得很简单。当使用3D时,创建一个Camera对象没有什么不同。基于Director对象的投影属性,每个Scene都会自动地创建一个默认摄像机

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/leansmall/p/4715691.html

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值