【问题标题】:2D Drawing on Transparent NSWindow透明 NSWindow 上的 2D 绘图
【发布时间】:2012-02-24 08:46:28
【问题描述】:

我有一个透明的窗口,想在里面做 2D 绘图。我正在考虑两种选择:

  1. 石英二维
  2. OpenGL

由于我完全没有使用 Quartz 2D 的经验,我想知道:它会给我带来更好的性能吗?我的场景是由线条、圆形和正方形组成的。

【问题讨论】:

    标签: cocoa opengl drawing quartz-graphics objective-c-2.0


    【解决方案1】:

    这取决于您的场景是否是动态的,我会使用性能更好的 openGL。在编写代码方面,使用 Quartz 2D 可能会更容易。但是,如果您需要花费大量时间来刷新窗口。

    另一种选择是通过 CALayer 使用两者。这些层实际上是使用 openGL 来加快渲染速度。因此,您可以使用 Quartz 2D (CAShapeLayer) 在内部进行绘制,然后操作图层以动态更改场景。请记住,如果你升级你的图层,你会有伪像。因此,使用此技术将为您提供最大层大小。

    我希望我已经足够清楚和有帮助了。

    【讨论】:

    • 您的表述清晰且乐于助人,谢谢。我的应用程序非常动态,过去我已经在 openGL 中对其进行了编程,这给了我足够的结果(300-500fps),但有人告诉我 Quartz 可能是一个更好的主意,我想了解更多。
    • 对您的另一个指示。我正在使用石英绘制带有黑色渐变背景的渐变边框。在 iPad 上重新缩放滞后...
    猜你喜欢
    • 1970-01-01
    • 2020-08-17
    • 2014-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-19
    • 1970-01-01
    相关资源
    最近更新 更多