분류 전체보기
-
[UE5] Auto Exposure (1/2)UE4 & UE5/Rendering 2022. 11. 29. 01:08
[UE5] Auto Exposure (1/2) 최초 작성 : 2022-11-28 마지막 수정 : 2022-11-28 최재호 Updated 2022-12-15 : Weighted geometric mean 을 사용한다는 내용 추가 목차 1. 환경 2. 목표 3. 내용 3.1. 전체 분석할 렌더 프레임 확인 3.2. ExposureScale 구하는 식 확인 3.3. BasicEyeAdaptationSetup 단계 3.4. BasicEyeAdaptation (CS) 3.5. EnequeueCopy(EyeAdaptation) 단계 3.6. Tonemapping 단계 4. 레퍼런스 1. 환경 Unreal Engine 5.0.3 (ue5-release branch d9d435c9c280b99a6c679b517ade..
-
[번역] Journey to LumenGraphics/번역 2022. 10. 9. 16:33
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://knarkowicz.wordpress.com/2022/08/18/journey-to-lumen/ Journey to Lumen Real-time GI 는 항상 컴퓨터 그래픽스의 성배였습니다. 몇년동안 이 문제에 대해서 여러가지 접근법이 있었습니다. 보통은 static geometry, too coarse scene presentation 또는 coarse probes 를 사용한 tracing 그리고 lighting 들간에 보간과 같이 특정 가정을 사용하여 문제의 범위를 제한합니다. Daniel Wright 와 Lumen 을 시작할 때, 우리의 목표는..
-
[UE5] Occlusion CullingUE4 & UE5/Rendering 2022. 10. 8. 23:47
[UE5] Occlusion Culling 최초 작성 : 2022-10-08 마지막 수정 : 2022-10-08 최재호 목차 1. 환경 2. 목표 3. 내용 3.1. 주요 클래스 3.2. BasePass 를 위한 Occlusion Culling 3.2.1. BasePass Occlusion Query 생성과 이전 프레임에서 요청한 Query 기반 Occlusion 처리 3.3. Shadow 와 Relfection 등등을 위한 Occlusion Culling 3.3.1. Shadow, Reflection 등등을 위한 Occlusion Query 생성 3.3.2. 준비한 BasePass와 Shadow, Reflection 등등의 Occlusion Query 실행 3.3.3. 실행한 Occlusion Quer..
-
[번역] Octahedron normal vector encodingGraphics/번역 2022. 9. 30. 21:21
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://knarkowicz.wordpress.com/2014/04/16/octahedron-normal-vector-encoding/ Octahedron normal vector encoding 많은 렌더링 기술이 인코딩된 Normal (unit) vector 로 부터 이득을 얻습니다. 예를 들어, 디퍼드 쉐이딩 G-buffer 공간은 제한된 리소스입니다. 게다가 World space normal 을 uniform precision 로 인코딩 할 수 있는 것은 좋습니다. 몇몇 인코딩 기술은 view space normal 에만 작동합니다, 왜냐하면 norm..
-
Wave IntrinsicsGraphics/기본 2022. 9. 27. 01:05
개요 레퍼런스1, 2, 3을 통해 GPU 가 실행하는 각각의 Work Item 이 Wavefront 라는 그룹단위로 실행되는 것을 알 수 있었습니다. Shading Model 6(SM6) 이상 부터는 Wavefront 관련 Intrinsics 가 추가되었고 이 기능을 활용할 수 있습니다. 이것에 대해서 알아봅시다. 내용 GPU 작업은 여러 카테고리로 분류됩니다. 전체 작업을 나타내는 Domain. 그리고 그 보다 작은 단위의 WorkGroup 이 있습니다. WorkGroup 은 동일한 Compute Unit 에 실행되며 WorkGroup 단위로 내부 작업을 동기화 하기에 좋습니다. 마지막으로 WorkGroup 은 각각의 WorkItem 들이 모여서 구성됩니다. Work Gorup 과 Work Item 사..
-
Variable Shading Rate(VRS)Graphics/기본 2022. 9. 27. 00:08
목차 1. 개요 2. 내용 2.1. 디바이스 생성 2.2. VRS 이미지 생성 2.3. VRS 사용을 위한 Graphics Pipeline State 생성 2.4. VRS 디버깅을 위한 코드 추가 2.5. 구현결과 2.6. 구현 코드 3. 레퍼런스 1. 개요 Variable Shading Rate(VRS) 에 대해서 알아보고 구현해봅시다. VRS 는 화면의 영역별로 쉐이딩 비율을 조정하는 기능입니다. 그림1을 보면, 1x1 부터 4x4 까지 다양한 쉐이딩 비율이 있습니다. 1x1 이 VRS 를 사용하지 않은 기본 비율입니다. 그리고 2x2 는 4픽셀당 1번 쉐이딩을 합니다. 이 기능을 활용하여 사람의 시야에서 인지적으로 크게 영향을 미치지 않는 부분는 더 적은 수의 픽셀을 쉐이딩 하여 퍼포먼스를 얻을 수..
-
[번역] Even more compute shaders | Anteru's BlogGraphics/번역 2022. 7. 30. 00:59
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://anteru.net/blog/2018/even-more-compute-shaders/ Even more compute shaders GPU compute 에 관한 작은 시리즈가 된 것 같습니다, 그리고 이번 주에는 execution unit 과 cache 에 대해서 논의해보려고 합니다. 첫 번째 글(번역링크) 두 번째 글(번역링크) 을 먼저 읽어보길 강력 추천합니다, 그 둘을 자주 참조할 것이기 때문입니다. Cache 와 execution unit, 어디서부터 시작해야 할까요? execution unit 먼저 시작해봅시다. Issue ports 만약..
-
[번역] More compute shaders | Anteru's BlogGraphics/번역 2022. 7. 28. 02:24
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://anteru.net/blog/2018/more-compute-shaders/ More compute shaders 저번 주에 나는 compute shaders 를 다뤘습니다, 그리고 나는 subgroup 을 더 다루기 위해서 하드웨어 쪽으로 더 자세히 가보자는 요청을 받았습니다. 그러나 시작하기 전에, compute unit 이 어떻게 생겼고 거기서 무슨 일이 일어나는지 다시 요약해 보겠습니다. 이전 글에서, 나는 하드웨어는 많은 item 이 같은 프로그램을 실행하는데 최적화 되어있다고 설명했습니다. 그 결과 아주 넓은 SIMD unit(AMD GC..