10/05/10 01:29:54 CH9wxDuw
皆さんありがとうございます。
URLリンク(javagame.skr.jp)
に書いてある、repaint()を使わないで描画する方法(アクティブレンダリング)というのをやってみたら大分カクカクが収まりました。
>>173
すいません、勉強不足で仰られていることの意味がわからないんでコード晒します。
>>168からいろいろ変えてみて、今現在、
Image img = Toolkit.getDefaultToolkit().getImage(getClass().getResource(filename));
MediaTracker tracker = new MediaTracker(this);
tracker.addImage(img, 0);
try {
tracker.waitForID(0);
} catch (InterruptedException e) {
e.printStackTrace();
}
BufferedImage bimg= new BufferedImage(img.getWidth(null),img.getHeight(null),BufferedImage.TYPE_4BYTE_ABGR);
Graphics g = bimg.createGraphics();
g.drawImage(img,0,0,null);
でpng画像をbimgに読み込んだ後、drawImageでオフスクリーンバッファに描画してます。
画面への転送方法は先程も書きましたがrepaint()を使わない方法に変えてみました。
あと、画像を最初にBufferedImageで読み込んでいても、チップは分割しておいたほうがいいですか?
>>174 すいません、軽く調べましたがなんか難しそうなので諦めます。
>>175 そうなんですか。うーん、どうしてもフルカラーでいきたいんですよね…。無理そうならgifに戻すことにします。