版本記錄
版本號(hào) | 時(shí)間 |
---|---|
V1.0 | 2018.11.04 星期日 |
前言
很多做視頻和圖像的潦匈,相信對(duì)這個(gè)框架都不是很陌生粘勒,它渲染高級(jí)3D圖形,并使用GPU執(zhí)行數(shù)據(jù)并行計(jì)算钩蚊。接下來(lái)的幾篇我們就詳細(xì)的解析這個(gè)框架贡翘。感興趣的看下面幾篇文章。
1. Metal框架詳細(xì)解析(一)—— 基本概覽
2. Metal框架詳細(xì)解析(二) —— 器件和命令(一)
3. Metal框架詳細(xì)解析(三) —— 渲染簡(jiǎn)單的2D三角形(一)
4. Metal框架詳細(xì)解析(四) —— 關(guān)于GPU Family 4(一)
5. Metal框架詳細(xì)解析(五) —— 關(guān)于GPU Family 4之關(guān)于Imageblocks(二)
6. Metal框架詳細(xì)解析(六) —— 關(guān)于GPU Family 4之關(guān)于Tile Shading(三)
7. Metal框架詳細(xì)解析(七) —— 關(guān)于GPU Family 4之關(guān)于光柵順序組(四)
8. Metal框架詳細(xì)解析(八) —— 關(guān)于GPU Family 4之關(guān)于增強(qiáng)的MSAA和Imageblock采樣覆蓋控制(五)
9. Metal框架詳細(xì)解析(九) —— 關(guān)于GPU Family 4之關(guān)于線程組共享(六)
10. Metal框架詳細(xì)解析(十) —— 基本組件(一)
11. Metal框架詳細(xì)解析(十一) —— 基本組件之器件選擇 - 圖形渲染的器件選擇(二)
12. Metal框架詳細(xì)解析(十二) —— 基本組件之器件選擇 - 計(jì)算處理的設(shè)備選擇(三)
13. Metal框架詳細(xì)解析(十三) —— 計(jì)算處理(一)
14. Metal框架詳細(xì)解析(十四) —— 計(jì)算處理之你好两疚,計(jì)算(二)
15. Metal框架詳細(xì)解析(十五) —— 計(jì)算處理之關(guān)于線程和線程組(三)
16. Metal框架詳細(xì)解析(十六) —— 計(jì)算處理之計(jì)算線程組和網(wǎng)格大写补馈(四)
17. Metal框架詳細(xì)解析(十七) —— 工具含滴、分析和調(diào)試(一)
18. Metal框架詳細(xì)解析(十八) —— 工具诱渤、分析和調(diào)試之Metal GPU Capture(二)
19. Metal框架詳細(xì)解析(十九) —— 工具、分析和調(diào)試之GPU活動(dòng)監(jiān)視器(三)
20. Metal框架詳細(xì)解析(二十) —— 工具谈况、分析和調(diào)試之關(guān)于Metal著色語(yǔ)言文件名擴(kuò)展名勺美、使用Metal的命令行工具構(gòu)建庫(kù)和標(biāo)記Metal對(duì)象和命令(四)
21. Metal框架詳細(xì)解析(二十一) —— 基本課程之基本緩沖區(qū)(一)
22. Metal框架詳細(xì)解析(二十二) —— 基本課程之基本紋理(二)
23. Metal框架詳細(xì)解析(二十三) —— 基本課程之CPU和GPU同步(三)
24. Metal框架詳細(xì)解析(二十四) —— 基本課程之參數(shù)緩沖 - 基本參數(shù)緩沖(四)
25. Metal框架詳細(xì)解析(二十五) —— 基本課程之參數(shù)緩沖 - 帶有數(shù)組和資源堆的參數(shù)緩沖區(qū)(五)
26. Metal框架詳細(xì)解析(二十六) —— 基本課程之參數(shù)緩沖 - 具有GPU編碼的參數(shù)緩沖區(qū)(六)
27. Metal框架詳細(xì)解析(二十七) —— 高級(jí)技術(shù)之圖層選擇的反射(一)
28. Metal框架詳細(xì)解析(二十八) —— 高級(jí)技術(shù)之使用專(zhuān)用函數(shù)的LOD(一)
29. Metal框架詳細(xì)解析(二十九) —— 高級(jí)技術(shù)之具有參數(shù)緩沖區(qū)的動(dòng)態(tài)地形(一)
30. Metal框架詳細(xì)解析(三十) —— 延遲照明(一)
31. Metal框架詳細(xì)解析(三十一) —— 在視圖中混合Metal和OpenGL渲染(一)
32. Metal框架詳細(xì)解析(三十二) —— Metal渲染管道教程(一)
33. Metal框架詳細(xì)解析(三十三) —— Metal渲染管道教程(二)
34. Metal框架詳細(xì)解析(三十四) —— Hello Metal! 一個(gè)簡(jiǎn)單的三角形的實(shí)現(xiàn)(一)
35. Metal框架詳細(xì)解析(三十五) —— Hello Metal碑韵! 一個(gè)簡(jiǎn)單的三角形的實(shí)現(xiàn)(二)
About Metal and This Guide - 關(guān)于Metal和這個(gè)指南
注意:這個(gè)指南相對(duì)比較老赡茸,但是里面很多東西還是有借鑒意義了,大家感興趣的可以參考下祝闻。
Metal框架支持GPU加速的高級(jí)3D圖形渲染和數(shù)據(jù)并行計(jì)算工作負(fù)載占卧。 Metal提供了一個(gè)現(xiàn)代化的簡(jiǎn)化API,用于組織联喘,處理和提交圖形和計(jì)算命令的細(xì)粒度华蜒,低級(jí)控制,以及這些命令的相關(guān)數(shù)據(jù)和資源的管理豁遭。 Metal的主要目標(biāo)是最小化執(zhí)行GPU工作負(fù)載所帶來(lái)的CPU開(kāi)銷(xiāo)叭喜。
At a Glance - 概覽
本文檔描述了Metal的基本概念:命令提交模型,內(nèi)存管理模型蓖谢,以及獨(dú)立編譯的代碼用于圖形著色器和數(shù)據(jù)并行計(jì)算函數(shù)的使用捂蕴。然后,該文檔詳細(xì)說(shuō)明了如何使用Metal API編寫(xiě)應(yīng)用程序闪幽。
您可以在以下章節(jié)中找到更多詳細(xì)信息:
- Fundamental Metal Concepts簡(jiǎn)要介紹了Metal的主要特征啥辨。
- Command Organization and Execution Model解釋了如何創(chuàng)建命令并將其提交給GPU以執(zhí)行。
- Resource Objects: Buffers and Textures討論設(shè)備內(nèi)存的管理盯腌,包括表示GPU內(nèi)存分配的緩沖區(qū)和紋理對(duì)象委可。
- Functions and Libraries描述了如何在Metal應(yīng)用程序中表示Metal著色語(yǔ)言代碼,以及如何將Metal著色語(yǔ)言代碼加載到GPU并執(zhí)行腊嗡。
- Graphics Rendering: Render Command Encoder描述了如何渲染3D圖形着倾,包括如何跨多個(gè)線程分布圖形操作。
- Data-Parallel Compute Processing: Compute Command Encoder解釋了如何執(zhí)行數(shù)據(jù)并行處理燕少。
- Buffer and Texture Operations: Blit Command Encoder描述了如何在紋理和緩沖區(qū)之間復(fù)制數(shù)據(jù)卡者。
- Metal Tools列出了可用于幫助您自定義和改進(jìn)開(kāi)發(fā)工作流程的工具。
- Metal Feature Set Tables列出了每個(gè)Metal功能集的功能可用性客们,實(shí)現(xiàn)限制和像素格式功能崇决。
- What's New in iOS 9 and OS X 10.11總結(jié)了iOS 9和OS X 10.11中引入的新功能材诽。
- What’s New in iOS 10, tvOS 10, and OS X 10.12總結(jié)了iOS 10,tvOS 10和OS X 10.12中引入的新功能恒傻。
- Tessellation描述了用于細(xì)分補(bǔ)丁的Metal細(xì)分管道脸侥,包括使用計(jì)算內(nèi)核,曲面細(xì)分和后細(xì)分頂點(diǎn)函數(shù)盈厘。
- Resource Heaps描述了如何從堆中分配資源睁枕,在它們之間使用別名,并使用圍柵跟蹤它們沸手。
Prerequisites - 先決條件
您應(yīng)該熟悉Objective-C
語(yǔ)言外遇,并且熟悉使用OpenGL
,OpenCL
或類(lèi)似API進(jìn)行編程契吉。
See Also - 同可參考
- Metal Framework Reference是一組文檔跳仿,描述了Metal框架中的接口。
- Metal Shading Language Specification是一個(gè)文檔捐晶,它指定Metal著色語(yǔ)言菲语,用于編寫(xiě)Metal應(yīng)用程序使用的圖形著色器或計(jì)算函數(shù)。
- 此外惑灵,
Apple Developer Library
中提供了幾個(gè)使用Metal的示例代碼項(xiàng)目山上。
后記
本篇主要講述了Metal編程指南之概覽,感興趣的給個(gè)贊或者關(guān)注~~~