Moving from OpenGL to Metal | raywenderlich.com

In this Metal tutorial, you’ll learn how to move your project from OpenGL to Apple’s 3D graphics API: Metal.


This is a companion discussion topic for the original entry at https://www.raywenderlich.com/9211-moving-from-opengl-to-metal

Deprecating the only cross-platform graphics API is the most unreasonable thing to do (mildly speaking).
Metal does not offer bindings to C++, the de facto standard gaming language.
I personally will be avoiding Metal until Apple comes back to their senses, if at all.
IMHO, Vulkan, here I come.

@aubyte Thank you for your feedback - much appreciated!

Bug Report.
The sceneMatrices.projectionMatrix should not only be inited in the func func mtkView(_ view: MTKView, drawableSizeWillChange size: CGSize), it also should be inited when the viewDidLoad.
Because the func mtkView(_ view: MTKView, drawableSizeWillChange size: CGSize) is not always be called when loading MTKView. When the device is same as the Main.storyboard’s setting, iPhone 8, the delegate methods func mtkView(_ view: MTKView, drawableSizeWillChange size: CGSize) won’t be called, which result in the wrong outVertex.computedPosition.

@haawa Do you have any feedback about this? Thank you - much appreciated! :]

This tutorial is more than six months old so questions are no longer supported at the moment for it. Thank you!