실행할 Main클래스에 멤버로 게임화면 크기를 설정해준다.
모든 객체가 공유할 수 있도록 public static로 선언하고 바뀌지 않도록 final로 해준다.
실행할 수 있도록 main을 만들어주고 DynamicBeat()생성자를 호출한다.
다른 버전으로 만들 수 있도록 패키지를 1,2,로나누어 준다. 그리고 게임을 만드는 DynamicBeat클래스를 만들어준다.
먼저 윈도우화면에 보일 수 있도록 이미 존재하는 라이브러리 JFrame을 상속해준다.
멤버로 이미지를 넣을 수 있는 Image와 그릴 수 있는 Graphics를 선언해줍니다.
그 다음 생성자를 만들어줘야 한다.
먼저 몇가지 정해줘야 하는데 이름, 사이즈, 사이즈 조절여부, 화면이 나타날 위치, 그리고 중요한 게임창을 종료할 때 같이 프로그램이 종료되는 setDefaultCloseOperation를 이용해주어야한다. 그 다음 만든 것을 볼 수 있도록 setVisible를 해준다.
그 다음 Image의 객체인 introBackground에 images폴더에 넣은 이미지의 리소스를 가져와서 넣어준다.
이미지를 받아오면 그려야지 볼 수 있다. 그래서 paint함수를 사용할 수 있도록 Graphics를 인자로 받아온다.
위에서 선언한 screenImages에 프로그램 크기만큼 이미지를 생성해 넣어주고
그 이미지를 그릴 수 있도록 Graphics 객체에 넣어줍니다.
그러면 그걸 그리는 메소드 screenDraw에 넣어줍니다. 그러면 그 이미지를 그려줍니다.
그리고 그걸 선택한 좌표에다가 그려줍니다.
여기서 this.repaint()를 사용하는 이유는 전체화면 이미지를 매순간마다 프로그램이 종료될 때까지 계속 반복하면서 그려주려고 하기 때문이다. 그러면 buffer에 이미지를 담았다가 바로 호출하기 때문에 속도가 빠르고 버퍼링 현상이 줄어들 수 있다.
'[Java]' 카테고리의 다른 글
자바 익명클래스 실습 (0) | 2021.09.10 |
---|---|
자바 개념(익명클래스) (0) | 2021.09.10 |
자바로 리듬게임 따라 만들기 3 (JButton)이용하기 (0) | 2021.09.09 |
자바로 리듬게임 만들기 2 (Thread를 통해 음악 재생) (0) | 2021.09.07 |
업캐스팅 ,다운캐스팅 ,Instanceof (0) | 2021.09.03 |
댓글