材料。
通常通过 3 个途径生成毛发。
1 )用毛发图片 / 纹理做为表面 / 网格的 alpha 通道。
2 )在物体表面 / 网格上植入毛发。
3 )画一条曲线作为参照,来生成一束平行的曲线。
长头发
方法 1 是比较经典的方法,可以在大多数 3d 软件中实现。曲线的形状和风格也比较容易控制,但是如果用于动态人体的话,就显的太假。
方法 2 比较真实一些,但是对系统负担相当重,而且,头发很长的时候,风格常常难以控制。
方法 3 用参照曲线实现对头发的动态控制,但是产生的曲线和参考曲线之间的距离可能会导致曲线的精确度出问题。
概念
综合方法 1 和方法 3 ,用参考曲线生成头发,而用表面实现头发的风格和动态模拟。
用一个 surface patch 作为头发,用给出的 (u,v) 值可以容易的得到点的 x ,y ,z 值。
9 x 9 个点构成的表面。
为每列 u 点创建曲线。
渲染效果
渲染是在 maya 3 , renderman artist tools 4.1 和它们的 sdks 中制作。首先,写了一个 mel 脚本来得到并传递表面的 uv 数据到文件中,为了得到更好的性能,也用 maya api 写了一个插件。
另外一个主要部分是用一个 rat slim "rib generator" ( "f3dhair.slim" ) 生成。这个 rib 生成器把指定参数的点的数据用 rib 文件传递给渲染器 prman 。
最后效果
新闻热点
疑难解答