首页 > 代码库 > cocos2d-x 学习笔记1 Sprite3D

cocos2d-x 学习笔记1 Sprite3D

1 FBX是一种通用导出格式,可以通过maya或max进行导出.

几种文件格式

1) obj:obj是max或maya默认可以导出的格式,不需要任何转换,但是它有一个缺点就是不支持动画的导出。

2) c3t文件是通过FBX模型文件转换后生成的Json格式的文件,使用c3t格式的目的是方便用户进行模型数据的查看和版本比较,由于c3t文件是Json格式的,所以它的文件体积比较大,载入速度也比较慢,通常在实际游戏中不提倡使用。

3) c3b:c3b是二进制文件,数据的内容与c3t文件是一样的,不同的是c3b文件体积小,加载速度快,提倡在实际游戏开发中使用。

c3t和c3b是通过FBX模型文件进行二次转换后得到的

3 Max导出FBX格式,然后用*\cocos2d-x-3.3rc0\tools\fbx-conv\win\fbx-conv.exe通过FBX_CONV_DIR -a xx.fbx (FBX_CONV_DIR 是转换插件的完整路径xx/xx/fbx-conv),命令中的-a表示同时输出c3b和c3t文件,你还可以使用-b或-t来单独输出c3b或-c3t文件,转换后的文件会生成到当前目录下。

4 通过以下代码实现3D精灵

	auto tortoise = Sprite3D::create("tortoise.c3b");//创造3D精灵
	tortoise->setScale(0.3f);//设置精灵的缩放比例
	tortoise->setPosition(Point(visibleSize.width / 2, visibleSize.height / 2));	
	addChild(tortoise);

	//创造动画
	auto animation = Animation3D::create("tortoise.c3b");
	if (animation)
	{
		auto animate = Animate3D::create(animation);
		animate->setSpeed(2.0f);	//设置动画播放的速度
		tortoise->runAction(RepeatForever::create(animate));
	}

cocos2d-x 学习笔记1 Sprite3D