2016. 12. 1. 11:28
* 더블 버퍼링
- 화면에 보여줄 버퍼와 내부 작업에 사용할 버퍼를 따로 유지
- 내부 버퍼에 미리 그림을 그린 후 화면 버퍼로 고속 전송
- 그리는 중간 과정을 숨겨진 내부 버퍼에서 처리
- 더블 버퍼링에 사용되는 내부 버퍼는 구체적으로 메모리 영역인데
이 메모리의 영역은 외부 버퍼, 즉 화면의 포맷과 호환되어야 한다
- 그래야 내부 버퍼에 그린 그림을 별도의 조작없이 외부 버퍼로 고속 전송 가능
- 윈도우즈에서는 내부 버퍼를 메모리에 직접 작성할 필요가 없는데
왜냐하면 비트맵이 내부 버퍼 역할을 멋지게 대신함
- 화면 DC 와 호환되는 비트맵(색상 포맷이 같고 크기가 동일)을 생성한 후
이 비트맵에 그림을 긜면 비트맵 자체가 내부 버퍼 역할을 함
- 비트맵에 그려진 화면을 전송할 때는 BitBlt 함수 사용