Javaアプリケーションの質問を失礼します。
画面に描画した図形がちらついてしまいます。
下のコードでは四角と丸を移動させていますが、移動中に斜めに割れるようなチラツキをします。
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferStrategy;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
public class GameMain extends JFrame{
//ウィンドウサイズ
private final int windowW = 640;
private final int windowH = 480;
//マルチバッファリングをしようとしています
BufferStrategy strategy;
//簡単に動かすために作った変数
int i = 100;
int t = 0;
boolean f = true;
//コンストラクタ
GameMain()
{
setTitle("AboutGame");
setSize(windowW,windowH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
setResizable(false);
//マルチバッファリングをしようとしています
setIgnoreRepaint(true);
createBufferStrategy(2);
strategy = getBufferStrategy();
}
public void Render()
{
Graphics2D g = (Graphics2D)strategy.getDrawGraphics();
//簡単に動かしてます
if(i <= 100)f = true;
if(i >= 600)f = false;
t++;
if(t == 10)
{
if(f == false)i-=1;
if(f == true)i+=1;
t = 0;
}
g.setColor(Color.black);
g.fillRect(0, 0, windowW, windowH);
g.setColor(Color.white);
g.fillRect(i,200, 64, 64);
g.fillOval(i, 300, 64, 64);
g.dispose();
strategy.show();
}
public static void main(String[] args)
{
GameMain gm = new GameMain();
while(true) gm.Render();
}
}
http://www.gamesite8.com/archives/615401.html
http://lecture.ecc.u-tokyo.ac.jp/~ktana ... s/2-5.html
http://aidiary.hatenablog.com/entry/20070502/1251466876
チラつきの除去、正しい描画の仕方のご教授お願いします。
[2] 環境
[2.1] OS : Windows7 x64
[2.2] Jave 1.7
[3] その他
Javaはほぼ素人です。
他の言語もDXライブラリを使ってC++で簡単なアクションゲームを作ったことがある程度です。