我想在GameCanvas上画多个动态子画面,比如枪击。
我有两个主要的类:GameCanvas
和GameController
GameController
拿着我的枪击的矢量
GameCanvas可以访问GameController
的雪碧向量,它还有一个在屏幕上绘制雪碧图的render()
方法。
private void render() {
Graphics g = getGraphics();
layerManager.setViewWindow(0, 0, getWidth(), getHeight());
layerManager.paint(g, 0, 0);
flushGraphics();
}
LayerManager保存了我想画的所有雪碧图。
如何在屏幕上绘制GameController
矢量中的所有对象?
发布于 2013-03-13 16:29:47
我认为可以这样做:
Graphics g = getGraphics(); // No need to get this each time you render. Get it once outside the render function
private void render() {
layerManager.setViewWindow(0, 0, getWidth(), getHeight());
layerManager.paint(g, 0, 0);
// Loop through the vector
for (Enumeration en = gunshotVector.elements(); en.hasMoreElements();) {
((Sprite)en).paint(g);
}
flushGraphics();
}
https://stackoverflow.com/questions/15377945
复制相似问题