http://bgashin.tistory.com/127

 

 

 

 

UX - 유저 경험 기반의 인터페이스 작성.
유저들이 경험한 장점, 단점을 가져와서 UI를 만드는 작업이다.
이것에 관련된 연구가 한창 진행중이며, 책들도 나오고 있다. 게임에 이것을 사용하는 것은 매우 중요하다.

시계 바늘과 눈금이 어긋남
- 3.14대신,  표준 원주율을 써서 구한다.
#define _USE_MATH_DEFINES
#include <math.h>
M_PI를 3.14대신에 쓴다.
 



WM_KEYDOWN:
키보드가 눌러졌는지 상태 값만 본다. Ex)A를 눌렀으면 눌렀다는 값만ㄷ ㅡㄹ어옴
WM_CHAR:
문자를 받는다.
이 부류는 게임에서 잘 안쓴다. 쓰는 공간이 한정되어 있고, 뗏다 눌렀다를 체크가능하기 때문이다.
----------
하지만 게임에서는 얘네들 보다는 GetAsyncKeyState를 쓴다.
눌렀는지, 뗐는지, 누른중인지 체크한다. 아무곳에서나 체크 할 수 있다.
#define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000 ? 1 : 0))
#define KEYUP(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000 ? 0 : 1))

Wparam은 어떤 값이 들어오있는지 lparam은 상태
마우스 x는 하위비트 lparam
마우스 y는 상위비트 lparam
버튼에는 wparam 값을 넣고 Button & MK_SHIFT 쉬프트 눌린상태로 버튼이 눌러졌느냐?

더블유엠페인트에서 겟디시쓰면 안되는 이유. 페인트는 반다 그렸다는 반환값을 돌려주지만 겟디씨는 반환값이 없어서 무한루프를 돈다.
 

반응형

+ Recent posts