gpt4 book ai didi

usdz - 转换为 USDZ 后对象显示透明

转载 作者:行者123 更新时间:2023-12-01 12:06:33 25 4
gpt4 key购买 nike

我在 Blender 中创建了两个立方体作为单个对象,并为每个立方体应用了两个不同的图像纹理,并将它们导出为 .OBJ 文件。我已经使用 XCODE 将 .OBJ 文件转换为 .USDZ 文件,并使用 color_map 标签上传了 .png 图像纹理文件作为我的对象的 Material 。该 Material 应用于两个立方体。但是,我看到一个立方体是不透明的,而另一个立方体是透明的

不确定我为什么会遇到这个问题,有人可以帮我解决这个问题吗?

Image showing one cube is Opaque

Image showing one cube is Transparent

OBJ 文件 = PBR_Cube.obj

图像纹理文件 = Combined.png

代码:

xcrun usdz_converter PBR_Cube.obj PBR_Cube.usdz -v -a -l \

-color_map Combined.png

我希望两个立方体都是不透明的

最佳答案

我知道这是一篇旧帖子,但我有解决这个问题的方法,但在网上找不到任何答案。 USDZ 格式(至少在移动设备上)将基色 rgba 贴图解释为预乘 alpha 或 rgb(a)。如果模型不使用任何透明度,则简单地使用 3 channel rgb 输出是安全且容易的(jpeg 作为简单的解决方案,或预乘 alpha 为 1 的 png)。 USDZ 文档建议对透明区域使用单独的 Material 集,但可以使用不透明蒙版,其格式应为 png-24,并带有包含不透明蒙版的预乘 alpha。在这种 rgb(a) 格式中,alpha 是相对于 rgb 值存储的,这使得颜色的十六进制代码与“a” channel 中带有 alpha 的纯 rgba 不同,但颜色值看起来相同。这解释了为什么颜色正确但透明度值错误。我使用 Substance Designer 将我的基色和不透明蒙版组合到预乘的 png-24 中,这非常有效。这个过程在 Photoshop 或其他图像处理软件中似乎很挑剔/困难,但在 Substance 中很简单(如果有人感兴趣,我可以提供更多细节)。可以对基色使用 rgb jpeg 颜色映射,对不透明度使用单 channel 灰度蒙版,但我不完全确定 USDZ 转换器是否可以正确组合这些,使用你自己的 4 channel 更安全png-24.

关于usdz - 转换为 USDZ 后对象显示透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56016310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com