首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Metaio变换几何纹理

Metaio变换几何纹理
EN

Stack Overflow用户
提问于 2015-07-05 09:09:32
回答 1查看 105关注 0票数 0

我尝试在metaio中加载一个具有其纹理的3D模型。但现在我有了一个新的挑战:

假设我有一个3D汽车模型,我希望在梅太奥 sdk中加载它,并在用户点击屏幕时改变汽车的颜色。怎么能做到呢?一般来说,三维模型和它的纹理之间有什么关系?我们可以为它建立一个单一 3d模型和多个纹理,并在运行时绑定它们吗?多么?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-07 07:57:34

是的,通过使用setTexture对象的IGeometry,您可以拥有多个纹理。

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

您的代码应该如下所示:

代码语言:javascript
复制
@Override
protected void onGeometryTouched(IGeometry geometry) {
    MetaioDebug.log("Template.onGeometryTouched: " + geometry);

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

要处理触摸(如果您还没有),您应该注册一个手势处理程序:

代码语言:javascript
复制
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //other init code here...

    mGestureMask = GestureHandler.GESTURE_ALL;
    mGestureHandler = new GestureHandlerAndroid(metaioSDK, mGestureMask);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31228782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档