전체 글

컴공과 학부생의 이야기
·Graphics
해당 값 오류는 두 번째 Render()를 할 때 발생하였다. Viewport를 설정할 때 발생한 오류로 파악되었다. 왜 두번째 Render()를 할 때 발생하였는지도 알 수 있었다.engine->SetSceneViewportData(sceneViewportData);engine->Run();engine->GetCamera()->SetAspectRatio(sceneViewportData.GetWidth() / sceneViewportData.GetHeight());engine->GetBackbufferRTV()->Clear(engine->GetDeviceContext(), clearDarkBlue);내 코드에서 engine->Run()을 하고나서..
·Graphics
shadow mapping을 위해 DSV resource를 SRV에 바인딩하여 작업을 진행하였다. 다만 문제가 발생한 부분은 물체의 깊이 값을 비교할 때 발생하였다. Shadow Mapping을 통하여 그림자를 그리는 원리는 단순한다.1. Shadow Viewport로 설정하여 Shadow Mapping을 위한 '조명' 시점의 Depth Map을 그린다.2. 그린 Depth Map을 Lighting HLSL에 연결한다.3. 가져온 [1] Depth Map의 깊이값과 [2] 현재 Lighting을 그리고 있는 물체의 '조명' 시점에서의 깊이 값을 비교한다.4. 만약, 현재 그리고 있는 물체의 '조명' 시점의 깊이 값이 클 경우 그림자를 인식한다. 이것은 Depth Map을 그릴때 조명이 물체 뒤에 가려진 ..
·Graphics
참고https://github.com/SanderMertens/ecs-faq?tab=readme-ov-fileECS에 대한 기본 지식ECS는 OOP와 어떻게 다른가?OOP에서 가장 중요한 것은 Inheritance(상속)인 반면, ECS에서 가장 중요한 것은 Composiotion(구성)이다.OOP는 데이터의 캡슐화를 추구하고 ECS는 POD(plain old data) 객체를 보여주는 것을 추구한다.OOP는 behavior와 함께 데이터를 같이 두는 것을 중시하고 ECS는 behavior로부터 데이터를 분리하는 것을 중시한다.OOP 객체 인스턴스는 단일 정적 타입이지만, ECS의 entities는 다중 타입을 가지며, dynamic하게 변화하는 components를 가질 수 있다.ECS와 Entity-..