나는 graphics2D 구성 요소를 화면 밖으로 페인트 한 다음 일부만 가져 와서 실시간 업데이트 이미지를 화면에 표시하려고하므로 버퍼링 된 이미지가 길어집니다.페인트 graphics2D 오프 스크린? 그런 다음 화면에 표시합니다.
0
A
답변
1
JPanel에 setDoubleBuffered(true);
을 사용하십시오. 화면을 보지 못했을 때 JPanel에 표시됩니다. 이것을 사용하면 검정/도색되지 않은 프레임이 더 이상 표시되지 않습니다.
1
MultipleBuffering의 그래픽 개념은 물론 BufferCapabilities (및 관련 클래스)을 살펴보십시오.
또한 느린 BufferedImage가 아니기 때문에 렌더링 파이프 라인에서 사용 가능한 하드웨어 가속을 사용하거나 사용하지 않습니다.
우연히 게임이나 자바에서 하드웨어 가속을 이용하는 고속 렌더링이 필요한 다른 앱을 만드는 중이라면 잘 처리 할 수있는 라이브러리로 시작하는 것이 좋습니다. Slick2D과 같은 세부 정보가 나와 있습니다. 당신이 Slick2D에 대한 다른 정말 좋은 일들
하나 (성능면에서) 무엇을 기대할 수 있는지 보여
- Getting started with Slick2D는 크로스 플랫폼이 있다고하고, 소요 실제 렌더링 파이프 라인이 플랫폼, JVM 버전 및 하드웨어 (Java에 노출 된 사용 가능한 기능에 따라 다름) 사이에서 변경되기 때문에 렌더링 성능 세부 사항을 신경 써야합니다. 당신이 스스로 알아 내려고하지 않으려는 시행 착오를 빅 타임 싱크대.
LWGJL (Slick2D의 그래픽 성능을 가능하게하는 라이브러리)은 기본적으로 Java2D를 완전히 회피하여이를 가능하게합니다. 깊은 곳을 파고 싶다면 흥미로운 독서가 있습니다.
정보 및 링크를 제공해 주셔서 감사합니다. 1+ –