当前位置: 首页 > news >正文

计算机图形学-GAMES101-12阴影

Shadow mapping

问题的提出

  • 我们之前在进行着色时,对于每个物体仅考虑自己,而不考虑其他物体对它的影响。限定在光栅化中,如何解决阴影问题呢?
  • 阴影能被摄像机看到,但不能被光源所照亮。
  • 经典的Shadow mapping只能处理点光源(或者说方向光源)产生的阴影,这种阴影有明显的边界,即一个物体要么在阴影里、要么不在。这种非0即1的阴影叫做硬阴影。

Projection to light

  • 将相机移动到点光源位置,进行投影,计算并记录点光源照射物体的深度信息。
  • 将相机移回角色头部,在角色视线方向进行投影,对每个片段进行变换。
  • 使用上一步的变换矩阵,获取刚刚记录的片段对应的深度信息,计算片段到相机的距离。
  • 如果距离等于深度,那么使用光进行着色,否则视为阴影。

从光源看向场景

在这里插入图片描述

记录物体的深度

在这里插入图片描述

从相机看向场景

在这里插入图片描述

需要探讨的问题

  • 深度的数值精度

  • Shadow Mapping使用多大的分辨率?

  • Shadow Mapping需要更多的计算

  • 只能计算硬阴影(理论上)

  • 硬阴影和软阴影有什么区别?在这里插入图片描述
     硬阴影就是被本影挡住的部分,而软阴影是被部分光源照亮。
    在这里插入图片描述
     如果要做出软阴影,必须使用具有一定体积大小的点光源。

http://www.lryc.cn/news/70052.html

相关文章:

  • iOS_Swift高阶函数
  • 探索Vue的组件世界-组件复用
  • OMA通道-2
  • SAP 用CO13冲销工序报工,但是没有产生货物移动(TCODE:CO1P 、 SE38 :CORUPROC,CORUAFWP)
  • 信息收集-服务器信息
  • 连续签到积分兑换试用流量主小程序开发
  • C语言—自定义类型(结构体、枚举、联合)
  • Node.js博客项目开发思路笔记
  • python 之 shutil 文件的复制、删除、移动文件以及目录,并支持文件的归档、压缩和解压
  • jface
  • 六级备考28天|CET-6|听力第一讲|基本做题步骤与方法|13:30~14:30
  • 系统设计 - 设计一个速率限制器
  • [技术分享]Android平台实时音视频录像模块设计之道
  • JDKMissionControl官方用户指南--人工翻译
  • MySql-高级(分库分表问题简析) 学习笔记
  • 【5.20】五、安全测试——安全测试工具
  • 【13900k】i9 核显升级驱动
  • 使用Python将绿色转换为红色、红色转换为蓝色的图像处理
  • Web2与Web3开发的不同之处
  • 递增数组的判断【python实现】
  • 在自定义数据上训练 YOLOv8 实例分割
  • 洛谷密钥被破解:加密安全面临新挑战
  • 02 Android开机启动之BootLoader及kernel的启动
  • 代码随想录算法训练营 Day 49 | 121.买卖股票的最佳时机,122.买卖股票的最佳时机 II
  • 精炼计算机网络——数据链路层(一)
  • 猿创征文|Spring系列框架之面向切面编程AOP
  • IoT架构设计
  • EasyRecovery16电脑硬盘数据恢复软件功能讲解
  • 信道通信基础 - 传输介质(双绞线、光纤)
  • 黑马Redis原理篇