전체 글328 3. 연조직과 뼈 구분하여 Volume Rendering 연조직과 뼈를 구분하기 위해 첫번째로 LUT Texture를 만들었습니다.LUT Texture는 Texture1D 형태로 구현되며 초기값으로 Look-up table이 들어가게 됩니다.Look-up table을 SRV로 만들어 볼륨이 렌더링될 때 픽셀 셰이더로 넘기면, 픽셀 셰이더에서 볼륨을 렌더링할 때 밀도값을 이용하여 Look-up table을 샘플링하고, 그 값은 최종 색상에 반영됩니다. - On / Off 기능 구현을 위해 상수버퍼의 구성을 조금 수정하였습니다.- 16바이트 패딩에 의해 기존에 float fDummy[2]가 있었던 자리에, int형식의 플래그 2개를 만들었습니다.- Raycast Shader는 이 버퍼를 들고 있다가, 사용자가 G키나 H키를 누르면 이 값을 업데이트하고 다시 GPU.. 2025. 2. 25. 2. Input 및 Camera 구현 1. 키보드 및 마우스 입력 구현형식 자체는 기존에 게임 개발 시 직접 만들었던 프레임워크를 참고하되, 현재 렌더러 프로젝트에 맞게 변형하여 사용하였습니다.- 입력값을 어디서든 사용할 수 있도록 싱글톤 패턴으로 구현하였습니다.- 키보드 및 마우스 입력을 구현함으로써 입력에 대한 처리를 수행할 수 있게 되었고, 다음에 구현할 카메라 클래스가 해당 기능을 사용하게 됩니다. 2. 카메라 클래스 구현- 카메라에서는 뷰행렬 및 투영행렬을 만드는 역할을 합니다.- 따라서 멤버변수로 변환행렬을 만들기 위한 변수들을 들고 있습니다.- 굳이 클래스로 뺀 이유는 카메라의 월드행렬을 만들고 용이하게 관리하기 위함입니다.- 카메라를 객체로 둔다면 카메라의 월드행렬의 역행렬을 통해 간단히 뷰행렬을 구할 수 있는 이점도 있을 뿐.. 2025. 2. 23. 1. Volume Rendering 1. Volume Rendering이란?- 3D 공간에서 정의된 Volume Data를 시각적으로 표현하는 렌더링 기법- 게임 프로그래밍에서 쓰이는 표면 기반 렌더링과는 다르게, 3D 공간 상 밀도 값을 가지는 볼륨 데이터를 직접 렌더링- 일반적으로 Voxel 형태로 표현되며, Voxel Data는 밀도, 색상 등의 속성 값을 가집니다. 2. 구현 방법- DirectX11 기반으로 구현 (OpenGL 등 다른 그래픽스 라이브러리로도 구현 가능합니다)2-1. Front Texture 생성2-2. Back Texture 생성2-3. 최초 Render Pass에서 Front Texture를 Render Target으로 설정한 후, Front Face Culling의 RasterizerState를 설정2-4. .. 2025. 2. 18. 23. Lyra Animation 정리 - 1 어제 작성했던 Animation에 대해 정리해보려고 합니다.Animation은 총 2가지 애니메이션이 존재하는데, 하나는 Weapon이고, 나머지 하나는 Mannequin입니다.이번 포스팅에서는 Weapon에 대해서 정리해보겠습니다. 1. Weapon Animation시작은 OnEquipped Event가 발생할 때입니다. 1-1. Determine Cosmetic Tags (Function)- 우선 첫 번째로, GetPawn()->GetComponentByClass()를 통해 PawnComponent_CharacterParts를 가져옵니다.- 만약 존재한다면 (IsValid) 지역변수 CosmeticComponent에 캐싱합니다.- 그리고 CosmeticComponent에서 CombinedTags를.. 2024. 11. 22. 이전 1 2 3 4 ··· 82 다음