如何创建可拉伸的易碎披萨奶酪材料?


21

我想创建逼真的比萨饼,并允许用户与其交互。

我想要的是:

比萨片被解除的照片

我创造了什么:

渲染的披萨的屏幕截图,缺少切片

我在Blender中创建了比萨饼的模型(8件),然后将其导入Unity。这块比萨饼看起来很人造,主要是因为它是“刚性三角形”。

用户移动一块时如何使奶酪伸展和断裂?


1
更好的模型,更好的纹理和更好的着色器。就如此容易。
API-Beast

您是否真的想让奶酪伸展和断裂?如果您可以更具体地说明您想更切合实际的方面,那将有助于缩小问题的范围。
MichaelHouse

2
@ Byte56,我知道我可以通过改进模型,纹理和着色器来提高披萨的质量,但我对奶酪感兴趣。是的,我希望它可拉伸且易碎。像真正的奶酪。
彼得·伯伦科夫

6
我个人将研究实时布料模拟,并通过调整参数了解从布料到奶酪的距离。我会将披萨的奶酪层作为单独的网格处理,并使用弹簧/质量模型来计算变形。我以前也曾见过布制系统,可让您将布撕开,这对于奶酪也同样适用。将其与着色器结合使用,该着色器基于对弹簧/质量模型的节点施加的力,可以将固体奶酪纹理混合到拉伸/撕开的奶酪纹理,并且应该能给您带来漂亮的效果。
Invor 2014年

只是在这里扮演魔鬼的拥护者,您确定需要这种动画吗?我知道问这听起来很奇怪,但是您应该从已经给出的答案中看出,这是您要达到的相当复杂的效果。显然,这取决于游戏(我不知道您是否在制作匹萨制作模拟器[我知道有人会为此付出高昂的代价]),但是您应该问自己是否要投入这项工作确实增加了足以证明您付出努力的理由。即使您有很多时间,从长远来看,将其投入其他地方也可能会
收获

Answers:


28

简单的方法

添加一个将相邻切片彼此连接的四边形。使其具有融化的奶酪质地,并带有孔。随着切片的移开,四边形自然会被拉伸,从而拉伸和倾斜纹理。

尽管不会中断,这看起来应该很合理。在这里要做的是使该纹理成为动画。根据四边形区域(或只是切片之间的距离)而不是时间来遍历动画。随着动画的进行,将其拉得更远时,将出现更多的孔。

最终,当达到距离阈值时,将四边形拆分为两个,以编程方式将两个四边形按其附加切片的方向收缩,以使其略微收缩,并继续播放显示贴紧效果的动画。最后冻结动画。

要获得更多动态效果,您可以使用物理引擎中的关节将四边形附加到两个切片。

艰难的道路

使用软体物理引擎或编写一个。在切片之间定义一块布料,并用奶酪对其进行纹理处理。允许物理引擎对材料拉伸和捕捉的动力学建模。

这是一种更为密集但更普遍适用的方法。这也可能是无法控制的,但总体上可能会更具吸引力。


3
我完全建议第一种方法。
2014年

6
至少要花几个小时尝试第一种方法(您可以轻松地使用多个四边形),然后再花一些时间……错误……几个月来编写物理引擎……
corsiKa 2014年

3
如此渴望看到结果!完成后请更新我们。
约翰·摩西

2
有一会儿,我以为我读了“使用软体奶酪引擎”,以为哇,人们会为任何东西编写引擎。
托马斯

2
Unity具有内置的布料物理引擎,该引擎支持拉伸和撕裂,因此困难的方法可能不会那么困难。尽管它将在计算上更加昂贵。
伊桑·沃利

2

使用预设动画:

因此,请在Maya / Blender之类的3D建模软件中创建预设动画,该软件具有柔软的物体和布料等功能,可以很好地模拟比萨的撕裂。将披萨纹理和模型动画都导出到Unity(可能是一组.obj模型或类似的模型)。

模型动画将使用许多三角形表示正在拉伸和撕裂的奶酪,您可以将其作为一组三网加载到Unity中。它们是许多网状状态的集合,每个状态都表示拉伸状态不同的芝士比萨。根据用户放置比萨饼切片的位置,您将跳至该“网格状态”并显示这些三角形。

当然有一些问题。用户交互有点受限制。如果奶酪已经被撕裂了一点,您就无法回到该奶酪区域的“未撕毁”状态。如果预设动画先删除切片1,然后删除2,则将迫使用户按该顺序删除切片。根据网格的粒度和撕裂动画的持续时间,导出的数据大小可能会变得非常大。

但是,如果造型师在创建预设动画时做得很好,它看起来可能非常逼真。而且您不必实现软体模拟器。

使用Unity:

但是如果您有兴趣,Unity会实现自己的Skinned布料Interactive布料组件。交互式布支持撕裂。但是,我最后检查了对它们的支持仅限于少数几个平台。

使用您:

最后,您始终可以实现自己的软件模拟器。这是一个非常受欢迎的样本研究论文。太有趣了 :)。祝好运。


1

@originalDaemon的答案很好!我认为,有一种中间方法可能会比第一种方法获得更好的结果,并且会花费合理的精力(也许与“硬性方法”方法不同)。

我建议实际上也可以模拟奶酪“网”,对我来说,它看起来很像钟乳石。模拟一些弹性奶酪。将它们随机放置在美味三角形的边缘上,并将其缩放为0 y-axis,当三角形从其同上移除时,将其在y轴上缓慢缩放为所需的大小。

y如果您打算稍微拉开三角形,则可能需要选择其他轴。无论哪种方式,我都觉得虽然平坦的质地会更容易且更具成本效益,但是对奶酪进行建模对于特写而言可能更加逼真,尽管质地也可以工作。如果选择纹理,则可以使用多个层以获得更逼真的感觉。另外,别忘了加点蒸汽,以强调镜头中比萨的热度。

我注意到的另一件事是,意大利香肠似乎只是一种质地。我肯定会考虑对其进行建模,或者在该区域中向现有模型添加一些细节。您可以将其与弹性奶酪一起滑下来,以获得额外的真实感。

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.