2015-10-03 15 views
10
import UIKit 
import Metal 
import QuartzCore 

class ViewController: UIViewController { 

var device: MTLDevice! = nil 
var metalLayer: CAMetalLayer! = nil 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 
    device = MTLCreateSystemDefaultDevice() 
    metalLayer = CAMetalLayer()   // 1 
    metalLayer.device = device   // 2 
    metalLayer.pixelFormat = .BGRA8Unorm // 3 
    metalLayer.framebufferOnly = true // 4 
    metalLayer.frame = view.layer.frame // 5 
    view.layer.addSublayer(metalLayer) // 6 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 


} 

benim ViewController.swift bu olunca, hata alıyorum "bildirilmemiş tip CAMetalLayer Kullanımı" derlemek verir Metal ve QuartzCore ithal ettik bile. Bu kodu çalışmak için nasıl alabilirim?Metal iOS hatayı

cevap

39

Metal kod Simülatörde derlenmiyor. Bir cihaz için derlemeyi deneyin.

+0

Henüz bir şey bile almadım. Bu şeyleri yazdıktan hemen sonra görünür ve sadece bekle – Pocketkid2

+1

Xcode –

+3

'da simülatör yerine bir aygıt seçmeyi deneyin Bu soru, hiçbir soru olmadığından soruyu yanıtlamaz, ancak belirtilen sorun için bir çözümdür: Simülatör metal kodu derleyemez. Bir Cihaz seçerseniz, derleme hataları gider. –

İlgili konular