사실 이 프로그램 명칭을 잘 모르겠다

사람의 눈으로는 보이는 물체와의 거리에 따라 크기가 작고 크게 보이게 된다. Direct3D 도 그렇게 처리하리라 생각하고 있었는데 좀 다른 것 같다.. 예를 들어 카메라가 있고 그 카메라가 보는 방향에 수직인 평면이 있어서, 공간상의 한 물체는 카메라와 어떤 거리만큼 떨어진 평면 위에 위치하게 된다.. 그리고 그 물체는 카메라와 그 물체가 포함된 평면 사이의 거리에 의해 크기가 변형된다. 이게 얼마나 사람이 보는 영상과 차이가 있고 내가 구현한 방식이 사람의 눈과 더 가까운지는 모르겠다.. 오히려 지금 Direct3D의 방식이 더 자연스러워 보일 수 있다.
어찌됐든 카메라로 영상을 찍으면서 생기는 굴곡을 따라 하기 위해 구현한 프로그램이다.

'컴퓨터 프로그래밍 > Direct3D' 카테고리의 다른 글

[C# + MDX 프로그래밍] HLSL  (0) 2008.12.17
3DS Viewer 만들기 (미완성)  (0) 2008.10.30
Posted by orange code
컴퓨터 프로그래밍2009. 11. 17. 19:52

image

최근 간단한 3D 프로그램을 제작하면서 마우스 휠로 확대/축소 할 수 있는 기능을 넣으려 했다.

……
case WM_LBUTTONUP:
    ReleaseCapture();
    bPressed = false;
    break;

case WM_MOUSEWHEEL:
    break;             (** 여기에 브레이크 포인트 **)
……

기능을 넣기 전에 메시지 파라미터 값을 확인하기 위해 대충 코드를 넣고 브레이크 포인트를 걸어놨는데 휠을 아무리 굴려도 비주얼스튜디오는 반응이 없다. 디버그 모드라 최적화는 안 됐을 테고 디어셈블리로 봐도 분명히 코드가 있는데..  구글에서 WM_MOUSEWHEEL 메시지를 받을 수 없다는 질문들과 답변을 봐도 해결책이 안 보인다. 이상하다 싶어 스파이로 확인해보니.. 메시지가 잘 가네?.. 혹시 하고 메시지박스 하나 넣어보니.. 잘만 뜬다  아씨

Posted by orange code

참 별거 없음.. 대충 오늘 한 거 사인 음파 출력하기~

일단 DirectSound는.. DirectX의 한 요소이고 사운드 입력 출력을 담당합니다..

DirectX는 요새 11버전까지 나왔지만 DirectSound는 8이 최신이네요

XAudio라든가 다른 것들이 있는 듯 하지만 전 잘 모르기 때문에.. 패스

과정은 매우 쉽습니다..DirectSound객체를 만들고 사운드버퍼를 쓸 만큼 만들어서

원하는 시간에 재생시켜주면 끝입니다..

소스

Posted by orange code