| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> MATCAP详解---传统做法和优化做法 -> 正文阅读 |
|
[游戏开发]MATCAP详解---传统做法和优化做法 |
????????懈怠了好久,今天听了一个大佬的emo分享,我也emo了,但是人总要往前走。收拾一下心情,总结一下最近的学习。 ? ? ? MatCap简介: ????????MatCap即材质捕捉,使用较省的性能快速实现效果。在PBR技术流行后,热度下降。 MatCap缺点: ???????? 1.由于本身是无光照渲染,光照信息在MatCap贴图上,所以只能模拟静态光照。 ???????? 2.不适用于摄像机频繁旋转的场景,因为matcap中的光照信息是特定角度下的,变化后,就不符合光照信息。(有些取巧的做法是,再加上一层光照反射的cubemap) MatCap原理: ????????MatCap(材质捕捉),将模型的法线转换到相机空间,再使用法线作为UV去采样贴图。由于法线的范围是-1到1,在采样时法线的范围是以0点为圆心,半径为2的圆形区域。再被映射到0-1时,就只会采样到matcap贴图的圆形区域。 ????????但是对于法线变化不大,曲率较低的物体,就会出现采样错误。比如:正方体,圆形边缘。 简单优化: ??????? 将法线转换到相机空间做UV也不是真实的摄像机视角看到的球形数据,而是一个大概的模拟。简单优化,就是在这个模拟的方向上再加上些细节,可优化一些效果,但也不是正确的数据。 ??????? 这里介绍的一种优化方法是,可以将世界空间的法线转换到相机空间再与相机空间的顶点坐标做叉乘。可以达到一个还不错的效果。 ?传统MatCap代码:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 16:50:00- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |