本章节学习目标:

  • 学习记录多Pass渲染

  • 学习晶体渲染思路

环境配置:


晶石渲染参考

一、原理解析

1、特性

  1. 晶石的反射特性:晶石表面可以反射周围的场景

  1. 晶石的折射特性:穿透物体看到折射的一个情况

  1. 色彩的散射(焦散的效果、钻石表面的彩色的光)

2、制作思路

  1. 分成两个面进行渲染(背面和正面,多pass渲染)

  2. 每个面的pass渲染都使用到特性的属性

  3. 增加菲涅尔反射(边缘光效果)

二、实现晶石渲染效果

1、自制ASE shader模版

  1. ASE实现自定义多pass[参考记录笔记]

  2. 将渲染设置从SubShader层级转为Pass层级

2、ASEshader实现步骤

  1. 基本设置

    1. Pass1Cull 设置前向,Pass2设置后向

    2. ZWrite+ZTest 都设置默认

  2. 光照探针和CubMap

    1. 光照探针(使用光照探针对场景内的信息进行烘焙)

    2. CubeMap实现

  3. 计算反射

    1. 从视线方向向模型世界法线方向反射

    2. 使用Reflect节点 或者World Reflection节点

  4. 计算边缘光,菲涅尔

  5. 计算前向面和后向面