如何制作图像动画?

4

我计划制作一个动画角色(角色的图像会多次改变,使其看起来像是在移动),我想知道最好的方法是什么。我目前计划做这样的事情:

String fileLocation = "./images/picture";
BufferedImage img;
int numImages = 10;

for(int i = 0; i < numImages; i++){
    img = ImageIO.read(new File(fileLocation + i + ".png"));
    Thread.sleep(100);
    g.drawImage(img, 0, 0, null);
}

这只是一个极其简化的版本,有一些东西被省略了,但我相信你明白我的意思。这种方法存在什么问题吗?(注意:for循环在完成后会立即重复,"images"文件夹中会有名为"picture0.png"、"picture1.png"等的文件)
1个回答

4
如果图片不是特别大,也不需要占用太多内存来存储它们的话,我会先读取并缓存这些图片。当需要展示它们时,我会从内存中读取,而不是从磁盘上读取。

1
我该如何执行此操作?在程序启动时创建图像的 BufferedImage 对象? - user2170842
好的,谢谢。我会将所有加载的图像存储在一个数组中并进行绘制。 - user2170842

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接