在 Ursina 中使用 3d obj 文件和纹理 python
Using 3d obj files and textures in Ursina for python
我正在尝试将 3d 对象加载到使用 Ursina 编写的程序中。我可以加载 3d 文件,也可以加载纹理,但它们无法一起加载。我确定我对 3d 文件有一些误解,因为我对使用 3d 文件还很陌生。当我加载 obj 文件时,它的形状是正确的,但它只是没有纹理的黑色。它看起来是二维的。我可以在立方体上加载纹理,但它的形状不正确。我怎样才能将两者结合起来,以便在正确的 3d 对象上显示正确的纹理?这是我的代码:
from ursina import *
app = Ursina()
cube = Entity(model = 'toybear.obj', color = color.white, scale=(.02,.02,.02), texture='toybearcolor')
app.run()
我的第一个想法是你不应该 delcare color = color.white and
texture = 'toybearcolor' 同时。
如果这不能解决问题,请确保
进口熊
上面声明
从 ursina 进口 *
如果问题仍然存在,那么它一定是您使用的 UV 纹理的问题,因为除了上面提到的事情之外,您的代码没问题。
编辑:
我不是 UV 展开专家,但如果这是问题所在,有几种方法可以做到这一点。
如果你想要自定义纹理,你必须进入 Blender 并标记模型上的接缝并将纹理保存到 .png 文件,就像本教程一样
https://www.youtube.com/watch?v=xPoxqOcUzNQ&t=560s
你也可以像这样在Blender中做所谓的纹理烘焙
https://www.youtube.com/watch?v=c2ut0Trcdi0
有时制作游戏资产的人会留下 UV 纹理作为 .png 文件在那里下载,就像这位艺术家在这里
https://opengameart.org/content/low-poly-mushrooms
所以要时刻注意那些
我正在尝试将 3d 对象加载到使用 Ursina 编写的程序中。我可以加载 3d 文件,也可以加载纹理,但它们无法一起加载。我确定我对 3d 文件有一些误解,因为我对使用 3d 文件还很陌生。当我加载 obj 文件时,它的形状是正确的,但它只是没有纹理的黑色。它看起来是二维的。我可以在立方体上加载纹理,但它的形状不正确。我怎样才能将两者结合起来,以便在正确的 3d 对象上显示正确的纹理?这是我的代码:
from ursina import *
app = Ursina()
cube = Entity(model = 'toybear.obj', color = color.white, scale=(.02,.02,.02), texture='toybearcolor')
app.run()
我的第一个想法是你不应该 delcare color = color.white and texture = 'toybearcolor' 同时。 如果这不能解决问题,请确保 进口熊 上面声明 从 ursina 进口 * 如果问题仍然存在,那么它一定是您使用的 UV 纹理的问题,因为除了上面提到的事情之外,您的代码没问题。
编辑: 我不是 UV 展开专家,但如果这是问题所在,有几种方法可以做到这一点。 如果你想要自定义纹理,你必须进入 Blender 并标记模型上的接缝并将纹理保存到 .png 文件,就像本教程一样 https://www.youtube.com/watch?v=xPoxqOcUzNQ&t=560s
你也可以像这样在Blender中做所谓的纹理烘焙 https://www.youtube.com/watch?v=c2ut0Trcdi0
有时制作游戏资产的人会留下 UV 纹理作为 .png 文件在那里下载,就像这位艺术家在这里 https://opengameart.org/content/low-poly-mushrooms 所以要时刻注意那些