Problemas com código de Games no Eclipse

Galera preciso de ajuda já tentei de vários modos mais ainda continuo com problema no Eclipse, após eu colocar o meu código pedindo para abrir minha janela de Game e o looping ficar rodando no console com o FPS eu não consigo visualizar ele aparecendo no console. Aparece apenas a tela em branco do Game na tela e o console fica como se não tivesse nada para ele mostrar mesmo com os prints aparecendo.

Irei deixar o código aqui embaixo para que possam me ajudar nesta questão.

package graficos;

import java.awt.Canvas;
import java.awt.Dimension;

import javax.swing.JFrame;

public class Game extends Canvas implements Runnable{

public static JFrame frame;
private Thread thread;
private boolean isRunning = true;
private final int WIDHT = 160;
private final int HEIGHT = 120;
private final int SCALE = 3;

public Game(){
	this.setPreferredSize( new Dimension(WIDHT*SCALE, HEIGHT*SCALE));
	initFrame();
}
	
public void initFrame(){	
	
	frame = new JFrame("My First Game");
	frame.add(this);
	frame.setResizable(false);
	frame.pack();
	frame.setLocationRelativeTo(null);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setVisible(true);
}

public synchronized void start(){
	thread = new Thread();
	isRunning = true;
	thread.start();
}

public synchronized void stop(){
	
}

public static void main(String[] args){
	Game game = new Game();
	game.start();
}

public void tick(){
	
}
public void render(){
	
}

@Override
public void run() {
	long lastTime = System.nanoTime();
	double amountOfTicks = 60.0;
	double ns = 1000000000 / amountOfTicks;
	double delta = 0;
	int frames = 0;
	double timer = System.currentTimeMillis();
	while(isRunning){
		long now = System.nanoTime();
		delta+= (now - lastTime) / ns;
		lastTime = now;
		if(delta >= 1){
			tick();
			render();
			frames ++;
			delta --;
		}
		if(System.currentTimeMillis() - timer >= 1000){
			System.out.println("FPS: "+ frames);
			frames = 0;
			timer+= 1000;
		}
	}

}}

Olá @Nicolas_Oliveira1.

Acho que falta vc colocar a instancia runnable por argumento na thread, segue:


thread =  new Thread(this);

Aonde eu colocaria isso no codigo?

No seu metodo start, segue a linha do seu código:

public synchronized void start(){
	thread = new Thread(this); // <------- coloca o this como argumento aqui
	isRunning = true;
	thread.start();
}

Vou arrumar se der certo te aviso.

Funcionou muito obrigado Jacobo.