如何创建纹理以覆盖在增强面网格上?

问题描述

我正在使用ARCore和Sceneform开发AR应用程序。我想为鼻子,嘴唇,脸部和眼睛等地标添加纹理。我想知道如何创建纹理,以便可以将其覆盖在增强面网格上吗?

Texture.builder()
   .setSource(this,R.drawable.makeupforlips)
   .setUsage(Texture.Usage.COLOR)
   .build()
   .thenAccept(texture -> faceMeshTexture = texture);

addOnUpdateListener:

for (AugmentedFace face: faceList) {

    if (!faceNodeMap.containsKey(face)) {

        AugmentedFaceNode faceNode = new AugmentedFaceNode(face);
        faceNode.setParent(scene);
        // faceNode.setFaceRegionsRenderable(faceRegionsRenderable);
        faceNode.setFaceMeshTexture(faceMeshTexture);
        faceNodeMap.put(face,faceNode);
    }
}

解决方法

在构建具有Augmented Faces功能的ARCore应用时,您需要使用.fbx.obj.glTF文件中的canonical face mesh格式。将此规范面导入Maya,Blender或3dsMax,然后使用“ UV纹理编辑器”创建一个UV-mapped 2D texture,您可以在Adobe Photoshop中对其进行编辑。

enter image description here

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...