cocoa - Mac Dev - 如何刷新 2d 游戏的 View ?

标签 cocoa macos 2d redraw

如果你看到我的other question ,你就会知道我开始尝试在 Mac 上制作简单的 2D 游戏。在那里我决定使用哪个库(OpenGL 或 Quartz),但无论如何我都必须使用 Cocoa 来使其成为一个漂亮的 Mac 应用程序,以及窗口和 View (使用 OpenGL、NSOpenGLView)。显然,对于游戏来说, View 每秒必须重绘多次。要进行 View 重绘,您需要执行[view setNeedsDisplay:YES];,但我读到您不应该多次执行此操作(因为它的成本很高)。但是我应该如何重绘 View ,例如对于 2d 游戏来说,帧率合理吗?谢谢。

最佳答案

“只有在必要时才重画”的规则并不真正适用于游戏。游戏通常会尝试以显示器的刷新率或尽可能接近该刷新率来重绘。

本页介绍了如何在cocoa中进行OpenGL渲染循环:http://developer.apple.com/mac/library/qa/qa2004/qa1385.html

关于cocoa - Mac Dev - 如何刷新 2d 游戏的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1759927/

相关文章:

java - 2D 平铺相机?

objective-c - Cocoa、免费桥接和 ARC

macos - 无法在 Xcode 9 中为 macOS 应用测试应用内购买

macos - ScrollView 中的 NSMatrix;原点设置已锁定。为什么?

c++ - macOS 中/proc 是否有替代方案?

c++ - MacOS 上的 Qt .nib 问题

iphone - iPhone 的 Sprite 表生成器?

c++ - 如何在 C++ 中处理一个非常大的二维数组

macos - Mac OS X 检查是否安装了闪存

cocoa - 设置 Action 名称 : method purpose for NSUndoManager class