Metaio改变几何纹理

时间:2015-07-05 09:09:33

标签: 3d geometry textures metaio

我试图在metaio sdk中加载带有纹理的3D模型。但现在我有了新的挑战:
假设我有一个3D汽车模型,我想在Metaio sdk加载它并在用户点击屏幕时改变汽车的颜色。 怎么办? 一般来说,3d模型与其纹理之间的关系是什么?我们可以为它设置一个单个三维模型和多个纹理,并在运行时绑定它们吗?怎么样?

感谢。

1 个答案:

答案 0 :(得分:2)

是的,您可以使用JTable对象的setTexture来拥有多个纹理。

根据您使用的模型类型,纹理可以存储在模型本身或具有相同名称的文件中。当我尝试将多个纹理存储在MDL文件中时,它没有工作,我不得不单独存储它们。

您的代码将是这样的:

IGeometry

如果您还没有处理触摸,则应该注册手势处理程序:

@Override
protected void onGeometryTouched(IGeometry geometry) {
    MetaioDebug.log("Template.onGeometryTouched: " + geometry);

    geometry.setTexture(AssetsManager.getAssetPathAsFile(getApplicationContext(), "mytexture.png"));
}