0

我们正在努力将一些软件从 Windows 移植到 MacOS。

当我们调出带有 Alpha 通道的纹理时,完全不透明的像素按预期工作,完全透明的像素按预期工作(您可以看到后面的墙)。

但是,半透明 >0% 不透明度和 <100% 不透明度的像素渲染效果不佳,您可以透过后面的墙看到天空盒,您可以通过纹理和后面的墙看到天空盒。

我知道您可能需要更多信息,我很乐意提供。我不是在寻找快速修复的解决方案,我真的只是没有想法,需要其他人来猜测什么是错误的。

我将发布解决方案,而正确的答案将交给以这种方式指出我的人。

不是将纹理直接放置在墙上,而是放置在靠近墙壁的静态网格上。

(无法发布图片,因为这是我在这里的第一个问题)

4

2 回答 2

3

您正在按深度对透明对象进行排序,是吗?我从你的问题中收集到,答案是否定的。

您不能像处理不透明对象那样渲染透明对象。您的渲染器只是一个精美的三角形抽屉。因此,它没有真正的对象概念,甚至没有透明度。您可以通过在绘制透明三角形时将透明像素与帧缓冲区中发生的任何内容混合来实现透明度。

它根本无法知道您稍后打算在三角形后面画什么。因此,透明物体的一般方法是:

  1. 首先渲染所有不透明的对象。
  2. 渲染从后到前排序的透明对象。另外,关闭深度写入(深度测试很好)。
于 2011-10-04T19:56:33.443 回答
0

这可能不是答案,但可能有用。制作一个在 Maya/3d MAX 中应用透明纹理并导出为 fbx 并导入到虚幻的对象?

于 2014-11-10T05:42:20.383 回答