【JAVA】2Dアクションゲームを作る【初級】at GAMEDEV【JAVA】2Dアクションゲームを作る【初級】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト174:名前は開発中のものです。 10/05/09 21:14:11 o2jE/Yfm もうハードウェアアクセラレーションが効く環境に変えちゃえばいいのに アホみたいに速いよw 175:名前は開発中のものです。 10/05/09 22:56:26 eCAtLDK5 >>168 カラーが24bitなら透過は8bitになってると思うよ そして全ての透過値が0xffか0x00しかなくても、8bitのアルファチャネルがあるのと同様のロジックが走る アクセラレーションが効いてなければ結構描画効率は落ちる マリオみたいなゲームなら1チップに255色以上使う必要性も少ないだろうし、 リソース合成時かゲーム起動時に減色して透過インデックスを指定するようにしたらどうかな 176:168 10/05/10 01:29:54 CH9wxDuw 皆さんありがとうございます。 http://javagame.skr.jp/index.php?%A5%A2%A5%AF%A5%C6%A5%A3%A5%D6%A5%EC%A5%F3%A5%C0%A5%EA%A5%F3%A5%B0 に書いてある、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に戻すことにします。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch