处理器/DSP
Imagination素以移动设备的芯片IP闻名,如智能手机和平板电脑,并在性能、功率及占用面积方面享有盛誉,且一直保有市场领先地位。为全方位发展,Imagination开发了与光线追踪相关的IP,而光线追踪技术一直被认为是计算机图形学中的“圣杯”,其使得超写实光照的开发更加简单明了。Imagination的PowerVR Wizard GR6500架构是图形处理单元(GPU)的设计,集成了有效功能,使SoC制造商在移动设备内提供光线追踪硬件成为现实。以下是Imagination早前在旧金山2017游戏开发者大会上展示的视频。
该演示使用的系统由标准PC组成,包含了一个具有相同硬件的开发PCI卡,它们将一同集成在移动设备上。PC运行Ubuntu Linux。在生产中,移动操作系统通常是Android。
在视频中,我们也展示了硬件如何被第三方游戏引擎使用。游戏引擎是一个中间件,位于图形设备驱动程序上,可以为个体游戏的美工和可玩性提供一个平台。许多不同的商业游戏将使用相同的游戏引擎。在我们的示例中,我们使用的第三方游戏引擎是 Unreal Engine 4,用于许多AAA游戏,如Gear of War 4和最近的Final Fantasy。
此外,我们展示了Vulkan图形API的使用。图形API是一个标准的介于图形软件和设备驱动程序之间的接口。Vulkan API是一个相对较新的标准,使性能关键型应用程序有更多低级控制的资源。该标准是由Khronos Group开发,Imagination Technologies也参与其中。
最初,视频展示了Unreal Engine 4运行Sun Temple的示例。这里,引擎使用Vulkan API后端与设备驱动程序交互,进而控制PowerVR Wizard GPU。
为了展示硬件光线跟踪的功能,我们还运行了一个基于Unreal Engine标准桌椅教程的场景。我们添加了一些对象到场景中,以此展示光线追踪的优势。
最初,桌椅项目在标准(光栅)模式下运行,使用的是通常用于移动设备的Unreal Engine着色器。这段视频展示了我们如何使用热键在普通光栅模式和光线追踪模式之间进行切换。在光线追踪模式下,可以在镜子、桌面和地面上看到真实的反射。有了常规的着色器,反射通常都是在主渲染中应用预渲染,有时也可以通过读取场景的其他部分来实现。除了特殊情况,这些反射都不是很准确。光线追踪则允许单一渲染中完全准确的反射。
同样,你可以看到桌面花瓶的精确折射。相比之下,普通的着色器只是扭曲了现有的渲染。然而,这样的屏幕空间技巧,无论是反射还是折射,都不能显示任何不可视的对象。光线追踪则提供了精确、准确、真实的反射,即使是在一个扭曲的反射表面,如演示中的两面镜子。
光线追踪也可以通过从表面向光源发射光线来实现阴影。规则的着色器会使用每个光线的阴影贴图,但这些都需要一个预渲染。
视频中演示的光线追踪着色器是由Unreal Engine生成,就像它为常规渲染生成阴影一样。我们对Unreal Engine 4做了稍许改动,以生成着色器。但大多数材料属性的代码没有改动。这两种类型的着色器都使用了Vulkan API,其光线追踪着色器均根据需求使用了一组特定的扩展。
光线追踪的另一个优势是相机镜头和投影的灵活性。演示场景中展示的所有内容都是光线追踪的结果,包括从相机位置到第一个对象的光线。这些初始光线是由一个透镜着色器生成——可编程的功能在常规光栅渲染中不可用。
透镜着色器被用于帧缓冲的每一个像素,允许任意的镜头特征。
视频演示的最后一部分展示了这种灵活性。它展示了所谓360°视频的生成,在这个过程中,可以在单一的帧中显示全球面的视图。这些视频都是实景和电脑图形制作而成。它们可以通过VR头盔或在线播放器观看,让您的视线可以在球面周围平移。最后一部分展示了等量矩形投影渲染的桌椅对象。整个球形视图被映射到平面渲染的矩形上,在直接查看时将生成一个相当奇怪的图像。然而,当通过YouTube的VR观看时,它会显示为一个较小的片段,观众可以在其中进行互动。
总之,Imagination Technologies的PowerVR Wizard架构从物理上提供了正确的反射、折射和阴影,且在移动设备中使用时功耗很低。我们可以利用光线追踪的灵活性,在单个渲染层中对虚拟现实进行着色,而不是多个渲染层所需的常规的基于光栅的渲染。它还完全支持用于标准渲染和光线跟踪的Vulkan API(对API有适当的扩展)。
全部0条评论
快来发表一下你的评论吧 !