操作系統(tǒng):Windows8.1

顯卡:Nivida GTX965M

開發(fā)工具:Visual Studio 2017


到目前為止,我們了解到Vulkan是一個與平臺特性無關(guān)聯(lián)的API集合。它不能直接與窗口系統(tǒng)進行交互。為了將渲染結(jié)果呈現(xiàn)到屏幕,需要建立Vulkan與窗體系統(tǒng)之間的連接,我們需要使用WSI(窗體系統(tǒng)集成)擴展。在本小節(jié)中,我們將討論第一個,即VK_KHR_surface。它暴露了VkSurfaceKHR,它代表surface的一個抽象類型,用以呈現(xiàn)渲染圖像使用。我們程序中將要使用到的surface是由我們已經(jīng)引入的GLFW擴展及其打開的相關(guān)窗體支持的。簡單來說surface就是Vulkan與窗體系統(tǒng)的連接橋梁。

 

VK_KHR_surface擴展是一個instance級擴展,我們目前為止已經(jīng)啟用過它,它包含在glfwGetRequiredInstanceExtensions返回的列表中。該列表還包括將在接下來幾小節(jié)中使用的一些其他WSI擴展。

 

需要在instance創(chuàng)建之后立即創(chuàng)建窗體surface,因為它會影響物理設(shè)備的選擇。之所以在本小節(jié)將surface創(chuàng)建邏輯納入討論范圍,是因為窗體surface對于渲染、呈現(xiàn)方式是一個比較大的課題,如果過早的在創(chuàng)建物理設(shè)備加入這部分內(nèi)容,會混淆基本的物理設(shè)備設(shè)置工作。另外窗體surface本身對于Vulkan也是非強制的。Vulkan允許這樣做,不需要同OpenGL一樣必須要創(chuàng)建窗體surface。

Window surface creation


延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式