3

に を追加するたびにCAMetalLayerNSViewメソッド[CAMetalLayer nextDrawable]nil3 が成功した後に渡されid<CAMetalDrawable>ます。

セットアップを構成するために 2 つの異なる方法を試しました。1つは、MTKViewを使用しCAMetalLayer、そのを使用しましたが、機能しませんでした。次に、NSView新しい を使用して作成しましCAMetalLayerた。それもうまくいきませんでした。奇妙な問題がありました。

他の誰かがこの問題を抱えていることと、これを解決するための解決策を誰かが知っているかどうかを知りたい.

追加メモ:
メソッドをオーバーライドして MTKView 描画システムを使用したくありません (まだ)。また、これは iOS 8 では問題ではなく、iOS 9 のベータ版リリースではコードを試していません (まだ)。

アップデート

MTKViewDelegateデリゲートを使用するようにドローアブル呼び出しを再ルーティングします。また、drawInViewデリゲート メソッドから、一貫性のあるドローアブル フレームを取得できました。ただしnextDrawable、メソッドを から直接使用したいと考えていますCAMetalLayer。これが他の誰かに役立つことを願っています。

4

3 に答える 3

0

@autoreleasepoolドローアブルでのレンダリングに使用します。

https://forums.developer.apple.com/thread/15102

于 2016-01-14T05:25:45.810 に答える
-1

これに戻るのを忘れていました。

fixedとありましたOSX Beta 4。メソッドは正しく機能しており、使用可能なオブジェクトnextDrawableを返しています。CAMetalDrawableこれを投稿する前に、リリース版が出るまで待つべきだったと思います。ベータ版が最初にリリースされたときに、この問題について他の人に知らせたかっただけです。

于 2015-09-19T17:40:42.720 に答える