当前位置:网站首页>【TA-霜狼_may-《百人计划》】2.4 传统经验光照模型
【TA-霜狼_may-《百人计划》】2.4 传统经验光照模型
2022-07-01 03:24:00 【zczplus】
–
这部分内容跟着Games101已经详细推过了,主要看后半部分吧
光照模型的分类
- 基于物理理论的光照模型:偏重于使用物理的度量和统计方法,效果真实,计算复杂,实现较为复杂;
- 经验模型:对光照的模拟,通过简化和总结归纳,以达到可接受的效果;
本章节重点考虑经验模型的方法
漫反射
不受观察角度影响,Lambert光照模型仅仅针对漫反射:
镜面反射
受到观察角度影响,有Phong模型和Blinn-Phong模型两种这两种模型包含了漫反射、镜面反射、环境光三个部分,是最初得比较完整的模型。后者在前者基础上引入了半程向量从而降低了计算复杂度。
Phong模型:
Blinn-Phong模型:
区别就在于绿色框框中利用到了半程向量,半程向量的计算实现如下:
环境光
一般上对这部分光照进行简化,直接利用环境光颜色乘以漫反射材质。
着色方法
后面的内容应该对应的是Games101的着色方法章节,范别是逐平面、逐顶点和逐像素的着色,利用到的则是面差值、顶点插值和法线插值对上述部分进行实现。
对应英文名称分别是:
- Flat shading
- Gouraud shading
- Phong Shading
注意区分此处的Phong shading与之前的Phong模型,Phong shading注重着色的频率问题,而Phong模型则是在描述如何模拟真实的光照现象。
顶点法线
顶点法线之前一直不明白如何计算,看过Games101之后明白了是利用相邻面的法线和或者是加权和(权值为相邻面的面积)求得的。
总结
跟着入门精要第六章过了一遍,大致明白了各种经验光照模型的实现方法。

作业里要求的能量守恒的实现我愣住了,后面学完PBR再回来补吧。能量守恒的应用则是在于:光打到物体表面之后形成的漫反射,镜面反射以及被吸收的能量总和是一定的,无论如何变化整体强度不变。
感觉不带点基础来看百人有点不好理解,先速通一下《入门精要》吧,10天之内弄完。
边栏推荐
- Data exchange JSON
- 整合阿里云短信的问题:无法从静态上下文中引用非静态方法
- go实现命令行的工具cli
- The preorder traversal of leetcode 144 binary tree and the expansion of leetcode 114 binary tree into a linked list
- Processing of menu buttons on the left and contents on the right of the background system page, and double scrolling appears on the background system page
- 多元线性回归
- Learning notes for introduction to C language multithreaded programming
- TEC: Knowledge Graph Embedding with Triple Context
- 241. 为运算表达式设计优先级
- BluePrism注册下载并安装-RPA第一章
猜你喜欢

RSN:Learning to Exploit Long-term Relational Dependencies in Knowledge Graphs

Data exchange JSON

深度学习中的随机种子torch.manual_seed(number)、torch.cuda.manual_seed(number)
![Online public network security case nanny level tutorial [reaching out for Party welfare]](/img/66/d9c848a7888e547b7cb28d84aabc24.png)
Online public network security case nanny level tutorial [reaching out for Party welfare]

LeetCode 31下一个排列、LeetCode 64最小路径和、LeetCode 62不同路径、LeetCode 78子集、LeetCode 33搜索旋转排序数组(修改二分法)

Test function in pychram

Random seed torch in deep learning manual_ seed(number)、torch. cuda. manual_ seed(number)

实现pow(x,n)函数

pytorch中的双线性插值上采样(Bilinear Upsampling)、F.upsample_bilinear

家居网购项目
随机推荐
Sort linked list (merge sort)
文件上传下载
Unexpected token o in JSON at position 1 ,JSON解析问题
You cannot right-click F12 to view the source code solution on the web page
Take you through a circuit board, from design to production (dry goods)
[nine day training] content III of the problem solution of leetcode question brushing Report
排序链表(归并排序)
Leetcode:829. Sum of continuous integers
The method to measure the similarity of two vectors: cosine similarity, pytorch calculate cosine similarity: torch nn. CosineSimilarity(dim=1, eps=1e-08)
TEC: Knowledge Graph Embedding with Triple Context
Cygwin的下载和安装配置
小程序容器技术与物联网IoT的结合点
Go tool cli for command line implementation
家居网购项目
pytorch nn. AdaptiveAvgPool2d(1)
Appium automation test foundation -- supplement: c/s architecture and b/s architecture description
What happens when a function is called before it is declared in C?
Leetcode: offer 59 - I. maximum value of sliding window
Appium自动化测试基础--补充:C/S架构和B/S架构说明
过滤器 Filter