5

我正在开发自己的名为 FGame 的游戏引擎,但我遇到了这个真正困扰我的图形错误,我不确定问题出在哪里。对于图形,我使用了一个自定义的 Image 类,它有一个二维像素数组来存储它的数据。我还有一个screen类,它扩展了Image类,通过BufferedImage java类,利用屏幕的像素数据绘制到JFrame。

如果我正在绘制图像并在屏幕上移动它,则会出现一个图形错误,它会使屏幕上某些位置的垂直线中的像素变形。

这是显示我要描述的错误的视频:http ://www.youtube.com/watch?v=MnGCuHW5neI ,这里是源代码的链接:https ://github.com/Frechetta/FGame .

4

1 回答 1

1

谢谢@arynaq 和@Max 帮助我解决我的问题。我会为遇到此问题的其他人发布我的旧代码和新代码。

旧代码:

frame = new JFrame(nameA);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new BorderLayout());
frame.add(this, BorderLayout.CENTER);
frame.pack();
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);

新代码:

frame = new JFrame(nameA);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(null);
this.setSize(getPreferredSize());
frame.add(this);
frame.pack();
frame.setSize(getPreferredSize());
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
于 2013-07-30T07:51:58.117 回答