5

私は 3D グラフィックスに非常に興味があり、多くの開発者が Metal を絶賛していると聞きました。

Metal と OpenGL ES 2.0 を扱ったことのある人は、学習曲線が OpenGL ES 2.0 とどのように比較されるかについてコメントできますか?

iOS に忠実であり続けることを目指している初心者として、Metal は OpenGL ES 2.0 よりも習得と習得が容易ですか、それともより高度なため難しいのでしょうか?

どこから始めればよいかを考えているので、この質問が多くの人に役立つことを願っています。

4

2 に答える 2

7

初心者の場合は、より高いレベルの 3D グラフィックスから始めることをお勧めします。OS X および iOS 用のSceneKitを使用すると、ジオメトリ、マテリアル (テクスチャ/シェーディング)、ライト、カメラなどのコンテンツの観点から 3D シーンを記述し、3D モデリング ツールで作成されたアセットを読み込むことができます。SceneKit は OpenGL (ES) 上に構築されているため、多くの同じ概念を使用しています。これらの概念に慣れてきたら、SceneKit を使用して OpenGL の世界に少しずつ足を踏み入れることができます。

これらすべての詳細については、WWDC の SceneKit ビデオ ( What's New in SceneKitおよびBuilding a Game with SceneKit ) をご覧ください


それ以外の場合は... OpenGL (ES) と Metal は、それ自体で学習曲線が大きく異なるわけではありません。実際、Metal はいくつかの点で OpenGL よりも親しみやすいと考えています。 CPU または GPU 時間への影響が大きく、コストのかかる作業をいつ実行するかを決定できます。

一方、Metal はまったく新しいものです。学習に役立つサードパーティのリソースはまだ多くありません。また、3D グラフィックスを学習する上で難しいことの多くは、Metal、OpenGL、DirectX、または別のプラットフォーム/API で作業しているかどうかにかかわらず、非常に似ています。重要なことを学んだら、そのための書籍やオンライン チュートリアルがたくさんありますが、それらを探すには StackOverflow が最適な方法ではありません。Metal や特定のプラットフォームでの OpenGL ES を使いこなすのはかなり簡単です。簡単。

于 2014-07-23T17:17:20.167 に答える
5

OpenGL-ES のバックグラウンドを持つ私は、Metal API をよく調べました。私は、Metal の学習曲線がより急勾配になっていると考えています。それは、それが新しい API であるからではなく、以前は開発者が心配する必要のなかった低レベルの構造が導入されているためです。

固定パイプラインの Open-GL をシェーダー指向の Open GL フレーバー (モバイル: ES 1.x と ES 2.x、3.x の比較)、そして最後に Metal と比較すると、ますます強力になり、ますます一般的な API が切り離されています。 Open-GL の歴史的基盤を構成する直感的な構造 (三角形、頂点、ランプ) から。

より使いやすい API を作成することは、Metal の主な目標ではないことに注意してください。このフレームワークの目標は、開発者がドライバーのオーバーヘッドを取り除くのを支援することです。

于 2014-07-25T09:29:52.110 に答える