操作系統(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
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26