arnold 渲染曲面fracture破碎置换和uv校正

arnold 渲染曲面fracture破碎置换和uv校正

关键字:arnold,houdini,渲染,置换,displacement,破碎,扭曲,uv,校正,曲面

 先上图:

能看到的裂缝是故意加的缝隙,不是置换精度问题!眼睛没问题应该能看出来!

Arnold渲染曲面物体fracture破碎遇到的问题:

1.user_data_vector哪去了?自动桌子自己吃啦?
2.曲面碎块置换后接缝处不在原模型上了(离开了元表面),需要找到真正的置换后在表面上的位置P。
3.要完美的在动态碎块上匹配接缝,这个置换只能在rest空间评估,再去做矩阵变换到世界空间。
4.置换后uv扭曲了,需要跨物体读取uv,对arnold来说......你懂得!
5.巴拉巴拉还有啥!!!

实现思路数据流梳理:

1、arnold要获取两块数据,一个是动态的碎块简模,他需要有rest、depth、rmatrix信息。另一个是用于读取uv的拓扑结构一样的静态模型,需要包含nv,uv和rest属性。

2、用rest搭桥动静态两个模型,利用静态的nv评估rest空间的置换,再去拿静态模型做穿插校正,将置换后不在表面的点进行归位,再通过rmatrix转到world空间。

3、根据rest读取静态的uv,进行uv校正

 

 

要实现这些需要4个节点,两个arnold节点2个hda资产:

1、crushdispvector.so用来生成disp vector

2、crushdispreaduv.so用来校正扭曲的uv

3、hda资产crush_static用来生成静态模型所需属性

4、hda资产crush_dynamic用来生成动态模型所需属性

安装方法:

1、持续关注qq群,获取最新版下载链接

2、将dll文件放到arnold的安装路径的plugins下面,重启houdini

3、hda资产放到otls下面

4、需要匹配houdini版本

5、欢迎bug反馈!!

6、如果测试过程中遇到疑问请参看群里配套的hip工程文件的详细参数设置!

 

使用方法:

1、打开群里配套的的hip自行查看节点连接和设置

2、houdini里数据进crush_static节点前需要有rest和uv属性,并且需要有inside和outside组

3、houdini里数据进crush_dynamic节点前需要有orient属性

4、碎块的obj上要这样设置

 





 



         

猜你喜欢

转载自www.cnblogs.com/xrnds/p/10981208.html