2016-12-12 4 views
-1

그래서 저는 자바에서 보드 게임의 아주 기본적인 프로토 타입을 만들려고합니다. 게임 자체의 보드에 대한 뷰는 기본적으로 인물 및 기타 요소 만 표시하며,이 뷰와 전혀 상호 작용할 방법이 없으며 스윙으로 프로그래밍되는 다른 뷰가 있으며 게임과 상호 작용하는 데 사용됩니다 . 나는 스윙을 사용하여 레이어 보드가있는 게임 보드와 같은 체스 보드를 제작해야합니까? 그렇지 않으면 오히려 오래된 awt 캔버스를 사용해야합니까? 과잉 살상을 피할 수있는 다른 후보가 있습니까?Java의 간단한 보드 게임을위한 캔버스 또는 스윙?

스윙은 여전히 ​​얻을 수있는 방법 일 것이라고 생각합니다. 다른 레이어가있는 몇 개의 이미지를 보여주는 무언가로 사용하기에 직관적 인 것처럼 보입니다.

+0

스택 오버플로에 오신 것을 환영합니다! Stack overflow에 대해 책, 도구, 소프트웨어 라이브러리, 튜토리얼 또는 기타 오프 사이트 리소스를 추천하거나 찾도록 요청하는 질문은 논쟁의 여지가있는 답변 및 스팸을 유치하기 쉽습니다. 대신, [문제 설명] (http://meta.stackoverflow.com/questions/254393) 및 지금까지 해결 된 사항은 무엇입니까? –

+0

Swing 및 AWT 구성 요소를 부주의하게 혼합하면 [예기치 않은 결과]가 발생할 수 있습니다 (http://www.oracle.com/technetwork/articles/java/mixing-components-433992.html). – trashgod

+0

(나는 downvote하지 않았다, 그러나) 질문은 아주 특이하지 않다. 'Canvas'와'JPanel'의 차이점은 무엇을 어떻게 구현하는지에 대해서는 무시할 수 있습니다. 쓰레기가 언급 한 점 때문에 Swing에서 Canvas를 거의 사용하지 않아야합니다. 일반적으로 JPanel에서 사용자 정의 페인팅을 수행합니다. 그러나 실제 페인팅 코드는 기본적으로 동일합니다. Swing에서 멋진 팬 계층을 사용하지 않아도됩니다. 캔버스 에서처럼 JPanel을 그릴 수 있습니다.) – Marco13

답변

0

게임에는 게임 루프가 있어야하므로 스윙은 게임을하는 가장 좋은 방법이 아닙니다. CanvasThread 또는 인 JPanel을 사용하십시오.

+1

동의 할 지 모르겠다. 기본적으로 보드 게임의 프로토 타입이기 때문에 애니메이션이 필요 없으며 이사회가 바뀔 때까지 꽤 오래 걸린다. – user3839833

+0

OP가 애니메이션으로 보드에서 실시간 전략 게임을 만들고 싶어한다면 아마도 그렇습니다. 그렇지 않다면 게임 루프를 구현하는 것은 과도한 행동 일 것입니다. – user3437460

관련 문제