本系列文章是对 metalkit.org 上面MetalKit内容的全面翻译和学习.性能优化
每一年六月都是个人最爱,缘由不少,但WWDC2016是最重要的缘由!观看开篇keynote
和昨天的Platforms State Of The Union
会议中,透露出不少新特性甚至新框架.在本文中,咱们只关注Graphics and Games图形和游戏方面.框架
先从Metal开始.目前,最热门最期待的特性是支持Tessellation曲面细分,它使3D应用和游戏经过高效描述复杂几何体到GPU
来渲染出更多细节.另外一个特性是Function Specializatio功能专业化/功能特化,它帮助建立一个特殊优化过的函数的集合来处理材料和灯光在场景中的结合.今年还有一个新功能是Resource Heaps and Memoryless Render Targets资源堆和无记忆渲染目标,来实现iOS
和tvOS
上细粒度的资源分配和性能优化控制.最后,Metal System Trace是macOS
独占的特性,能够帮助咱们用CPU
和GPU
之间的交互概况来分析图形管线,这能够帮助咱们发现基于Metal的应用的性能优化点.less
Model I/O框架带来了USD文件格式支持.MDLMaterialPropertyGraph类能够让我更方便地支持对模型进行运行时程序改变.同时,MDLVoxelArray类添加了对 signed distance fields有符号距离场的支持.最后,你能够经过MDLLightProbeIrradianceDataSource协议添加辅助灯光探头的旋转.编辑器
GameplayKit框架带来了Procedural noise generation程序噪声生成能够用来丰富游戏世界,更高端的纹理,更真实的摄像机移动.接着,Spatial partitioning空间分割让咱们分割游戏世界的数据,这样能够更高效的搜索.还有Monte Carlo strategist蒙特卡洛策略帮助咱们建模游戏中可能存在移动困难的地方.新的decision tree API决策树API在采用决策树学习来产生基于玩家动做数据挖掘的行为能够加强咱们游戏内建AI.函数
ReplayKit框架引入对tvOS的支持,及对broadcasting的支持,因此咱们能够经过第三方网站来广播录制的媒体了.post
SceneKit框架引入了新的Physically Based Rendering基于物理渲染系统,能够让咱们用简单的资源编辑就建立出更真实的结果.同时,新的HDR特性和效果帮助咱们建立更加真实.性能
SpriteKit框架引入了新的tilemap瓷砖地图解决方案来支持矩形,六边形和等轴测瓷砖地图.Xcode编辑器也提供对瓷砖和瓷砖地图的支持.学习
Accelerate框架引入了对quadrature求积分
(积分)的支持,组建神经网络的基本数学函数,及几何学断言函数来测试物体交叉.测试
Core Image框架如今容许咱们插入自定义的处理到Core Image
图形滤镜中.Core Image
内核代码如今能够请求特殊输出像素格式了.最后,Core Image
添加了五个新滤镜来扩展滤镜集合.
敬请关注更多消息!