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

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


冰块是湿的。矿山看起来像干玻璃。
冰块在某些地方是透明的,而在其他地方则不透明。试图对表面上的冰块建模(在空气中,而不是在水中漂浮)。

我需要包括哪些技术以增加真实感?而不是寻找实时技术,只是产生静止图像。我希望冰甚至能像照片一样逼真地关闭,并投射出逼真的焦散和阴影。

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

评论

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

@wild虽然粗糙表面的结果令人印象深刻(尤其是对于实时算法),但冰在表面上非常光滑,内部也很粗糙-几乎是相反的效果。
也许像这样的问题需要图片

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

#1 楼

根据Wikipedia的说法,与不冷冻的水相比,冰的IOR略低,尽管我不知道这种差异会对结果产生多大的影响。由冷冻过程中形成的微小气泡簇引起。您也许可以使用几何模型进行建模,但是考虑到比例和数量,我怀疑某种参与的媒体模型可能更合适。 (尽管我什么都不知道。)

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

#2 楼

您缺少的两个大缺陷:


依赖于角度的反射。这是造成您的“在某些地方透明而不是在其他地方透明”效果的可能原因,并且最有可能导致缺少湿度。
冰块通常内部有气泡。这表现为立方体中心(对于小气泡)或明显的气泡(对于大气泡)的白色浓密雾度。这是导致您“在其他位置不透明”的另一个可能原因。
建模这些对象的技术取决于您使用的渲染方法。

#3 楼

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

我想知道是否动画制作凹凸贴图可以使它看起来湿润,因为水片/水滴顺着表面。

下面的图像看起来不错,但是如果其他人在谈论内部缺陷,它们看起来可能会更好。 />



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

评论


$ \ begingroup $
这似乎几乎是仅链接的答案。您能否附上说明,以便即使不遵循链接也可以理解?
$ \ endgroup $
– trichoplax
15年8月11日在11:21

$ \ begingroup $
抱歉,您是对的。我至少应该给出屏幕截图,事实证明我什至连错了链接!
$ \ endgroup $
–艾伦·沃尔夫(Alan Wolfe)
2015年8月11日15:55

$ \ begingroup $
感谢您提供图片,但对它的工作原理以及为什么它可以改善外观的解释也很有趣。一个好的答案应该提供理解,而无需离开站点-那里的链接可以进一步详细阅读。
$ \ endgroup $
– trichoplax
2015年8月11日在20:43



$ \ begingroup $
我提到过您将凹凸贴图应用于照明和折射计算。您希望我的回答解释凹凸映射吗?
$ \ endgroup $
–艾伦·沃尔夫(Alan Wolfe)
15年8月11日在20:48

$ \ begingroup $
今天有个很棒的机会,我在晚餐时看到了冰块,而且它们似乎很光滑而且没有颠簸。我认为这至关重要的部分是给他们“湿”的外观。
$ \ endgroup $
– yuriks
15年8月12日在0:36