분류 전체보기
-
Bindless Resource - DX12, VulkanGraphics/기본 2024. 1. 17. 23:55
Bindless Resource - DX12, Vulkan 최초 작성 : 2024-01-17 마지막 수정 : 2024-01-17 최재호 목차 1. 목표 2. 내용 2.1. Bindless Resource 에 대해서 2.2. API 별 Bindless Resource 2.2.1. Vulkan Bindless Resource 2.2.2. DX12 Bindless Resource 2.2.3. DX12 Dynamic Resources 3. 레퍼런스 1. 목표 레이트레이싱을 시작하면서 Bindless Resource 필요성을 느껴서 관련해서 알아본 것을 정리합니다. Bindless 리소스가 무엇인지 알아보고 어떤 장점이 있는지 알아봅시다. DX12, Vulkan 의 Bindless Resource 의 사용법과 특..
-
jEngine Library 빌드 관련Graphics/Renderer Lab 2023. 12. 29. 22:55
Library 빌드 관련해서 겪은 이슈들을 정리합니다. 추가 사항이 있는 경우 계속 이 문서를 업데이트 할 예정입니다. 최초 작성 : 2023-12-29 마지막 수정 : 2024-03-23 최재호 목차 1. ShaderConductor [Deprecated] 2. DirectXTex 3. xxHash, CityHash 4. DirectX12 Agility SDK 1. ShaderConductor [Deprecated] Updated 2024-01-11 : Shader Language 를 HLSL, DXC 로 DX12 와 Vulkan 쉐이더 컴파일에 문제 없습니다. 추후 Metal 이나 다른 API로 포팅이 필요한 경우 다시 사용할 예정입니다. ShaderConductor 는 hlsl 을 사용하여 Vulk..
-
jEngine(Vulkan, DX12)Graphics/Renderer Lab 2023. 11. 11. 01:05
Renderer Lab 이라는 카테고리를 통해서 그래픽스 피쳐 개발을 위해 만들었던 소프트웨어들에 대한 기록을 남길 것입니다. 해당 기록들을 통해서 얻고자하는 것은 다음과 같습니다. - 만들었던 소프트웨어에 대해 잊은 경우 빠르게 리마인드 하여 그래픽스 피쳐 개발에 활용함 - 소프트웨어 제작시 발생하는 고민들이나 코너 케이스를 히스토리로 남겨 토론하고 추적함 최초 작성 : 2023-11-11 마지막 수정 : 2024-02-07 최재호 Last Updated(2024-02-07) : 2.2.10. jResourceBarrierBatcher 추가 목차 1. 개요 2. 렌더러 사용 2.1. jEngine 소개 2.2. 코드 구성 2.2.1. Shader Resource Binding 2.2.1.1. jShad..
-
[UE5] D3D12 ResourceAllocation 리뷰(2/2)UE4 & UE5/Rendering 2023. 8. 24. 22:43
[UE5] D3D12 ResourceAllocation 리뷰 (2/2) 최초 작성 : 2023-08-24 마지막 수정 : 2023-08-24 최재호 목차 1. 목표 2. 내용 2.1. Non-TransientHeap 방식 2.1.1. 리소스 할당 코드 2.1.1.1. FD3D12Buffer 생성 2.1.1.2. FD3D12Texture 생성 2.1.1.3. FD3D12UniformBuffer 2.1.1.4. FD3D12UploadHeapAllocator 의 메모리 할당 2.1.1.5. FD3D12DefaultBufferAllocator 의 메모리 할당 2.1.1.6. FD3D12TextureAllocatorPool 의 메모리 할당 2.1.1.7. FD3D12FastConstantAllocator 의 메모..
-
[UE5] D3D12 ResourceAllocation 리뷰 (1/2)UE4 & UE5/Rendering 2023. 8. 23. 00:26
[UE5] D3D12 ResourceAllocation 리뷰 (1/2) 최초 작성 : 2023-08-23 마지막 수정 : 2023-08-23 최재호 목차 1. 목표 2. 내용 2.1. Non-TransientHeap 방식 2.1.1. 주요 클래스 파악 2.1.1.1. FD3D12Buffer, FD3D12Texture 2.1.1.2. FD3D12UniformBuffer 2.1.2. 리소스 해제 방식 정리 2.2. TransientHeap 방식 (RDG 에서 사용) 2.2.1. 주요 클래스 파악 2.3. Non-TransientHeap 방식의 전체 UML 2.4. TransientHeap 방식의 전체 UML 3. 레퍼런스 1. 목표 UE5 의 D3D12 Buffer, Texture 의 생성/해제 방식에 대해..
-
DX12 Shader Visible Descriptor HeapGraphics/기본 2023. 8. 5. 00:37
DX12 Shader Visible Descriptor Heap 최초 작성 : 2023-08-05 마지막 수정 : 2023-08-05 최재호 목표 Shader visible descriptor heap(Online descriptor heap), CPU only visible descriptor heap(Offline descriptor heap) 에 대해서 알아보고 UE5.2 에서의 구현도 확인해 봅시다. 내용 DX12 리소스 중 버퍼 또는 텍스처와 같이 Shader 에 전달하여 사용할 수 있는 리소스들이 있습니다. 이런 리소스를 Shader 에서 사용할 수 있게 하려면 Descriptor 를 만들어야 합니다. Descriptor 의 종류는 CBV, SRV, UAV, RTV, DSV, Sampler 등..
-
ContactAbout me 2023. 7. 31. 19:01
안녕하세요. 제가 관심있는 포지션은 PC/Console 플랫폼의 그래픽스/엔진 포지션 입니다. 혹시 이력서나 경력기술서가 필요하시면 scahp@naver.com 으로 연락 주세요. 저는 업무 관련된 논문을 보면서 새로운 아이디어를 찾아보고 적용하는 과정에서 가장 성취감을 느낍니다. 또한 언리얼 코드를 뜯어보면서 원리를 알아갈 때가 가장 행복한 시간이었던 것 같습니다. 최근 나나이트 루멘쪽을 리뷰 중인데 코딩 관련 이야기 나누는 것도 좋아하니 연락주셔도 됩니다. :) 감사합니다. Github: https://github.com/scahp/jEnginehttps://github.com/scahp/ShadowsLinkedIn : https://www.linkedin.com/in/tedchoi/
-
[번역] SV_BarycentricsGraphics/번역 2023. 7. 22. 13:12
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://github.com/microsoft/DirectXShaderCompiler/wiki/SV_Barycentrics Barycentric coordinates(무게중심좌표계) 는 삼각형이나 직선(line) 같은 geometric primitive 범위 내에서 위치를 정의하는 일반적인 방법입니다. 이 문서는 Primitive에 포함된 현재 픽셀의 Barycentric coordinates 를 읽기 위한 픽셀 쉐이더의 매커니즘을 설명합니다. 그런 뒤 high-order interpolation schemes, creative attribute unpack..