当前位置:网站首页>【unity笔记】L4Unity中的基础光照
【unity笔记】L4Unity中的基础光照
2022-04-23 12:17:00 【lee2813】
一、基础光照概述
1.包含物件
- 光源 —— 衡量标准:辐射度(垂直与表面法线上余弦值乘以斜线上的辐射度)
- 吸收和散射 —— 光线经过散射后,一个会散射到物体内部,一个是反射到物体外部

- 着色 —— 利用材质属性和光源信息进行物体表面光照模型的计算过程,称为着色。
- BRDF光照模型 —— 计算光线和物体表面交互的渲染方程。
2.标准光照模型
- 环境光 —— 表述物体表面的间接光照:光线在进入摄像机前,经过了不止一次的物体反射。
- 自发光 —— 光线直接由光源发射进入摄像机
- 漫反射 —— 针对于光线从物体表面随机散射到各个方向的辐射度进行建模。这个时候入射方向反而不重要,因为都会散射到各个方向。而散射的光线强度和光源方向之间夹角的余弦值成正比
- 高光 —— 计算高光由两种模型,一种是Blinn模型,还有一种是Phong模型
3.逐像素还是逐顶点
- 对于计算光照模型的位置:在片元着色器中计算称为逐像素光照,在顶点着色器中计算称为逐顶点光照。
- Phong着色:以每个像素为基础,计算法线,再根据面片之间对顶点法线进行插值
- 高洛德着色:再每个顶点上计算光照,然后在渲染图元内部进行线性插值,最后输出成像素颜色
4.Blinn-Phong模型
- 定义:使用了漫反射和高光反射来对反射光线进行建模,提出的基于经验的计算高光反射的方法。
- 优点:简化了计算,更快
- 局限性:由于是一个经验模型,对于一些复杂的现象,例如菲涅耳反射表现不出来,另外各项同性的特点导致旋转物体时,反射表面不会由任何变化。对于毛发等不适用。
5.环境光和自发光
- 环境光:在添加热河照明之前该空间中已经可用的光

- 自发光:在片元着色器输出最后颜色之前,把材质的自发光颜色添加到输出颜色上即可
二、在Unity Shader上实现漫反射光照模型
版权声明
本文为[lee2813]所创,转载请带上原文链接,感谢
https://blog.csdn.net/Tom870223050/article/details/124325953
边栏推荐
- The fourth chapter is to enable the filling object of IM and enable ADO for im column storage (IM 4.8)
- 同态加密技术学习
- How much does software testing help reduce program bugs?
- 《通用数据保护条例》(GDPR)系列解读三:欧洲子公司如何向国内母公司回传数据?
- VMware虚拟机使用esxi 导出硬盘vmdk文件
- 如果你是一个Golang面试官,你会问哪些问题?
- Interpretation 3 of gdpr series: how do European subsidiaries return data to domestic parent companies?
- 智能多线弹性云增加独立的IP地址,如何实现多线功能?
- 在 VSCode 中调试 Jest 的测试用例,VSCode调试Jest测试用例报错basedir=$(dirname “$(echo “$0“ | sed -e ‘s,\\,/,g‘)“)解决
- Debug Jest test cases in VSCode, debug Jest test cases in VSCode, middle note basedir=$(dirname "$" (echo "$0" sed -e -e, s, \ \, / "-e").
猜你喜欢

How do programmers finalize nucleic acid statistics with 130 lines of code

How to solve the computer system card?

Idea code quality specification plug-in sonarlint
![A detailed explanation of head pose estimation [collection of good articles]](/img/59/6ac8692b0dbd0218bb512c5eac3124.png)
A detailed explanation of head pose estimation [collection of good articles]

外包干了五年,废了...

《通用数据保护条例》(GDPR)系列解读三:欧洲子公司如何向国内母公司回传数据?

九十八、freemarker框架报错 s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request

Sofa weekly | excellent Committee of the year, contributor of this week, QA of this week

Intelligent multi line elastic cloud adds independent IP address. How to realize multi line function?

智能多线弹性云增加独立的IP地址,如何实现多线功能?
随机推荐
In idea Solution to the problem of garbled code in Chinese display of properties file
Force buckle - 1137 Nth teponacci number
On using go language to create websocket service
Lesson 24 analysis of classical problems
第四章 为IM 启用填充对象之启用和禁用表空间的IM列存储(IM 4.5)
如果你是一个Golang面试官,你会问哪些问题?
QT one process runs another
Purpose of IM expression (IM 5.2)
NativeForMySQL 连接MySQL8 提示:1251- Client does not support authentication protocol
用户接口和IM表达式(IM 5.6)
Symmetric encryption, certificate encryption
S2-062 remote command execution vulnerability recurrence (cve-2021-31805)
Debug Jest test cases in VSCode, debug Jest test cases in VSCode, middle note basedir=$(dirname "$" (echo "$0" sed -e -e, s, \ \, / "-e").
第二十三课 临时对象
第二十六课 类的静态成员函数
《通用数据保护条例》(GDPR)系列解读三:欧洲子公司如何向国内母公司回传数据?
Qt绘制图像
IMEU如何与IMCU相关联(IM 5.5)
软件测试对于减少程序BUG有多大帮助?
Step function of activation function