OpenGL 投光物Light casters

  • 投光物Light casters简介
  • 平行光
  • 点光源
  • 衰减
  • 选择正确的值
  • 实现衰减
  • 聚光
  • 手电筒Flashlight
  • 平滑/软化边缘

投光物Light casters简介

我们目前使用的光照都来自于空间中的一个点。它能给我们不错的效果,但现实世界中,我们有很多种类的光照,每种的表现都不同。将光投射(Cast)到物体的光源叫做投光物(Light Caster)。在这一节中,我们将会讨论几种不同类型的投光物。学会模拟不同种类的光源是又一个能够进一步丰富场景的工具。

我们首先将会讨论定向光(Directional Light),接下来是点光源(Point Light),它是我们之前学习的光源的拓展,最后我们将会讨论聚光(Spotlight)。在下一节中我们将讨论如何将这些不同种类的光照类型整合到一个场景之中。

平行光

当一个光源处于很远的地方时,来自光源的每条光线就会近似于互相平行。不论物体和/或者观察者的位置,看起来好像所有的光都来自于同一个方向。当我们使用一个假设光源处于无限远处的模型时,它就被称为定向光,因为它的所有光线都有着相同的方向,它与光源

OpenGL 投光物Light casters相关推荐

  1. OpenGL with QtWidgets:投光物、多光源

     (本文是LearnOpenGL的学习笔记, 教程中文翻译地址https://learnopengl-cn.github.io/(备用地址https://learnopengl-cn.readthed ...

  2. LearnOpenGL->光照->投光物/多光源

    投光物 我们目前使用的光照都来自于空间中的一个点.它能给我们不错的效果,但现实世界中,我们有很多种类的光照,每种的表现都不同.将光投射(Cast)到物体的光源叫做投光物(Light Caster).在 ...

  3. Learn OpenGL (十二):投光物

    平行光 当一个光源处于很远的地方时,来自光源的每条光线就会近似于互相平行.不论物体和/或者观察者的位置,看起来好像所有的光都来自于同一个方向.当我们使用一个假设光源处于无限远处的模型时,它就被称为定向 ...

  4. 第三十一章 投光物和多光源总结

    投光物:将光投射到物体的光源.不同的投光物代表不同种类的光源. 平行光:(也叫做定向光) 光线都是平行的,物体和光源的相对位置不重要.场景中每个物体的光照计算都是类似的. 定义一个光线方向向量,而不是 ...

  5. OpenGL学习笔记15-Light casters

    Light casters Lighting/Light-casters 到目前为止,我们使用的所有照明都来自于一个单一的光源,即空间中的一个点.它的效果很好,但在现实世界中,我们有几种不同类型的光, ...

  6. Opengl-光照-基本光照-投光物-多光源(现实世界的光可不只有太阳也并不只有一个)

    前言 相信大家看过各种发光的道具,手电筒?看到过吧?灯泡看到过吧?除了太阳生活中还有各种灯红酒绿的地方(说错了)等着你去看啊 各种光源 平行光-太阳或者很远处的光都可以叫做平行光 平行光的光的方向是一 ...

  7. 第三十二章 投光物和多光源总结

    Assimp 将模型导入到程序中.需要掌握:解析导出的模型文件以及提取所有有用的信息,存储为OpenGL能够理解的格式. 模型的文件格式不同,每一种都有自己的方式来导出模型数据.有专门的库可以直接用, ...

  8. OpenGL完整教程专栏完整目录

    OpenGL完整教程专栏完整目录 专栏说明如下 专栏目录 专栏说明如下 内容:OpenGL完整教程 数量:314篇博文(2023年2月15日截止) 更新时间至:2023年2月15日(后续加上去的博文, ...

  9. OpenGL多光源Multiple lights

    OpenGL多光源Multiple lights 多光源Multiple lights简介 定向光 点光源 合并结果 多光源Multiple lights简介 我们在前面的教程中已经学习了许多关于Op ...

最新文章

  1. android 挂载 nfs工具,Android 挂载 NFS
  2. 一组图诠释CNN及RNN的区别
  3. Web Security——英语写作与教学评价系统(iWrite)解决写作时禁止复制粘贴问题解决方案
  4. linux 视频编辑 ffmpeg,ffmpeg转码视频真的好用!(ffmpeg的简单使用方法)
  5. 滴滴司机问我会 LRU 吗?
  6. Linux之ab命令
  7. c语言基础知识孙小红,基于J2EE的C语言在线学习系统的设计与实现
  8. jsp员工管理系统mysql_基于JSP的企业员工信息管理系统的设计(MySQL)
  9. 对百度输入法小米版的用户体验
  10. QQ互联开发者信息认证
  11. Vue3 router 默认加载 views 文件夹下全部vue文件
  12. KIS专业版12.0迁移K3WISE14.3后自定义核算项目权限问题
  13. 【力扣题解】分式化简
  14. 运放TL08系列,功放LM386,8欧姆的扬声器
  15. 大数据下,淘宝达人、今日特卖等自媒体人如何适应这个时代,或许该用上工具了!
  16. Ubuntu 完全卸载软件常用命令
  17. Dichotomy(递+非递)
  18. python绘制直线的垂线_p countour中的Python垂直线
  19. OpenCV+ip摄像头实现远程实时监控
  20. ChatGPT AI生成的VUE教程博客大纲

热门文章

  1. 怎么让手机变成震动器_详解iPhone 手机标配的两种技术:线性马达和3Dtouch,有多好用?...
  2. Java要掌握哪些技术才能顺利找到工作?分享这6项
  3. Python常见的一些面试题,太有用啦!
  4. 受大厂们青睐的Web前端工程师需要掌握的3项能力!
  5. 什么是Tomcat响应静态资源?
  6. JavaScript中常用的事件代码及实例
  7. c语言矩阵存储,C语言实现特殊矩阵存储
  8. 2017 9月java答案_2017年9月计算机二级JAVA试题及答案
  9. VTK:二次方用法实战
  10. JavaScript实现MergeSort归并排序算法(附完整源码)