Games101学习笔记 Lecture 14: Ray Tracing 2 (Acceleration Radiometry)

news2024/11/20 4:20:50

Lecture 14: Ray Tracing 2 (Acceleration & Radiometry

  • 一、加速光线追踪 AABB
    • 1.均匀网格 Uniform Spatial Partitions (Grids)
      • ①前处理-构建加速网格
      • ②射线与场景相交
      • ③网格分辨率
      • ④适用情况
    • 2.空间划分
      • KD-Tree
        • ①预处理
        • ②数据结构
        • ③遍历
        • ④问题
    • 3.对象划分 & 包围盒层次结构(BVH)
      • ①步骤
      • ②数据结构
      • ③遍历
  • 二、辐射度量学
    • 1.Radiant Energy 辐射能量
    • 2.Radiant Flux 辐射(光)通量
    • 3.Radiant Intensity 辐射强度
      • 立体角求法
        • ①球面面积法
        • ②微分立体角法
    • 4. 辐照度 Irradiance
    • 5.辐射亮度 Radiance

一、加速光线追踪 AABB

1.均匀网格 Uniform Spatial Partitions (Grids)

①前处理-构建加速网格

  • 找到包围盒
  • 创建网格
  • 判断与物体表面相交的格子(图中右上角少画了一个)
    在这里插入图片描述

②射线与场景相交

  • 按照射线顺序遍历网格
  • 对每个网格单元
    • 测试与存储在该单元中所有对象相交的情况

③网格分辨率

  • 分辨率低,单元格太少 —— 没有加速效果
    在这里插入图片描述
  • 分辨率太高,单元格太多 —— 效率低
    在这里插入图片描述
  • 格子划分要适中,cells = C * objs(物体数),C ≈ 27 in 3D
    在这里插入图片描述

④适用情况

  • 在大量均匀分布的对象集合上表现良好
  • 大规模空气不适合

2.空间划分

  • Oct-Tree(八叉树)、KD-Tree(每次只砍一刀,沿轴方向划分)、BSP-Tree

KD-Tree

①预处理
  • 找到场景中所有的包围盒(AABB)
    • 找到这些包围盒的最小外包围盒,作为KD-Tree的根节点
  • 递归划分节点
    • 对每个节点选择一个轴进行划分(两种)
      • 最长轴:选择对象分布范围最大的轴
      • 中位数
②数据结构
  • 内部节点:(不存储物体)
    • 划分的轴
    • 划分的位置
    • 子结点
  • 叶节点
    • 物体的包围盒
③遍历
  • 判断射线是否与节点的包围盒相交
  • 如果是叶节点,则遍历叶节点中的对象,并测试射线与对象相交情况
  • 如果是内部节点,按顺序判断射线穿过的子节点
    在这里插入图片描述
④问题
  • 物体可能在多个格子里
  • KD-Tree构造太麻烦

3.对象划分 & 包围盒层次结构(BVH)

  • 每个物体只在一个包围盒中,包围盒可能重叠

①步骤

  • 找到包围盒
  • 递归地将包围盒分成两个
    • 最长轴:选择对象分布范围最大的轴
    • 中位数
  • 在每个叶节点存储物体
    在这里插入图片描述

②数据结构

  • 内部节点:
    • 包围盒
    • 子结点
  • 叶节点
    • 物体的包围盒
    • 物体

③遍历

  • 判断射线是否与节点的包围盒相交
  • 如果是叶节点,则遍历叶节点中的对象,返回最近的那个
  • 如果是内部节点,按顺序判断射线穿过的子节点

二、辐射度量学

1.Radiant Energy 辐射能量

  • 指电磁辐射的能量,单位为 J(焦耳)

2.Radiant Flux 辐射(光)通量

  • 单位时间内发射、反射或投射接收的能量,单位为 W(瓦特)

3.Radiant Intensity 辐射强度

  • 光源单位立体角内 发射的 功率,单位为 瓦特每球面度 (W/sr)
    在这里插入图片描述

立体角求法

①球面面积法
  • Ω = A/ r 2 r^{2} r2 ,A 是球面上被截取的面积,r 是球面半径
    在这里插入图片描述
②微分立体角法
  • dΩ = sinθ dθ dϕ,其中 θ 是极角,ϕ 是方位角
    在这里插入图片描述

4. 辐照度 Irradiance

  • 单位面积上 接收到 的辐射通量,单位为 W/ m 2 m^{2} m2(瓦特每平方米)
    在这里插入图片描述

5.辐射亮度 Radiance

  • 单位面积、单位立体角内沿特定方向传播的辐射通量,W/ m 2 m^{2} m2/sr(瓦特每平方米每球面度)
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1881837.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Python绘制极坐标图

使用Python绘制极坐标图 极坐标图极坐标图的优点使用场景 效果代码 极坐标图 极坐标图(Polar Chart)是一种图表类型,用于显示在极坐标系中的数据。极坐标图使用圆形坐标系,角度表示一个变量的值,半径表示另一个变量的…

森马基于MaxCompute+Hologres+DataWorks构建数据中台

讲师:晋银龙 浙江森马数仓高级经理 本次案例主要分享森马集团面对多年自建的多套数仓产品体系,通过阿里云MaxComputeHologresDataWorks统一数仓平台,保障数据生产稳定性与数据质量,减少ETL链路及计算时间,每年数仓整体…

Vue中的axios深度探索:从基础安装到高级功能应用的全面指南

文章目录 前言一、axios 请求1. axios的概念2. axios的安装3. axiso请求方式介绍4. axios请求本地数据5. axios跨域6. axios全局注册7. axios支持的请求类型1)get请求2)post请求3)put请求4)patch请求5)delete请求 二、…

