如何使我的冰块看起来真实?


11

我可以将冰块建模为具有水折射率的稍微变形的透明立方体,但是看起来并不令人信服。它们看起来像玻璃块而不是冰。

通过查看实际的冰块,我可以直观地描述一些差异,但是我不知道要更改哪些物理属性以匹配它们:

  • 冰块是湿的。矿山看起来像干玻璃。
  • 冰块在某些地方透明,而在其他地方则不透明。
  • 尽管没有分离,但冰块经常会出现可见的裂纹。

在这种情况下,我试图对表面上的冰块建模(在空气中,而不是在水中漂浮)。

为了增加真实感,我需要包括哪些技术?

我不是在寻找实时技术,只是为了生成静止图像。我希望冰能够像照片一样逼真地关闭,并投射出逼真的焦散和阴影。

我尝试过使用弯曲的边缘,并在冰块上涂上一层薄薄的透明材料,以模拟融化的水层,但是似乎并没有给人以湿的印象。我还尝试过将透明球体嵌入其中心一半大小的透明球体中,并具有雾化效果,但它不会自然地融合到立方体中,而是看起来像是嵌入的。即使是一系列逐渐增加的雾的嵌套球体,看起来也不正确。


我想您也会对模拟粗糙折射的技术感兴趣,例如www-sop.inria.fr/reves/Basilic/2011/DBSHR11/…中描述的那些技术。查看屏幕截图,看看它如何有益于冰块渲染!
wip

1
@wild尽管粗糙表面的结果令人印象深刻(尤其是对于实时算法),但冰在表面上却非常光滑,内部也很粗糙-几乎是相反的效果。
trichoplax

3
也许像这样的问题需要图片
joojaa 2015年

2
您要渲染静止图像还是动画?如果要对立方体进行动画处理,您是否正在寻找实时效果?是的,如果这不是私人测试版,那么您当前结果的图像会很好。
Martin Ender

Answers:


3

根据Wikipedia的说法,与未冻结的水相比,冰的IOR略低,尽管我不知道这种差异会对结果产生多大的影响。

冰块的“不透明”外观部分是由冷冻过程中形成的微小气泡簇引起的。您也许可以使用几何模型进行建模,但是考虑到比例和数量,我怀疑某种参与的媒体模型可能更合适。(尽管我什么都不知道。)

另外,请记住,您将看到的大多数非淹没冰很快就会形成一层薄薄的液态水,与空气接触,因此这也可能会极大地改变其外观。


4

您缺少的两个大问题:

  1. 与角度有关的反射。这是造成您的“在某些地方透明而不是在其他地方透明”效果的可能原因,也是最可能导致湿润缺失的原因。

  2. 冰块通常将气泡困在内部。这表现为立方体中心(对于小气泡)或明显的气泡(对于大气泡)的白色浓密雾度。这是您“在某些地方透明而不在其他地方透明”的另一个可能原因。

对它们进行建模的技术取决于您使用的渲染方法。


4

我发现计算照明和折射射线时的凹凸贴图可以增加冰的外观。它使冰看起来质感和不完美,就像融化的冰块看起来一样。

我有点想知道是否可以对凹凸贴图进行动画处理,因为水片/水滴从其表面滑落,所以看起来好像很湿。

下面的图片看起来不错,但是考虑到其他人正在谈论的内部缺陷,它们看起来可能会更好。

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

这是我的shadertoy,我从中获取了屏幕截图:https ://www.shadertoy.com/view/ldj3zz#


2
这似乎接近于仅链接的答案。您能否附上说明,以便即使不遵循链接也可以理解?
trichoplax

抱歉,您是对的。我至少应该给出屏幕截图,事实证明我什至连错了链接!
艾伦·沃尔夫

1
感谢您提供的图片,但对它的工作原理以及为什么它可以改善外观的解释也很有趣。一个好的答案应该提供理解,而无需离开站点-那里的链接可以进一步详细阅读。
trichoplax

我提到过您将凹凸贴图应用于照明和折射计算。您希望我的回答解释凹凸映射吗?
艾伦·沃尔夫

1
今天我有一个很棒的机会看到晚餐时冰块关闭了,它们看起来实际上很光滑而且没有颠簸。我认为这至关重要的部分是给他们“湿”的外观。
yuriks,2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.