本系列文章是對 http://metalkit.org 上面MetalKit內容的全面翻譯和學習.
本文的寫作有三個原因:第一,告訴大家我正在將Metal
代碼升級到Swift 3
,然后將教程移到另一個設計更好看,域名更合適的新家園;第二,我想向你展示用不同方式來使用MetalKit
,不使用MTKView
子類,而是使用MTKViewDelegate
.第三,我想要回答一位讀者的問題,如何畫線框圖.
我們從第4部分
的代碼開始,它還是個Xcode
項目,我們現在會把它轉到playground里面.這會是一個非常短的教程,你需要做的就是添加下面這行到編碼繪制命令之前:
renderEncoder.setTriangleFillMode(.lines)
就是這樣!運行playground,欣賞線框的三角形吧.如果你不喜歡這種插值出來的顏色,在片段著色器中用一個常量顏色比如綠色來替換返回值,例如:
return half4(0.0, 1.0, 0.0, 1.0);
輸出圖像應該是這樣:
chapter17.png
對于3D
渲染,還有一件事要做,禁用背面剔除.如果你用的是第9部分
的playground代碼,只需注釋掉這行:
commandEncoder.setCullMode(.back)
輸出圖像應該是這樣:
chapter17_2.png
源代碼source code 已發布在Github上.
下次見!