목록DirectX2D (55)
응애맘마조
※ 3D에서는 X, Y, Z값을 사용하지만 2D에서는 Z값이 없지만 DirectX 사용 시 2D에서도 Z값을 사용하기 때문에 2D로 개발을 하기 위해서는 Z값을 0으로 두고 하게 됩니다. 강사님이 바뀌고 제대로 수업이 들어갔습니다. DirectX에 들어가기 앞서 다시 API로 돌아갔습니다. API는 스크린 좌표로써 X값은 왼쪽으로 갈수록 커지고 Y값은 아래로 내려갈수록 커집니다. 먼저 선을 그리고 필요한 사람은 사각형이나 원을 그려서 위치를 이동하고 상하좌우로 늘리는 작업을 했었습니다. 작업을 하기 위해서는 WM_PAINT 함수 안에 그리면 됩니다. 직접적으로 코드 내용은 들어가지 않지만 오늘 했던 강의의 핵심은 Transform(변환) 이었습니다. 작업 내용 깃허브 : https://github.com..
전에 말씀드렸던 대로 오늘 강사가 바뀌었습니다. 오늘은 오리엔테이션 식으로 계획이나 강의 진행 방향 등 앞으로의 진행방식에 대해 말하고 끝났습니다. 내일부터는 정식으로 수업이 들어가게 될 텐데 그때 또 내용이나 코드에 대해 적고 설명할 수 있도록 하겠습니다. 그렇다 보니 오늘은 글이 짧습니다. 읽어주셔서 감사합니다.
D3DXMatrixLookAtLH(&view, &Vector3(0, 0, 0), &Vector3(0, 0, 1), &Vector3(0, 1, 0)); D3DXMatrixOrthoOffCenterLH(&proj, 0.0f, (float)WinMaxWidth, 0.0f, (float)WinMaxHeight, 0, 1); 어제 해결되지 못했던 문제가 있었습니다. 디렉터리 설정에 문제가 있었습니다. 그러면 해결 됩니다. 오늘은 드디어 출력이 되는 날입니다. //GUIDemo.h #pragma once #include "stdafx.h" class GUIDemo : public IObject { public: virtual void Init() override; virtual void Destroy() overr..

오늘 강의를 작성하기 전에 오타 난 부분을 알려드리겠습니다. //VertexBuffer.h count = vertices.size(); //Rect.h vector indices; Matrix world; Matrix S, R, T; VertexBuffer.h 파일의 코드에 오타가 있었습니다. (해당 일자의 내용에서는 수정했습니다.) Rect.h 파일에서 vector 부분과 Matrix를 D3DMATRIX라고 잘못 쓴 부분이 있었습니다. (해당 일자의 내용에서는 수정했습니다.) 거의 스크린 창에 띄우기까지 다 왔습니다. Unitest 솔루션에도 많은 작성이 있었습니다. 오늘 내용을 정리하겠습니다. //VertexColor.hlsl struct VetrtexInput { float4 position : P..

오늘은 수학에 대한 개념을 배웠습니다. 아직 정확하게 다 배우지는 않았지만 3D를 하거나 조금 더 나중에 자세하게 배우게 될 예정입니다. 먼저 수학부터 보겠습니다. 좌표에서 스크린까지 나오는 순서는 로컬 좌표 → 월드 좌표 → 뷰 좌표 → 프로젝션 → 스크린 순서입니다. 로컬 좌표는 플레이어 기준으로 아래쪽 가운데 좌표를 (0, 0)으로 잡은 것입니다. (오른쪽은 Right 벡터, 앞은 Look 벡터(3D에서 사용), 위로 가는게 Up 벡터입니다.) 로컬 좌표를 월드 좌표로 변환하기 위해서는 SRT(Scale, Rotation, Translation)을 계산해야됩니다. 위 그림을 현재의 행렬이라고 나타내겠습니다. 먼저 Scale은 크기를 나타냅니다. 해당 표시는 Scale의 행렬입니다. Rotation은..