南风娱乐网致力于优质软件,活动线报,游戏辅助,绿色工具等资源共享,好货不私藏!
精品资源,免费分享

vulkan是什么(光遇vulkan怎么解决)

作者:管理员

Vulkan是一款跨平台的2D和3D图形应用程序接口,2015年由Khronos在GDC首次发布。本质上是AMD Mantle的后续版本,继承了AMD Mantle强大的低开销架构,让开发者可以方便全面的获得GPU和多核CPU的性能、功能和效率。

与OpenGL相比,Vulkan支持深度硬件控制,可以大大降低高负载绘图任务中CPU的开销。同时其对多核CPU的支持更加完善,更适合从高端工作站到PC平台再到移动平台的多核策略。

Vulkan因其高性能、低成本而广受欢迎。虽然上市时间不长,但是市场上有很多支持Vulkan的游戏和应用,比如《末日》、《Dota2》、《需要速度——无限》等。

1.1 Vulkan概述

在介绍具体的开发技术之前,本节先介绍Vulkan的历史传承和一些技术特点,同时对Vulkan和其他图形应用界面(OpenGL、DirectX、Metal等)做一个简单的比较。).最后介绍一下目前支持Vulkan的游戏,具体内容如下。

1 . 1 . 1 Vulkan简介

在了解Vulkan的具体知识之前,我们有必要先了解一下市场上主流的3D图形应用界面。目前各种平台上主流的三维图形API有OpenGL、OpenGL ES、DirectX、Metal、Vulkan,各自的应用领域和特点如下。

OpenGL的应用领域较为广泛,支持多种操作系统平台(如Windows、UNIX、Linux、*cOS等)。基于其开发的应用可以方便、低成本地在不同操作系统平台之间移植。既可以用于开发游戏,又可以用于开发工业、行业应用。 OpenGL ES是专门针对移动嵌入式平台而设计的,实际是OpenGL的剪裁版本。去除了OpenGL中许多不必要的特性,优化了对性能、供电受限的移动嵌入式平台的支持。 DirectX为微软的专有技术,主要用于Windows下游戏的开发,在此领域占有极高的比例。最新的版本为DirectX 12,此版本也是大大优化了对多核CPU的支持,但仅支持Windows 10。 Metal是Apple的专有技术,仅仅能够在*cOS以及iOS下使用,应用的领域相对比较狭窄,目前基于它的应用相对较少。 Vulkan与OpenGL类似,是跨平台的3D图形应用程序接口,同时支持Windows 7、Windows 8.1、Windows 10、Linux以及Android等平台。

Vulkan最早被称为下一代OpenGL,**名称是GLNext。它的设计考虑了统一平台的开发,所以不像OpenGL和OpenGL ES,根据硬件性能和电源区分不同版本,但是工作站、PC、移动嵌入式平台等等是完全一致的。这对广大开发者来说是一个很大的好处。

2016年2月16日,Khronos组织发布了Vulkan的第一个官方版本。从此,数字图形技术行业产生了一个全新的图形应用程序接口,可以真正意义上与DirectX 12和Metal抗衡。截止到2016年4月,Google在Android N的第二个开发预览版中正式加入了对Vulkan的支持,Vulkan的主要特性如下。

Vulkan提供更低的运行开销、更直接的GPU控制和较低的CPU负载。其通过批处理方式有效减少CPU的负载,将CPU从额外的运算和渲染中解放出来去执行其他的任务。 相比于以往面向CPU单核心设计的OpenGL,Vulkan原生支持多线程并发处理,能够更好地与当下普遍采用多核战略的CPU协同工作。DirectX 12、Metal等厂商专有的新一代图形应用程序接口也都在多线程并发方面提供了支持,可见这是业界发展的大趋势。 着色器方面,Vulkan也不再像OpenGL一样指定高层的着色器编程语言(OpenGL指定采用GLSL着色器编程语言),而是采用一种被称为SPIR-V(Standard Portable Intermediate Representation)的二进制中间层格式。这样,开发人员在开发Vulkan着色器时可以选用自己青睐的着色器编程语言,诸如GLSL、HLSL等,然后将着色器源代码采用着色器专用编译器编译为SPIR-V格式即可在Vulkan中使用,大大提高了灵活性。 Vulkan将计算任务和图形着色渲染任务统一管理,无需使用单独的计算和图形应用程序接口进行连接。 不同于OpenGL的状态机,在运行任务时会自动进行各种错误检查(不可关闭)。Vulkan为了追求更高的执行效率,将各种错误的检查设计为可插拔模式。开发人员可以在开发调试时打开所需的错误检查**,在发布时关闭错误检查**,以达到更好的性能。 Vulkan在架构层面提供了对多轮渲染的支持,使得可以以更高的效率实现延迟渲染以在特定场景下大大提高渲染效率。

