Metal学习(1)
2016-12-24 20:29
267 查看
在iOS 8里,苹果发布了一个新的接口叫做Metal,它是一个支持GPU加速3D绘图的API。Metal和OpenGL ES相似,它也是一个底层API,负责和3D绘图硬件交互。它们之间的不同在于,Metal不是跨平台的。与之相反的,它设计的在苹果硬件上运行得极其高效,与OpenGL
ES相比,它提供了更快的速度和更低的开销。
使用Metal你要做的第一件事就是获取一个MTLDevice的引用。你可以把一个MTLDevice想象成是你和CPU的直接连接。你将通过使用MTLDevice创建所有其他你需要的Metal对象(像是command queues,buffers,textures)。
下面的例子,查看设备的GPU信息
1. 用xcode创建cocoa应用,在storyboard拖一个label到View Controller,放在中间,调整大小使其可以显示多行
2. 在 View Controller.swift 输入下列代码:
ES相比,它提供了更快的速度和更低的开销。
使用Metal你要做的第一件事就是获取一个MTLDevice的引用。你可以把一个MTLDevice想象成是你和CPU的直接连接。你将通过使用MTLDevice创建所有其他你需要的Metal对象(像是command queues,buffers,textures)。
下面的例子,查看设备的GPU信息
1. 用xcode创建cocoa应用,在storyboard拖一个label到View Controller,放在中间,调整大小使其可以显示多行
2. 在 View Controller.swift 输入下列代码:
import Cocoa class ViewController: NSViewController { // 为Label控件创建IBOutlet @IBOutlet weak var label: NSTextField! override func viewDidLoad() { super.viewDidLoad() /* The MTLCopyAllDevices() 只用在 macOS, iOS/tvOS 要用 MTLCreateSystemDefaultDevice()查看GPU的信息 https://developer.apple.com/reference/metal/mtldevice */ let devices = MTLCopyAllDevices() guard let _ = devices.first else { fatalError("Your GPU does not support Metal!") } label.stringValue = "Your system has the following GPU(s):\n" for device in devices { label.stringValue += "\(device.name!)\n" } } }结果如下:
相关文章推荐
- Metal学习(2)
- iOS 8 Metal Swift教程 :开始学习
- 学习Metal,翻译了《metal programming guide》,分享之
- iOS 8 Metal Swift教程 :开始学习
- iOS 8 Metal Swift教程(一) :开始学习
- iOS 8 Metal Swift教程 :开始学习
- apple深度学习开发包Metal
- kidd风的IOS日志之学习用MetalPerformanceShaders进行图像处理(模糊效果)
- dotNET和VS.NET 学习录像
- 我的DDK学习经验(转载)
- 乱弹语言的学习(答网友问)
- 对于初学者学习Java语言的建议[教学]
- c++学习要点
- Microsoft Agent 学习笔记 (一)
- C++学习要点
- 《Mastering Delphi 6》学习笔记之七
- 自我学习之一:淡入淡出(抄)
- <kingofark关于学习C++和编程的50个观点> 详解 - 预览版
- STL的学习笔记之一
- 对于(学习c++)的c程序员的建议