2012-02-24 7 views
1

私は透明なウィンドウを持っていて、そこに2D描画を行いたいと思います。透明なNSWindowでの2D図面

  1. クォーツ2D
  2. のOpenGL

私は全然クォーツ2Dとの経験がないと、私は思ったんだけど:私は2つの選択肢を検討しているは、それは私に、より良い性能を与えるでしょうか?私のシーンは、線、円、四角でできています。

答えて

2

シーンがダイナミックであるかどうかによって、パフォーマンスが向上するopenGLが使用されます。 Quartz 2Dを使用すると、コードを記述するのがはるかに簡単になります。しかし、あなたのウィンドウをリフレッシュする必要がある場合は、それはあなたの費用がかかります。

他のオプションは、CALayerを通じて両方を使用することです。これらのレイヤーは実際には、より速くレンダリングするためにOpenGLを使用していますしたがって、Quartz 2D(CAShapeLayer)を使用して内部を描画し、レイヤーを操作してシーンを動的に変更することができます。レイヤーを高級化すると、アーティファクトがあることに注意してください。したがって、この技術を使用すると、最大レイヤーサイズが得られます。

私は十分に役立ち、助けてくれることを願っています。

+0

あなたは本当にありがとうございました。私のアプリは非常にダイナミックで、私はすでに適切な結果(300-500fps)を与えてくれた過去のOpenGLでプログラムしましたが、誰かが私にもっと良いアイデアかもしれないと教えてくれました。 – Fatso

+1

あなたのための他の指示。私は黒いグラデーションの背景でグラデーションの境界線を描くために石英を使用していました。 iPadでのリサイズは遅れていた... – Ganzolo

関連する問題