Vulkan本身就深刻深刻,其革命性的设计远远不止于此。读者可以在这本书的脚步中逐渐深入地了解Vulkan的方方面面。

1.1.2支持Vulkan的游戏概述

通过简要介绍,读者已经基本了解了Vulkan相对于传统图形应用程序界面的诸多优势。由于Vulkan的这些突出特点,市面上的几款知名游戏都开始使用Vulkan。但是由于Vulkan诞生不久,使用Vulkan的游戏数量并不是很大。接下来我们简单介绍几款使用Vulkan的游戏。

Dota

作为一部深受玩家欢迎的大作,Dota 2早在2016年就发布了官方补丁支持Vulkan。图1-1是原Dota 2的游戏场景,图1-2是在Vulkan支持下运行的Dota 2的游戏场景。

vulkan是什么(光遇vulkan怎么解决)

▲图1-1原版Dota 2游戏场景

vulkan是什么(光遇vulkan怎么解决)

▲图1-2 Vulkan支持的Dota 2游戏场景

解释

对比图1-1和图1-2可以看出,Vulkan支持的Dota 2比原来的Dota 2场景更加生动细腻。在游戏的实际对比测试中,可以感觉到Vulkan支持的Dota 2运行更流畅,可以观察到CPU利用率更低,体现了Vulkan降低CPU开销的特点。

极品飞车

通过对比Dota 2使用Vulkan前后的场景,观察了Vulkan在三维图形处理方面的进展。接下来我们将展示电子艺界开发的赛车比赛游戏《速度需求:无限》,进一步体验Vulkan的3D图形处理能力,如图1-3和图1-4所示。

vulkan是什么(光遇vulkan怎么解决)

▲图1-3速度需求:无限场景1

vulkan是什么(光遇vulkan怎么解决)

▲图1-4速度需求:无限场景2

解释

可以看出,Vulkan API渲染的以上两个《速度需求:无限》游戏场景的光影效果极其逼真,烟雾和运动模糊效果非常真实。

Dream League Soccer

在介绍了以上两款支持Vulkan的游戏Dota 2和Need for Speed之后,我不得不介绍一下由First Touch开发的运动游戏——梦幻联盟足球。游戏自发布以来,受到玩家的好评,现在Vulkan版本已经发布,效果分别如图1-5和1-6所示。

vulkan是什么(光遇vulkan怎么解决)

▲图1-5梦幻联赛足球场景1

vulkan是什么(光遇vulkan怎么解决)

▲图1-6梦幻联赛足球场景2

通过观察上述游戏屏幕,我们可以欣赏到Vulkan在三维图形处理能力上的提升。在前面的内容中,已经多次提到Vulkan的一个优点是可以大大降低渲染时的CPU成本,这将直接影响游戏运行和画面的流畅度。很多权威机构都在这方面测试过Vulkan。

比如贝塞斯达和英伟达早在2016年就进行了相关测试,测试结果显示使用DirectX 11运行1080P分辨率的毁灭者4,平均帧率在55-60之间。之后用Vulkan做同样的渲染工作,整个游戏帧率提升到120以上。可见Vulkan在降低CPU开销和渲染图形方面是有效的。

vulkan是什么(光遇vulkan怎么解决)

本书系统介绍了下一代OpenGL规范Vulkan,揭示了Vulkan的独特性。这本书的主要内容包括:内存和资源、队列和命令、数据移动、图像显示、着色器和管道、图形管道对象、绘制命令、几何处理、片段处理、同步、数据回读和多渲染通道。

免责声明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

最新评论