<美术向TA入门课 From 庄懂> L04
本文最后更新于188 天前,其中的信息可能已经过时,如有错误请发送邮件到2939296129@qq.com

作业分享

先来看看别人的作业分享


作业答案

HalfLambert代码

比较容易,这里不多说了


SSSLut连连看

SSS(SubSurface Scattering):

  • 次表面散射是线穿透半透明材质表面后,在内部经过多次散射并最终穿出的物理现象。
  • 这种效果常见于皮肤、蜡、玉石、牛奶等材质。
  • 如图,皮肤背光照射的时候,有一部分光在皮肤边缘的效果,就是次表面散射。

SSSLut:

  • 原本的Ramp图仅仅是在水平方向上有渐变,在垂直方向上颜色相同
  • 而SSSLut,则是在Ramp图的基础上,加上了垂直方向上的渐变
  • 相当于是一张二维的Ramp图

连连看解析:

  • 用NdotL去作为 Texture u坐标
  • 用0-1的参数去作为 Texture v坐标
  • 用上面的uv坐标去采样SSSLut图,输出就能得到效果了

作业批改

这两个作业效果比较怪,实现过程中也有许多错误,就不仔细复刻了,简单复述一下思路。

作业一

屏幕空间uv效果,上节课中有

加上自己的trick上色:

  • NdotL,用一个颜色去做Step
  • 非常怪的一个效果
效果图
  • 之后乘上一个颜色就是亮部颜色
  • OneMinus,乘上颜色就是暗部颜色
  • 最后加上屏幕空间纹理
最终效果

作业二

复刻了个大概

  • 同一张Noise图放大和缩小,然后乘在一起,Remap调整颜色,再乘NdotL
  • 加上Blinn-Phong高光,Round形成遮罩,乘上高光颜色
  • 底色没说清楚,不太明白,就加上了一个颜色

情报-预积分皮肤

预积分次表面散射

首先什么是预积分?

  • 预积分是理论推导,以及理论生成Lut图的过程
  • 图形开发需要知道,TA可以暂时不知道(在后面研究真实感人物渲染时,补上这块)
  • 通过这样严格的图形学公式,可以得出来一张Lut图,可以去实现皮肤的次表面散射

其次什么是Lut图?

  • Lut全称Look up Texture,查找纹理,有些计算非常复杂,无法实时进行计算,因此将其预先计算好存在一张Texture中(因此也叫预积分),用于快速查找和替换图像中的颜色信息
  • 可以理解为二维的Ramp图

可以在图中介绍的插件中得到Shader和理论生成Lut的工具的源码!(之后深入学习时去看一下)

最后一定要遵循公式吗?

  • 根据公式生成的Lut图是理论正确的,但可能并不适用于实际情况
  • 我们可以根据标准Lut为基础,根据美术的需求来进行更改,或者直接自己画Lut
  • 可以看到Mhy分享的内容中,也并不是标准的Lut图,要根据项目情况去更改的

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