研究员在WebGL1中分享了一个Wolfenstein实时光线跟踪演示

栏目: 编程工具 · 发布时间: 4年前

内容简介:上周,计算机视觉研究员Reinder Nijhoff创建了一个项目,使用Nvidia的RTX显卡在WebGL1中进行实时光线跟踪。 这个演示的灵感来自Metro的实时全局照明。此演示使用使用WebGL1创建的混合渲染引擎。 它借助传统的光栅化技术渲染帧中的所有多边形,然后将结果与光线跟踪阴影,漫反射GI和反射相结合。

上周,计算机视觉研究员Reinder Nijhoff创建了一个项目,使用Nvidia的RTX显卡在WebGL1中进行实时光线跟踪。 这个演示的灵感来自Metro的实时全局照明。

此演示使用使用WebGL1创建的混合渲染引擎。 它借助传统的光栅化技术渲染帧中的所有多边形,然后将结果与光线跟踪阴影,漫反射GI和反射相结合。

研究员在WebGL1中分享了一个Wolfenstein实时光线跟踪演示

Raytraced Shadows

研究员在WebGL1中分享了一个Wolfenstein实时光线跟踪演示

Diffuse GI

研究员在WebGL1中分享了一个Wolfenstein实时光线跟踪演示

Reflections

什么是光线追踪技术?

在计算机图形学中,光线跟踪是一种用于渲染具有非常复杂的光交互的3D图形的技术。基本上,在该技术中,算法追踪光的路径,然后模拟光与虚拟对象交互的方式。

光与虚拟对象交互的方式有三种:

  • 它可以从一个物体反射到另一个物体,从而引起反射。
  • 它可以被导致阴影的物体阻挡。
  • 它可以穿过透明或半透明的物体,造成折射。

然后组合所有这些相互作用以确定像素的最终颜色。

光线跟踪已被用于离线渲染,因为它能够准确地模拟现实世界中光的物理行为。由于其计算密集性,光线跟踪通常不是实时渲染的首选。然而,随着Nvidia RTX显卡的推出,这种情况发生了变化,因为它增加了自定义加速硬件并使实时光线跟踪变得相对简单。

这个演示是关于什么的?

该项目的原型基于前向渲染器,该渲染器首先绘制场景中的所有几何体。接下来,着色器用于栅格化(将图像转换为像素)几何体,计算直接照明。此外,着色器还从渲染几何体的表面投射随机光线,以使用光线跟踪器收集由于非光泽表面引起的间接光反射。

作者从一个非常简单的场景开始,原型包括一个灯光,只渲染了几个球体和立方体。这使得光线跟踪代码非常简单。原型完成后,他希望通过向场景添加更多几何图形和大量光源来将原型提升到新的水平。

尽管环境很复杂,但Nijhoff希望实时对场景进行光线追踪。通常,为了加速光线跟踪过程,使用边界体积层次结构(BVH)作为加速结构。但是,使用WebGL1着色器时,很难预先计算和使用BVH。这就是Nijhoff决定使用Wolfenstein 3D级别进行此演示的原因。

要了解更多详细信息,请查看 Reinder Nijhoff分享的原始帖子

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-03/157571.htm


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

从界面到网络空间

从界面到网络空间

(美)海姆 / 金吾伦/刘钢 / 上海科技教育出版社 / 2000-7 / 16.40元

计算机急剧改变了20世纪的生活。今天,我们凭借遍及全球的计算机网络加速了过去以广播、报纸和电视形式进行的交流。思想风驰电掣般在全球翻飞。仅在角落中潜伏着已完善的虚拟实在。在虚拟实在吕,我们能将自己沉浸于感官模拟,不仅对现实世界,也对假想世界。当我们开始在真实世界与虚拟世界之间转换时,迈克尔·海姆问,我们对实在的感觉如何改变?在〈从界面到网络空间〉中,海姆探讨了这一问题,以及信息时代其他哲学问题。他......一起来看看 《从界面到网络空间》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具