K8s的基本使用和认识

目录 介绍 控制端 Node(节点) 控制端与节点的关系图 基本使用 创建和运行资源 查找和参看资源 修改和删除资源 介绍 控制端 api-server(api)是集群的核心是k8s中最重要的组件,因为它是实现声明式api的关键 kubernetes api-server的核心功能是提供了Kubernetes各类资…

基于FreeRTOS+STM32CubeMX+LCD1602+MCP3008(SPI接口)的ADC转换器Proteus仿真

一、仿真原理图: 二、运行效果: 三、STM32CubeMX配置: 1)、RCC配置: 2)、SPI配置: 四、部分代码: 1)、主函数: /* USER CODE BEGIN Header */ /** ****************************************************************************** * @file : main…

mysql8.0.19安装zip版本

下载地址https://downloads.mysql.com/archives/community/ 下载版本 下载后解压,不包括data 和my.ini文件。其中data 文件是自动生成的【mysqld --initialize --console】,my.ini需要自己编写设置。 新建my.ini文件 需要自己设置 basedirG:\soft\mysql…

华为DCN网络之:VXLAN

VXLAN RFC定义了VLAN扩展方案VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网)。VXLAN采用MAC in UDP封装方式,是NVO3(Network Virtualization over Layer 3)中的一种网络虚拟化技术。 VXLAN…

android studio 添加aar包

按着以前旧的导包方式栽了大跟头,后面在留老板的的博客下找到了解决办法,记录一下。 Andriod Studio 导入aar最新的方式_gradle 8 引入arr-CSDN博客 最新导包方式 1.在新建libs目录,在app/libs目录下导入aar包(其实就是拷贝过去…

hive4 从入门到精通

查询hive 架构 准备 HDFS配置 vim $HADOOP_HOME/etc/hadoop/core-site.xml <!--配置所有节点的root用户都可作为代理用户--><property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><!--配置root用户…

ETH巨鲸鱼异动和最大BTC爆仓

小编使用币界网地址监控工具&#xff0c;跟踪了在一次令人震惊的链上巨鲸地址异动&#xff0c;一个新创建的地址在过去四个小时内从 Coinbase 提取了价值 2121 万美元的 ETH。总共积累了 6,215 个 ETH&#xff0c;平均购买价格为每 ETH 3,414 美元。如此大规模的提款暗示着周一…

JVM原理(八):JVM虚拟机工具之基础故障工具

这里主要介绍监视虚拟机运行状态和进行故障处理的工具 1. jsp:虚拟机进程状况工具 jsp命令格式&#xff1a; jsp [options] [hostid] jps远程查询虚拟机进程状态 2. jstat:虚拟机统计信息监视工具 jstat命令格式&#xff1a; jstat [option vmid [interval [s|ms] [count]…

【Elasticsearch】Elasticsearch索引创建与管理详解

文章目录 &#x1f4d1;引言一、Elasticsearch 索引的基础概念二、创建索引2.1 使用默认设置创建索引2.2 自定义设置创建索引2.3 创建索引并设置映射 三、索引模板3.1 创建索引模板3.2 使用索引模板创建索引 四、管理索引4.1 查看索引4.2 更新索引设置4.3 删除索引 五、索引别名…

基于VUE3+VITE+SpringBoot+Nginx部署项目之跨域配置等问题

前言&#xff1a;遇到问题&#xff0c;解决问题。 第一部分&#xff1a;VUE 配置 1、vite.config.js 文件 server: {proxy: {/api: {target: env.VITE_BASE_URL,changeOrigin: true,secure: false,rewrite: path > path.replace(/^\/api/, )}}}, 2、.env 文件 VITE_BAS…

Tampermonkey 油猴脚本使用教程

Tampermonkey 油猴脚本使用教程 一、Tampermonkey 油猴脚本简介 Tampermonkey 是一款流行的浏览器扩展&#xff0c;它允许用户通过用户脚本增强网页功能或改变网页的外观。它支持包括 Chrome、Microsoft Edge、Safari、Opera Next 和 Firefox 在内的多种浏览器。Tampermonkey…

搭建LNMP环境实现高并发请求

LNMP和Nginx详细配置 一、LNMP环境平台搭建准备工作源码软件包安装nginxmysqlphp使用nginx连接php 二、web服务器-nginx1.学nginx之前需要了解的知识1.1 同步和异步&#xff08;通知结果的方式&#xff09;1.2 阻塞和非阻塞&#xff08;进线程等待时状态&#xff09;1.3 epoll模…

.NET 漏洞情报 | 某整合管理平台SQL注入

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…

Github 2024-07-01开源项目月报 Top15

根据Github Trendings的统计,本月(2024-07-01统计)共有15个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6JavaScript项目3C++项目2PHP项目1Blade项目1非开发语言项目1C#项目1Lua项目1Go项目1MDX项目1Jupyter Notebook项目1从零开始构建你喜…

AI绘画:探索人工智能与艺术的奇妙结合

前言 人工智能技术的不断发展&#xff0c;使得AI绘画逐渐成为艺术领域的新宠。AI绘画是指利用人工智能算法进行绘画创作的一种艺术形式&#xff0c;它可以模拟人类艺术家的创作过程&#xff0c;创造出各种独特的艺术作品。 突破传统艺术的极限&#xff1a;AI绘画的无限可能性 …

学习CAN协议(二):使用CAN发送数据

相关文章 学习CAN协议&#xff08;一&#xff09;&#xff1a;CAN协议简介 学习CAN协议&#xff08;二&#xff09;&#xff1a;使用CAN发送数据 学习CAN协议&#xff08;三&#xff09;&#xff1a;使用CAN接收数据 目录 一、配置CubeMX 二、代码编写 CAN的发送示例代码…

数据资产的创新应用与未来展望:探讨数据资产在人工智能、物联网等新兴领域的应用前景,提出前瞻性的数据资产解决方案,为企业探索新的增长点,推动行业创新发展

目录 一、引言 二、数据资产在人工智能领域的应用 1、机器学习与深度学习 2、自然语言处理 3、计算机视觉 三、数据资产在物联网领域的应用 1、智能家居 2、工业物联网 3、智慧城市 四、前瞻性的数据资产解决方案 1、构建统一的数据管理平台 2、加强数据安全和隐私…