direct3d 11
-
GPU Query개인 프로젝트 2024. 9. 19. 22:29
목차개요사용법Direct3D 11객체 생성질의 방법질의 결과 얻기Direct3D 12객체 생성질의 방법질의 결과 얻기GPU TimerDirect3D 11Direct3D 12Hardware Occlusion CullingDirect3D 11Direct3D 12가시성 판단오클루전 검사 렌더링마치며Reference개요이 글에서는 Direct3D 11/12로 구현된 샘플을 통해 Query(이하 쿼리) 객체의 사용 방법과 예시를 살펴보도록 하겠습니다. 쿼리 객체는 Graphics API에서 GPU 정보를 질의하기 위해 제공하는 객체로 이를 통해 여러가지 GPU 정보를 얻을 수 있습니다. 이 글은 Direct3D만을 다루지만 Vulkan이나 Metal과 같은 다른 Graphics API에서도 GPU 정보 질의를 위..
-
오브젝트 피킹 (Object Picking)개인 프로젝트 2024. 7. 13. 22:21
목차개요구현 방식객체에 Id 부여Id 렌더링객체 선택마치며개요게임 엔진의 에디터 등에서 화면에 표시된 게임 객체를 선택할 때 사용하는 Object Picking을 가볍게 살펴보도록 하겠습니다. 여기서 소개할 방식은 언리얼 엔진의 HHitProxy를 통해 구현된 방식으로 여기서는 제 개인 프로젝트의 코드를 통해서 간략화된 구현을 살펴보겠습니다.구현 방식우선 아주 고전적인 Object Picking 구현 방식을 살펴보겠습니다. 해당 방식은 다음과 같은 순서로 진행됩니다.마우스의 X, Y 위치를 얻어서 카메라 공간의 좌표로 변경.카메라의 위치에서 마우스의 카메라 공간 좌표를 향하는 광선을 생성해당 광선으로 게임 객체에 대한 충돌 검사광선에 충돌한 객체를 거리순으로 정렬하여 가장 가까운 객체를 선택옛날부터 널리..