글
SDL_PollEvent
프로그램에 이벤트가 발생하는지 검사하는 함수입니다. 이벤트가 발생하지 않는다면 저 루프는 동작하지 않고, 이벤트가 일어난다면 루프를 실행합니다. 아까도 말했지만, 이벤트는 사용자가 키보드를 누르거나, 마우스를 움직이거나, 마우스 버튼을 누를 때 발생합니다. 그리고 이벤트가 발생한다면, event 구조체 안에 있는 type으로 이벤트의 종류를 파악하고 그에 맞는 동작을 설계해주면 됩니다.
SDL_MOUSEMOTION
마우스가 움직일때의 이벤트
SDL_MOUSEBUTTONDOWN
마우스의 버튼이 눌렸을때의 이벤트
SDL_MOUSEBUTTONUP
마우스의 버튼이 눌린 상태에서 버튼을 뗐을 때의 이벤트
SDL_BlitSurface
그래픽 프레임버퍼로 이미지를 blit 하면 화면에 디스플레이할 수 있다. SDL_BlitSurface() 는 자동적으로 blit 사각형을 클립(clip)하는데, 이 blit 사각형은 SDL_BlitSurface()에 넘겨져 바뀐 화면의 영역이 갱신되도록 한다.
SDL_SetVideoMode
SDL_Surface *SDL_SetVideoMode(int width, int height, int bpp, Uint32 flags);
인자로 설정한 가로 / 세로 / 비트수에 맞는 표면을 만들어 냅니다.
만약 bpp 값이 0이면, 현재 모니터로 출력되고 있는 화면에 맞는 비트수를 이용합니다.
SDL_SWSURFACE - 시스템 메모리에 표면을 생성 합니다.
SDL_MapRGBA
SDL_MapRGBA(SDL_PixelFormat *fmt, Uint8 r, Uint8 g, Uint8 b, Uint8 a)
SDL_Pixelformat은 표면의 컬러 비트수와 각 비트 별로 떨어져 있는 값 들이 저장되는 특수한 구조체로, 모든 표면은 format 이라는 멤버 변수로서 가지고 있습니다.
SDL_Rect
SDL_Rect(x, y, w, h)
x, y : 사각형의 좌측 상단 위치 저장
w, h : 사각형의 가로/세로 크기 저장
SDL_Rect는 픽셀로 된 사각형 영역을 저장 하기 위해 정의 되었습니다. 이는 SDL_BlitSurface 함수에서 사용되어지며, 영역 전송이나 다른 비디오 함수에서 사용되어 집니다.
'P rogramming > C Language' 카테고리의 다른 글
Malloc(동적 메모리 할당) vs Array(배열) (0) | 2011.06.01 |
---|---|
전처리기 (0) | 2011.04.19 |
바이트 순서 변환 함수 (ntohl, ntohs, htonl, htons) (0) | 2011.04.13 |
execl(), execv() - 프로세스 생성 (3) | 2011.04.05 |
fork() - 프로세스 생성 (1) | 2011.03.28 |
RECENT COMMENT