我正在使用 gtkmm 和 cairo 制作平台游戏,但我找不到将图像设置为背景的方法,因此我不必在每次绘制事件时重新绘制它。我将图像作为 pixbuf 进行管理。 这真的可能吗,还是我认为错了?
最佳答案
重画事件总是必要的。区别在于谁必须照顾它们。较低级别的图书馆(例如开罗)要求您这样做。
也许你应该看看Goocanvas 。特别是对于需要轻松移动物体并捕获事件的游戏,比 Cairo 更高级别的库会很方便。 GooCanvas 还可以处理屏幕重绘。
您可以直接使用 GooCanvasImage 放入图像,然后就不用管它了。
如果您未绑定(bind) C++,请查看 PyGame对于 Python - 它不仅处理这些事件,还提供大量其他游戏编程工具。
关于c++ - 将图像设置为 DrawingArea 的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37891979/