8

我正在研究 Renderscript 功能并坚持使用 A3D (Android 3d) 文件格式。我找不到将 Collada 文件转换为 A3D 格式来存储我的搅拌机模型的简单方法。

我想知道你们是否有一个想法我可以试试?

有没有人有一个工作代码示例,以便可以看到我做错了什么?

更多信息:http: //developer.android.com/reference/android/renderscript/FileA3D.html

编辑:不要误认为 Asci3d 文件扩展名(也是 *.a3d )

4

4 回答 4

6

从 Ice Cream Sandwich(可能更早)开始,Android 源代码中有一个工具可以在 Collada 和 A3D 之间进行转换。

该工具称为a3dconvert;您可以在此处在线浏览源代码(在 ICS 分支中):https ://github.com/android/platform_development/tree/ics-mr1-release/tools/a3dconvert

用法:a3dconvert input_file a3d_output_file 目前接受 .obj 和 .dae (collada) 输入文件。

从较新版本开始,该工具已被删除(看起来像 Jelly Bean)。这可能是因为 Renderscript 的图形部分已被弃用。

于 2012-02-01T22:09:36.643 回答
2

我不确定 A3D 是一种好的格式,但如果您必须编写转换器,这里是两种格式的描述:

http://scorpion.tordivel.no/help/UsersGuide/General/ImageOperations/ImageFormats/ImageFormats_a3d.htm

http://en.wikipedia.org/wiki/COLLADA

这是一些阅读 Collada 的示例代码:

http://sourceforge.net/projects/colladaloader/

于 2011-04-30T02:48:49.297 回答
0

如果您要从 Blender 转到 A3D,我会考虑编写一个 Python 脚本直接从 Blender 转到 A3D 格式。A3D 格式看起来相当简单,如果您只访问 Mesh 数据,Blender API 并不难理解。当然,如果您还不知道它,您将不得不学习一些 Python 语法。

当我第一次想自己从 Blender 中提取一些信息并查看现有的 .py 脚本(如 OBJ 导出)、Blender API 并学习一些基本的 Python 语法时,我对 Python 一无所知,我能够编写我的第一个(相当简单) 脚本只需几个小时左右。

于 2011-05-03T17:34:03.117 回答
0

http://colladablender.illusoft.com/cms/是一个为 Blender 制作插件以直接读取 Collada 的项目。

此外,Carrara 可用于将您的文件转换为 Blender 支持的文件。

于 2011-05-05T12:35:18.227 回答