【问题标题】:3D Model not loading with colors in Ursina (python 3)3D 模型未在 Ursina 中加载颜色(python 3)
【发布时间】:2023-03-03 02:20:02
【问题描述】:

我正在尝试加载我在 Blender 中制作的低多边形 FPS 手臂。我使用我设置颜色的材料给它们颜色,它在 Blender 中看起来很好。但是当我将它们加载到 Ursina 时,它们完全是白色的,没有颜色!我清楚地认为问题在于我应用颜色的“方式”,这可能是出于某种原因的问题。

这是我导入文件的方式:

class Hand(Entity):
    def __init__(self):
        super().__init__(model = 'ARMS.obj',
            scale = (0.1, 0.1, 0.1),
            rotation = (0, -20, 0),
            color = color.white,
            position = (0, 2, 0))

(对于最小可复制示例,如果不发布我的整个代码将很难做到)

所以是的,它以我在颜色参数中设置的颜色显示(白色以避免影响我在 Blender 中应用的颜色......那不显示)。请问有人知道该怎么做吗?我的意思是,有人有将 3D 模型加载到 Ursina/等价物的经验,并且知道我做错了什么吗?我尽我所能,遵循以下:https://blender.stackexchange.com/questions/75872/not-showing-colors-in-material-mode。我将加入我分配给搅拌机的材料属性的图像:

我真的很想知道如何将我的颜色/未来纹理加载到 ursina 中!

【问题讨论】:

  • 我试试这个,谢谢!
  • 对不起,我弄糊涂了。 Ursina 不能使用 .mtl 文件。相反,您必须将其加载到 Blender(当您导入 .obj 网格时会自动发生)并将 UV 映射纹理导出到 PNG 文件。
  • 是的,这就是我从尝试中看到的:文件没有加载或任何东西......我将 UV 纹理导出为 PNG,按照教程,我得到了图像,看起来都很好,但是当我在代码中将纹理指定为该图像时,UV 展开似乎被遗忘了:纹理没有像预期的那样加载,造成了一种混乱......

标签: python python-3.x 3d blender ursina


【解决方案1】:

OBJ 模型无法在 ursina 中加载颜色。你要做的是

  1. 在 Blender 顶部单击 Texture Paint 选项卡
  2. 在屏幕的左上角,您会看到一个名为 Image 的按钮。
  3. 点击它,如果你已经加载了一张图片(看起来像你这样做),点击Save并将它保存到你的项目文件夹中
  4. 在手类中,包含texture 参数
class Hand(Entity):
   def __init__(self):
       super().__init__(
           model = 'ARMS.obj',
           scale = (0.1, 0.1, 0.1),
           rotation = (0, -20, 0),
           color = color.white,
           position = (0, 2, 0),
           texture = "ARMS.png"
       )

【讨论】:

  • 我已经试过了,但是UV展开有点奇怪?并且纹理没有正确加载...
  • @QuantumSushi 你用搅拌机打开你的模型了吗?如果不是:在搅拌机中进入对象的编辑模式。点击顶部的“UV”。然后点击展开。而且,.mtl 文件在 Ursina 中不起作用
  • 我尝试将纹理导出为 PNG,将其加载到 ursina 中,是的,我展开了模型,但是在加载对象时,展开似乎被忘记了,并且加载了纹理,但是做了一团糟
猜你喜欢
  • 2022-08-14
  • 2021-07-03
  • 2022-08-22
  • 2012-06-24
  • 2012-03-30
  • 1970-01-01
  • 1970-01-01
  • 2019-12-08
  • 1970-01-01
相关资源
最近更新 更多