GP homework5

非真实感渲染


实现了一个 General Toon Shader

其中勾边的方法是通过一个额外的 Pass 膨胀后向面。

漫反射的处理是通过计算半兰伯特值在一张一维 ramped texture 上采样。

高光反射的处理是把正常计算出的 specular 值与一个阈值做比较,大于阈值则为高光区域,小于阈值则完全没有高光。还加了边缘部分的反走样处理。

  • 对应场景
    Assets/Scenes/GPhomework5

  • 对应 shader
    Assets/Shaders/MyShaders/NPR/ToonShader

General Toon Shader 的基础上从勾边漫反射处理高光处理 三个角度尝试了不同的思路和方案,并做了对比。

  • 对应场景
    Assets/Scenes/GPhomework5

  • 对应 shader
    Assets/Shaders/MyShaders/NPR/DifferentOutline/ObjBasedOutline
    Assets/Shaders/MyShaders/NPR/ToneBasedShader
    Assets/Shaders/MyShaders/NPR/RimLightToonShader

具体说明和实验结果请见 NPR.pdf

实现了一个专门渲染卡通人物发质的 shader (主要在高光部分有所创新),和一个专门渲染卡通人物脸部的 shader(面部补光)

  • 对应场景
    Assets/Scenes/HonkaiFst

  • 对应 shader
    Assets/Shaders/MyShaders/NPR/HairSpec/ZigZagToon
    Assets/Shaders/MyShaders/NPR/ToonFaceShader

具体说明和实验结果请见 NPR.pdf

屏幕后处理效果


实现了 Bloom 效果

  • 对应场景
    Assets/Scenes/Post-processing

  • 对应 shader 和脚本
    Assets/Shaders/MyShaders/Post-Processing/GaussianBlur
    Assets/Shaders/MyShaders/Post-Processing/Bloom
    Assets/Scripts/Post-Processing/GaussianBlur
    Assets/Scripts/Post-Processing/Bloom


  • 在同一个场景里通过 enable/disable 不同像机来查看不同的后处理效果。

具体说明和实验结果请见 Screen Post-processing Effects.pdf

实现了动态模糊效果

  • 对应场景
    Assets/Scenes/Post-processing

  • 对应 shader 和脚本
    Assets/Shaders/MyShaders/Post-Processing/MotionBlur
    Assets/Scripts/Post-Processing/MotionBlur


  • 在同一个场景里通过 enable/disable 不同像机来查看不同的后处理效果。

具体说明和实验结果请见 Screen Post-processing Effects.pdf

你可能感兴趣的:(GP homework5)