Metal使用的渲染通道不需要多余的校验,因而最大限度的减少了API负载,且对于每一帧的渲染都有质的提升
3.然很多API都通过具体类来实现平台支持,不过Metal使用的方法是基于协议的。...不能再后台执行命令代码,否则系统崩溃
命令提交模型深入学习
a.在Metal 的架构中,MTLDevice 协议定义了简单的代表GPU 的接口,此协议提供了方法去查询设备的属性,创建设备的特殊对象,比如缓冲区或者纹理...,被包含在一个单一的命令缓冲区中,即使渲染的帧,包含多个渲染传递,计算处理函数,或者或blit操作,命令缓冲区是单次使用的对象,不能被重用,一旦命令缓冲区被提交到GPU去执行,只有一种操作是有效的,就是等待命令缓冲区被加入执行列表或处理程序块登记命令缓冲区执行处理程序块讨论完成并检查命令缓冲区的执行情况...,命令缓冲区也代表工作的唯一独立跟踪单元的应用程序
4.MTLRenderCommandEncoder 命令编码器是一个短暂的对象,你用一次写命令和状态中,GPU可以执行一个命令缓冲区格式。...要写进一步的命令,创建一个新的命令编码器
区分可重用的对象和不可重用的对象
a.可重用的对象
Command queues
Data buffers
Textures
Sampler states