压缩包中三个文件,1.包含全量毛发缓存和导线缓存,可直接导入UE5.6,导线驱动毛发发梢会弯折 2.Asset为静态资产,使用Guide_Cache的导线缓存来驱动,UE5.5、UE5.4中可导入,UE5.6中导入失败
[Image Removed]
压缩包中三个文件,1.包含全量毛发缓存和导线缓存,可直接导入UE5.6,导线驱动毛发发梢会弯折 2.Asset为静态资产,使用Guide_Cache的导线缓存来驱动,UE5.5、UE5.4中可导入,UE5.6中导入失败
[Image Removed]
重现步骤
第一个问题大概率和资产本身有关,就像报错说的,静态毛发资产中的guide的顶点和动画cache中是不一致的。我把静态毛发导入5.5看到的是1127个点,但5.6里是1104个点。
5.5
[Image Removed]5.6
[Image Removed]我也尝试了把UDN_Groom_Cache.abc这个文件分别导入5.5和5.6,两者的guide点数是一致的。因此大概率是资产本身或DCC导出的时候出现了什么问题。要不你再检查一下。只能说5.6对此的宽容度更加严格不允许导入不一样拓扑的guides了
第二或三的问题是guides和strands的interpolation,或理解成蒙皮的关系导致的。guides会使用引擎的interpolation方式驱动strands。我看了下你提到有问题的几帧,guides长度和有问题的strands的末梢长度相差较大可能是引起问题原因之一。通过调整interpolation的方式有所变化可尝试下。但我个人认为这不一定能适用所有情况。如下图比较
[Image Removed]Guides驱动strands的关系也可以通过在DCC里指定,而非让引擎自动去计算。但这套流程之前和相关同事询问效果时得到了并非非常可靠,也有一些问题。至于引擎生成的interpolation效果我认为一个取决于guides的数量,越多越精确;二是guides影响到一簇毛发的长短变化大小,比如strands的长短有比较大的变化可能就需要分开group ID来优化interpolation的效果。目前最简单直接的方式就是增加guides数量,直到没有明显问题为止
感谢您详细的解答