博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Volumetric Level Set Hair Workflow
阅读量:5977 次
发布时间:2019-06-20

本文共 1244 字,大约阅读时间需要 4 分钟。

Abstract : 事实上,对于搞定了PIXAR的2006年发布的一个小小的毛发流程,我一点都不觉得有什么丢人之处。微积分是几百年前的东西,量子力学是一百年前的东西,Level Set是将近三十年前的东西,我们都是站在巨人的肩上才能向前卖出一小步的。In fact, I did not feel there is something disgrace that I duplicated this little hair workflow. The integral was invented several hundreds years ago, the Quantum physics owned about one hundred years history, the Level Set was published since thirty years ago. We are all standing on the should of giant in order to get a small step forward.

PIXAR的《》这个篇文章中所展示的毛发小流程主要是五个部分组成

  1. Key-Hair的创建(无论是用商业软件Shave,还是利用《A Thin Shell Volume for Modeling Human Hair》一文中的方法)
  2. 制作Tent Field(在这里我使用CUDA加速大幅度的提高了效率)
  3. 根据Tent Function与用户指定的Density计算出Level Set的Signed Distance Function(PDE迭代法或者是FMM)
  4. 利用Implicit Surface Plugin绘制出SDF的外壳用
  5. 在Shader中直接获取Gradient进行毛发的“伪法线”着色

第一步没什么好说的,完全的艺术导向性制作。不过我还是觉得Houdini的毛发系统比较有意思。

第二步经过测试发现使用CPU做累加效率实在是很低,尝试用GPU计算后发现效率大幅度的提高。感谢使得快速实现成为可能。

第三步,由于这个3D网格可能非常的精细,导致基于GPU的PDE迭代求出SDF的方法变得越来越不可接受,经过测试发现基于CPU的FMM方法效率完全可以满足要求。

为了实现第四步我手写了一个读取外部3D纹理的RenderMan Implicit Surface Plugin。

第五步没什么意义,因为简单的Kajiya-Key模型外加许多成分往往就已经足够,艺术家还好进行调整。

Preview in Maya

RenderMan Curve (inflated width of curve)

Iso Surface

事实上做这个壳许多情况只是为了解决一个毛发对模型的近似投影问题。如果使用RT则不需要,但是如果使用Deep Shadow则就会出现Bias数值的问题。利用这个Implicit Surface可以近似代替无数根毛发的投影。

转载地址:http://dpsox.baihongyu.com/

你可能感兴趣的文章
Windows最经典应用大变脸:学生爽翻!
查看>>
关于如何防范Ⅱ、Ⅲ类银行结算账户风险
查看>>
写一个函数返回参数二进制中 1 的个数
查看>>
oracle网络公开课《存储技术》课件和视频共享下载
查看>>
oracle技术之检查点及SCN深入研究
查看>>
Android存储数据到本地文件
查看>>
MySQL数据库学习笔记(一)----MySQL 5.6.21的安装和配置(setup版)
查看>>
企业日志分析之linux系统message收集展示
查看>>
《统计学习方法》读书笔记(1)---学习的要素
查看>>
Linux下Nginx+PHP+MySQL配置(图)
查看>>
TDSS. TDL-4
查看>>
iOS中EXC_BAD_ACCESS解决办法
查看>>
什么样的技术人员更容易接到软件开发项目?(论干私活儿)
查看>>
grep,egrep及元字符和posix字符集
查看>>
inotify 实时的Linux文件系统事件监控
查看>>
自动装箱与自动拆箱的一些问题
查看>>
配置CentOS的网络环境
查看>>
MongoDB对指定键进行排序
查看>>
paramiko-exec.py——利用paramiko远程执行命令
查看>>
android应用植入广告SDK,获取广告收入
查看>>