GPU Gems1 - 18 空间BRDF(Spatial BRDFs)
这章主要介绍了空间双向反射分布函数(SBRDF),接着文章讨论了压缩SBRDF表达式,以及由离散光或环境贴图所照明的SBRDF的渲染方法。关于BRDF请参考大佬浅墨的这篇文章https://blog.csdn.net/poem_qianmo/article/details/75943714
SBRDF是纹理贴图和双向反射分布函数(BRDF)的组合。纹理贴图存储了反射或其他的属性,它们沿着2D表面上的空间变化,而BRDF存储的是表面上单个点的反射,包括从入射角到出射角的全部分布。
SBRDF对标准点光源或方向光源照明的SBRDF表面,文中直接贴图了Shader源码,具体可以参考原文。
SBRDF除了可以用点光源或方向光源照明之外,还可以用环境贴图中所有方向的入射光进行照明。关键是在渲染前用BRDF的一部分卷积环境贴图。对于大多数的BRDF表达式,必须分别处理各个不同的BRDF。但因为一个SBRDF可能有上百万个不同的BRDF,所以这样做不可能。这篇文章采取的的做法是,简单地用一个Phong叶片卷积环境贴图,叶片可以选择不同的镜面指数,如n=0、1、4、16、64、256、这些贴图能存储在不同级别的立方体mipmap中。随后,SBRDF纹素的n值就指细节层次(LOD),用于在立方体贴图中采样适当mipmap级别。
【关键词提炼】
双向反射分布函数(BRDF)
空间双向反射分布函数(SBRDF)
离散光(Discrete Lights)
环境贴图(Environment Maps)
GPU Gems1 - 18 空间BRDF(Spatial BRDFs)相关推荐
- GPU Gems1 - 24 高质量的过滤
在一些应用中,高质量的过滤是至关重要的,可以用像素shader代码执行任何过滤.GPU着色程序不用于CPU的主要之处在于:一般来说,CPU数学操作比纹理访问更快,而在GPU中恰恰相反.图像过滤的目的很 ...
- GPU Gems1 - 1 用物理模型进行高效的水模拟(Effective Water Simulation from Physical Models)
该读书笔记大多内容参照了大神浅墨的该篇文章https://zhuanlan.zhihu.com/p/35974789 本章介绍了一种在GPU中模拟和渲染大的水体的系统.它把基本网格的集合波动于动态发现 ...
- 空间计量经济学 Spatial Econometrics
最近看了下沈体雁,于瀚辰老师写的<空间计量经济学>,写的还是简单明了,十分易懂,用来入门还是颇为不错的.但是遇到一个问题,在前面各个模型介绍时,书中没给出英文简写,可是后面有些地方直接用简 ...
- 空间调制 Spatial Modulation 简述
最近学长给的一篇审稿中包含这一方面的内容,因为也属于 MIMO 的一种实现技术,因此正好了解一下这一技术的相关背景和发展,在此做个小结 背景 得益于其优异的误码性能和更高的数据传输速率,多天线 ...
- 空间金字塔Spatial Pyramid的BOW和Pyramid HOG的多核
经过我的实验,发现在基于模板法的object detection或者classification中,将Pyramid Histogram of Oriented Gradients (PHOG)和Sp ...
- GPU Gems1 - 22 颜色控制(Color Controls)
这章将在游戏中图像处理的讨论,扩展到技术和艺术上控制颜色的方法和应用,包括将图像从一些的色彩空间中移入移出,以及快速地给任何2D或3D场景加上精美的色调. 色彩校正(Color Correction) ...
- GPU Gems1 - 23 景深技术综述
本章主要介绍如何使用GPU创建实时的景深(Depth of Field)效果.参考浅墨总结文章的链接https://zhuanlan.zhihu.com/p/36499291 聚焦在枪上,背景模糊 [ ...
- GPU Gems1 - 21 实时辉光(Real-Time Glow)
这章浅墨的文章讲的很细了,这里基本照扒一遍加深印象,原文链接:https://zhuanlan.zhihu.com/p/36499291 [章节概览] 这章讲到2D光照效果中的辉光(Glow)和光晕( ...
- GPU Gems1 - 19 基于图像的光照(Image-Based Lighting)
这篇文章打破了当时立方体贴图环境(Cube-Map Environment)用法的桎梏,深入研究了更多可能的逼真光照效果.文章主要研究了基于图像的光照(Image-Based Lighting,IBL ...
最新文章
- iis架设aspx_在IIS6中配置html文件以ASPX方式工作
- mysql去掉乱码_mysql消除乱码方法集
- 判断鼠标不在控件上_【干货】Eprime编写鼠标点击型记忆再认实验
- 【jvm jdk】锁状态位之偏向锁
- Xweibo与第三方站点单点登录配置
- 国际象棋渲染测试软件,C4D结合Octane Render渲染器制作三维国际象棋建模渲染教程 含中英文字幕...
- html5 指南针,14.html5 作业 简单移动端-指南针 用 canvas 画一下.
- python爬虫的意义_爬虫的意义与爬虫基本流程
- 机器学习入门-强烈推荐-经典好文
- pythonturtle魔法阵_python turtle 库绘制简单魔法阵
- 软件测试实例-如何测试一个杯子
- 电商兴头上的丁磊请注意,阿里云在用AI养猪了
- Liquibase常用操作
- XLORE2:大规模跨语言知识图谱构建与应用
- NV GTX680对GTX580:另一个视角
- 每日日报20191223
- 英语口语考试资料Food
- 制作macOS Monterey启动U盘
- 关于距离,K-means,层次聚类,密度聚类以及谱聚类
- 摄像机替代工业相机的尝试
热门文章
- 点钞机语音怎么打开_微信语音怎么转发?原来方法这么简单,你还不知道吗
- php查询sql2008数据库操作系统,使用 PHP 进行查询 - Azure SQL Database SQL Managed Instance | Microsoft Docs...
- Hike on a Graph HDU - 1252(bfs)
- python2中可以使用print()函数吗_在Python2.x中使用print()(函数版本)
- 【计算机组成原理】定点数的表示和运算
- PHP使用Switch语句判断星座,PHP的switch判断语句的“高级”用法详解 用switch语句怎样判断成绩的等级...
- java axis webservice_Axis Webservice框架使用案例
- d3.js 旋转图形_变化莫测的图形推理,你能解出几种?
- 数学--数论--康托展开与逆康托展开
- 移动namenode、secondarynamenode和jobTracker的节点(使其成为独立节点)