분류 전체보기

    키보드 입력(WM_KEYDOWN, WM_KEYUP)

    WindowsAPI를 이용하여 사용자 입력, 그 중에서 키보드 입력 처리를 하기 위해선 WM_KEYDOWN, WM_KEYUP 메시지 코드를 사용해야 한다.LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam){ switch(msg) { case WM_KEYDOWN: // 키가 눌렸을 때 처리 // 키에 대응되는 정수값 확인 cout WM_KEYDOWN은 키보드의 특정 키가 눌린 순간 발생하는 윈도우 메시지다. 이 때 입력된 키에 대한 값은 wParam에 정수형으로 전달된다. 따라서 입력된 키에 대응하는 정수값을 확인해보려면 wPa..

    윈도우 메시지 처리

    Windows API에서는 WNDPROC 콜백 함수를 통해 윈도우 운영체제에서 발생하는 모든 메시지(이벤트)를 처리할 수 있다. 시그니처는 다음과 같다.LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);hwnd: 메시지가 발생한 윈도우에 대한 핸들uMsg: 메시지 코드wParam, lParam: 메시지와 관련된 추가 데이터. 정확한 의미는 메시지 코드에 따라 달라진다.윈도우 프로시저(WindowProc) 함수는 hwnd가 관리하는 윈도우에서 어떤 이벤트가 발생하면 호출되는 콜백 함수다. 따라서 특정 이벤트/메시지를 처리하기 위해선 함수 내부에서 메시지 코드(uMsg)를 읽어 특정 동작을 수행하도록 만들어 주면 된..

    yaw, pitch, roll

    https://en.wikipedia.org/wiki/Aircraft_principal_axes 3차원 공간에 있는 물체를 회전시키는 경우, x축이나 y축처럼 특정 좌표축을 기준으로 회전한다고 표현하는 것도 가능하지만 yaw, pitch, roll을 기준으로 회전한다고 표현하기도 한다. yaw, pitch, roll은 비행중인 항공기가 3차원 공간에서 비행기의 축을 중심으로 자유롭게 회전하는 것으로부터 나온 이름이다.1. yaw yaw는 항공기가 좌우 방향으로 회전하는 것을 의미한다. 컴퓨터 그래픽스에서는 y축을 기준으로 회전하는 것과 동일하다.2. pitch pitch는 항공기가 상하 방향으로 회전하는 것을 의미한다. 컴퓨터 그래픽스에서는 x축을 기준으로 회전하는 것과 동일하다.3. roll roll은..

    림(rim) 효과

    레퍼런스: https://honglab.co.kr/courses/graphicspt2 림 효과(혹은 림 라이팅(lighting))은 3차원 공간에 있는 물체의 가장자리에 특정 색이나 빛을 강조하여 돋보이게 하는 기법을 의미한다. 림 효과가 적용된 물체는 보다 입체적으로 보이며, 배경과 잘 구분되는 특징을 가진다.림 효과를 적용하는 방법은 비교적 간단하다. 림 효과가 적용된 물체는 가장자리에 특정 색이 강조된다. 이는 곧 물체를 바라보는 관찰자의 시점과 물체의 노멀 벡터 사이의 각을 통해 림 효과를 통해 강조할 부분을 결정할 수 있다는 것을 의미한다. 노멀 벡터 n은 물체의 가장자리로 갈수록 물체의 버텍스에서 관찰자의 시점으로 향하는 벡터 e와 이루는 각이 커질 것이다. 이는 곧 ne를 ..