Vulkan教程最新跨平台高效能计算机

本教程教导大家使用Vulkan图形和计算API的基础知识。Vulkan是一个新的API,它由Khronosgroup(OpenGL的管理组织)开发,对现代显卡提供了比以往的API(OpenGL和Direct3D)好得多的功能提取,它能让你更好地描述你的编程意图,以便产生更好的运行效率,并减少对显卡驱动的压力。Vulkan的设计理念跟微软的Direct3D12和Apple的Metal比较相似,它的优势在于完全跨平台,能让你的程序同时运行于Windows,Linux和Android平台,而你要为此付出的代价是,你将与一个更为底层更为繁琐的API打交道,为之全新打造每一个所需的细节,包括最初的framebuffer创建,以及对buffers和textureimages的objects进行内存管理。显卡驱动的工作将比以往少得多,这意味着你要在自己的程序中提供正确的处理方式。

因此,Vulkan不是面向所有的3D开发者的,它的目标用户是那些对高性能的计算机图形开发有热情并愿意为之付出一定工作量的程序员。如果你只是对3D游戏开发有兴趣,而不是想致力于计算机3D图形基础库的推进,那么OpenGL和Direct3D可能会更适合你,或者你可以基于一种引擎来开发,比如UnrealEngine和Unity,它们会提供更高层的API,而这些高层API在底层实现上可能是采用Vulkan的。

在接下来的Vulkan学习之旅中,有一些前提条件您需要预先具备:

1.一块支持Vulkan的显卡及其驱动(NVIDIA,AMD,Intel)

2.会C++(对RAII,initializerlists比较熟悉)

3.编译器对C++17有良好的支持(VisualStudio+,GCC7+,OrClang5+)

4.不要求您知道OpenGL和Direct3D,但要有计算机3D图形学的基础知识,比如我们不会解释正交投影背后的数学原理。在此为您推荐一个非常棒的学习计算机图形学基本概念的在线教程:《LearningModern3DGraphicsProgramming》(


转载请注明:http://www.aierlanlan.com/grrz/5121.html