openGL系列文章目录

文章目录

  • openGL系列文章目录
  • 前言
  • 一、光照模型
  • 二、光源
  • 材质
  • ADS 光照计算
    • ADS 光照计算
  • 参考

前言

光照以不同的方式影响着我们世界的外观,有时甚至是很戏剧化的方式。当手电筒照射
在物体上时,我们会期望它面向光线的一侧看起来更亮。我们所居住的地球,在中午朝向
太阳时候被照得很亮,但随着它的自转,同一个地点的亮度会逐渐由白天转变为傍晚,直
到午夜变得完全黑暗。物体对光的反射也各不相同。物体除了颜色的差别,也可以具有不
同的反射特性。考虑两个物体,在都是绿色的情况下,其中一个是布制的,而另一个是抛
光钢材质的——那么后者看起来会更“闪亮”。

一、光照模型

我们所观察到的光是高能量源发出的光子,经过反射直到一些光子到达我们的眼睛的产
物。不幸的是,在计算上模拟这个自然过程是不可行的,因为这需要模拟并跟踪大量光子
的运动,即向我们的场景添加海量的对象(和矩阵)。因此,我们需要的是光照模型。
光照模型(Lighting model)有时也被称为着色模型(Shading model),在着色器编程存
在的情况下,这可能有点令人困惑。有时又使用术语反射模型(Reflection model),进一步
使术语复杂化。我们将尽力坚持使用简单而实用的术语。
现在最常见的光照模型称为“ADS”模型,因为它们基于标记为A、D 和S 的3 种类型
的反射。

openGL基础光照“ADS”( Phone光照模型)(一)相关推荐

  1. OpenGL 基础光照ColorsBasic Lighting

    OpenGL 基础光照ColorsBasic Lighting 基础光照ColorsBasic Lighting简介 环境光照 漫反射光照 法向量 计算漫反射光照 最后一件事 镜面光照 基础光照Col ...

  2. Unity Shader中的基础光照与标准光照模型(自发光、环境光、高光反射、漫反射)、BRDF光照模型

    我们是如何看到这个世界的 从宏观上来说,渲染包含了两大部分 决定一个像素的可见性 决定这个像素上的关照计算 而光照模型就是用于决定一个像素上进行怎样的光照计算 通常来讲,我们要模拟真实的光照环境来生成 ...

  3. OpenGL基础45:光照矫正(下)之Gamma校正

    接上文:OpenGL基础44:光照矫正(上) 四.Gamma矫正 4.1.人的视觉特性 和很多错视图一样,对于下面这张灰阶图,如果1表示纯白,0表示纯黑,那么这张图片的哪个位置代表的是0.5,也就是自 ...

  4. OpenGL基础44:光照矫正(上)

    对于openGL的API,倒是没有必要花太多时间,重点应该还是在着色器上 一.采样器.glActiveTexture和glBindTexture 在之前测试简单光照时可能出现的两个问题,尽管它们可能不 ...

  5. OpenGL基础20:镜面光照

    前置:OpenGL基础19:法向量与漫反射 一.镜面光照 前面物体已经拥有了环境光和漫反射光,现在再加上镜面光照就完美了,镜面光照的效果是:当我们去看光被物体所反射的那个方向的时候,会看到一个高光 和 ...

  6. 基础光照-Phong 光照模型

    1. Phong 光照模型 1.1 环境光照 Ambient Lighting 1.1.1 实现代码 1.2 漫反射光照 Diffuse Lighting 1.2.1 法向量 及实现代码 1.2.2 ...

  7. Vulkan_Shader_Day02—光照(基础光照_Phong Lighting Model)

    基础光照 现实世界的光照是极其复杂的,而且会受到诸多因素的影响,这是我们有限的计算能力所无法模拟的.因此OpenGL的光照使用的是简化的模型,对现实的情况进行近似,这样处理起来会更容易一些,而且看起来 ...

  8. OpenGL: 基础篇

    本人水平有限,如有问题请以文章形式提出,大家可以讨论吗... [OPENGL怎么用] OPENGL编程类似C编程,实际接口就是C,所以熟悉C是必要的 一般编程可用到的函数库包括: OPENGL实用库: ...

  9. opengl基础学习

    转自:http://www.cnblogs.com/crazyxiaom/articles/2073586.html 说起编程作图,大概还有很多人想起TC的#include <graphics. ...

最新文章

  1. sql server 怎么实现mysql中group_concat,列转行,列用分隔符拼接字符串
  2. 如何调试Android Framework?
  3. html中加法,javascript 实现加法运算详解
  4. python基础学习笔记第二天 内建方法(s t r)
  5. agent python实现 建模_零基础三天学会Python爬虫(第二天)
  6. 思维导图哪款好用?怎么借助MindManager 做旅游计划
  7. Swift 5 闭包Closure简明教程
  8. centos7随机生成密码
  9. python直角坐标转极坐标_Python在OpenCV里实现极坐标变换功能
  10. 全局设置下载方式为豆瓣镜像的方法
  11. 八月六日个人训练记录
  12. 网络爬虫---抓包分析,用抓包分析爬取腾讯视频某视频所有评论(Fiddler工具包的分享)
  13. CSP-S2022T1题解
  14. 前端使用CryptoJS加密解密
  15. EasyUI快速入门实战教程(一)
  16. JAVA JDK最详细的安装教程--你只需要看这篇就够了
  17. 硅胶制品为何丝印后字符会掉?
  18. ACM数论之旅3---最大公约数gcd和最小公倍数lcm(苦海无边,回头是岸( ̄∀ ̄))...
  19. 华为LAB实验室3-决策树
  20. 【操作系统】分段存储管理方式

热门文章

  1. jQuery全选全删动态表格
  2. pms解析--未完待续
  3. ios和android适配问题,小程序的iOS和Android兼容问题
  4. 标准声纹采集终端,为声纹库建设提供标准支撑,为声纹鉴定和比对提供坚实的基础!
  5. 信息系统安全等级保护一些实施难点
  6. 刘颂计算机学院,关于表彰2013—2014学年 - 首页 北京工商大学计算机与 .doc
  7. echarts xAxis字显示不全
  8. 5分钟就能做一个Excel动态图表,你确定不学学?(纯gif教学)
  9. “Adb connection Error:远程主机强迫关闭了一个现有的连接。”的解决方法
  10. excel宏根据表格自动计算机,Excel使用宏录制自动将输入内容排到另一张表的操作方法...