[MetalKit]Using MetalKit part 17使用MetalKit17

本系列文章是对 http://metalkit.org 上面MetalKit内容的全面翻译和学习.

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上.
下次见!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,262评论 4 61
  • 此时此刻,我正在听着一首歌,一个平时听摇滚嘻哈风的舍友突然间换了曲风,在听一首悲情的歌,她对他说:“听说你...
    小燕子_dfa4阅读 495评论 0 0
  • 我希望有个如你一般的人,如山间清爽的风,如古城温暖的光。 那一年新中国即将迈进新世纪,那一年两个鲜活的小生命来到了...
    风尘亦布衣阅读 209评论 0 0
  • 除了向全世界承诺提供放心的商品和快捷的速递服务,亚马逊为提高其贸易水平,还要向用户评论的质量下手。据英国媒体BBC...
    f11015f29d83阅读 534评论 0 1
  • 今早为了给办公室同事买早饭,到的比较晚。盯背是前一天布置的。A类同学背诵全文,BC两类同学挑其中一段。在八班盯背时...
    SandFoam阅读 239评论 0 0