Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 来自模型网格上的代码的libgdx纹理_Android_Opengl Es_3d_Libgdx - Fatal编程技术网

Android 来自模型网格上的代码的libgdx纹理

Android 来自模型网格上的代码的libgdx纹理,android,opengl-es,3d,libgdx,Android,Opengl Es,3d,Libgdx,我想渲染一些3D模型,它们是混凝土卡片(但应该有3个维度),正面有不同的值 为了实现这一点,我认为创建一个表示卡的尺寸和形式的模型是一个好主意,如果可能的话,已经为卡提供了默认纹理,并为每个渲染模型添加特定于卡的值,例如不同的数字 我已经能够加载带有默认纹理的模型并渲染到屏幕,但我不知道如何将动态纹理添加到模型的正面为每种卡类型创建一个TextureAttribute,然后将其设置到每个模型实例的材质中: TextureAttribute textureAttribute1 = new Text

我想渲染一些3D模型,它们是混凝土卡片(但应该有3个维度),正面有不同的值

为了实现这一点,我认为创建一个表示卡的尺寸和形式的模型是一个好主意,如果可能的话,已经为卡提供了默认纹理,并为每个渲染模型添加特定于卡的值,例如不同的数字


我已经能够加载带有默认纹理的模型并渲染到屏幕,但我不知道如何将动态纹理添加到模型的正面

为每种卡类型创建一个TextureAttribute,然后将其设置到每个模型实例的材质中:

TextureAttribute textureAttribute1 = new TextureAttribute(TextureAttribute.Diffuse, yourtexture);

//

material = modelinstance.materials.get(0);
material.set(textureAttribute1);`

为每种卡类型创建一个TextureAttribute,然后将其设置到每个模型实例的材质中:

TextureAttribute textureAttribute1 = new TextureAttribute(TextureAttribute.Diffuse, yourtexture);

//

material = modelinstance.materials.get(0);
material.set(textureAttribute1);`

您可能早就解决了这一问题,但在模型正面放置纹理取决于您在建模软件中创建的UV。因此,如果将正面UV从侧面UV拆分到单独的孤岛上,则这将是您的数字之一。例如,如果有4个uv岛,纹理将从0变为3。所以你的正面就是这些数字之一。但是,模型必须正确地展开才能工作


此外,还必须添加多维/子纹理,并对每个纹理进行编号。然后,也只有这样,你才能在每一面看到不同的纹理。我唯一没有做到的就是正确缩放纹理。

您可能早就解决了这一问题,但在模型正面放置纹理取决于您在建模软件中创建的UV。因此,如果将正面UV从侧面UV拆分到单独的孤岛上,则这将是您的数字之一。例如,如果有4个uv岛,纹理将从0变为3。所以你的正面就是这些数字之一。但是,模型必须正确地展开才能工作


此外,还必须添加多维/子纹理,并对每个纹理进行编号。然后,也只有这样,你才能在每一面看到不同的纹理。我唯一没有做到的就是正确缩放纹理。

这样我就可以设置一个完全不同的纹理。。。我可以这样做,但我最初的目标是只改变模型的一面。。。你有什么线索可以告诉我如何做到这一点吗?我想可以把材料分开。。。现在它只是一个单一的。。。有没有一种方法是通过代码还是仅仅通过改变模型来实现的?好的,尝试了改变模型,但没有改变任何东西。。。现在第二种材料是唯一的一种。。。也许它现在不受支持…我不确定,3d api相对较新,我还没有时间研究它。呃,你知道如何在模型上重复纹理吗?我也有类似的问题,你的答案是有效的,但我需要重复这个纹理。帮助?这样我就可以设置一个完全不同的纹理。。。我可以这样做,但我最初的目标是只改变模型的一面。。。你有什么线索可以告诉我如何做到这一点吗?我想可以把材料分开。。。现在它只是一个单一的。。。有没有一种方法是通过代码还是仅仅通过改变模型来实现的?好的,尝试了改变模型,但没有改变任何东西。。。现在第二种材料是唯一的一种。。。也许它现在不受支持…我不确定,3d api相对较新,我还没有时间研究它。呃,你知道如何在模型上重复纹理吗?我也有类似的问题,你的答案是有效的,但我需要重复这个纹理。帮忙?