zoukankan      html  css  js  c++  java
  • Sampling Hair Density Field by Deterministic Importance Sampling

    首先,不要跟我说Shave怎么好怎么好。第一,99%人用的都是盗版;第二,Shave,包括Houdini Fur都没有完美解决高度displacement后的精确毛发生长问题。Houdini fur的Paint Density完全就是个基于顶点着色后差值的废物,根本无法和3D Paint这一步骤完美的结合起来。我提出的这个方案可以完美的解决这个问题,特别适合植物和草皮等等这些东西的制作上。更甚可以和支持Procedural Primtive的渲染器结合起来使用,实现《金刚》一样的全身毛发差值。一切为了最精确,一切为了最傻瓜控制。

    • Step 1 : Paint density texture in Mudbox or the others sculpt software. Sorry for my poor artist ability.
    • 第一步:在Mudbox中绘制密度分布。使用我的GeometryImageViewport Filter插件,渲染Displaced之后的Object坐标系数值和法线到两张贴图中。现在的Mudbox还没有提供世界位置的烘培功能。

    image001

    • Step 2 : Export the density field as following. This is an probability density function(PDF for short).
    • 第二部:导出密度分布,作为毛发生长的概率分布函数。
    • Step 3 : Applied the classical inversion function and Quasi Monte Carlo sampling, we could genereate deterministic amount of the sampler positions.
    • 第三部:使用我的外部程序预览分布分布。采样点UV的生成使用了伪随机蒙特卡洛采样,用户可以使用Uniform或者QMC Sequence进行调整。

    Rand

    • Step 4 : I made a maya DG to generate curves in maya. The root follicles will be placed on subdivided diplaced surface.
    • 为了实现毛发的生长,我还提供了一个DG节点用来读取第一步生成的密度图位置图法线图,进行采样与生长。

    image002

  • 相关阅读:
    名师破解英语四级汉译英
    名师破解英语四级汉译英
    名师破解英语四级汉译英
    输出矩阵右上角元素
    输入行列式中偶数行和偶数列的数据
    转秩矩阵
    数据排序
    从键盘上输入5个数,输出最大、最小元素的值以及它们的下标
    中文处理(全角/半角)
    获取汉字拼音首字母
  • 原文地址:https://www.cnblogs.com/Jedimaster/p/1672940.html
Copyright © 2011-2022 走看看