Graphics
-
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..
-
[번역] Introduction to compute shaders | Anteru's BlogGraphics/번역 2022. 7. 25. 00:20
개인 공부용으로 번역한 거라 잘못 번역된 내용이 있을 수 있습니다. 또한 원작자의 동의 없이 올려서 언제든 글이 내려갈 수 있습니다. 출처 : https://anteru.net/blog/2018/intro-to-compute-shaders/ Introduction to compute shaders 몇 달 전에 나는 누구든 강연를 제안할 수 있고, 어떤 강연으로 할지 빠른 투표가 진행되는 bar camp 인 Munich GameCamp 에 갔습니다. 나는 몇 가지 아이디어를 주변에 물어봤습니다, 그리고 한 개발자는 아마도 내가 compute shader 를 다루길 원할 것이라 했습니다. 그래서 나는 많은 사람들의 주목을 끌지 않길 바라며 들어갔습니다, 그러나 거의 참가자의 1/4 이 거의 한 시간 동안 c..
-
[UE4 PBR] Split sum appoximation 리뷰Graphics/Graphics Study 자료 2022. 7. 7. 08:00
[UE4 PBR] Split sum approximation 리뷰 최초 작성 : 2022-07-07 마지막 수정 : 2022-07-07 최재호 목차 1. 목표 2. 내용 2.1. Light equation 2.2. Diffuse BRDF 2.3. Microfacet Specular BRDF 2.3.1. Importance sampling 2.3.2. PDF and InverseCDF 2.3.3. PDF 유도 2.3.3.1 NDF(Normal Distribution function) 2.3.4. InverseCDF 유도 2.3.5. Importance sampling 을 위한 PDF 변환 2.4. 전처리 가능한 Specular part 구성 2.4.1. View = Reflect = Normal 2.4.2..
-
Dual-depth relief interior mappingGraphics/Graphics Study 자료 2022. 6. 11. 06:52
Dual-depth relief interior mapping 최초 작성 : 2022-06-11 마지막 수정 : 2022-06-11 최재호 목차 1. 목표 2. 내용 2.1. Relief mapping 2.1.1. Linear and Binary tracing 2.1.2. Dual-depth linear tracing 2.2. Interior mapping 2.3 Dual-depth + Interior mapping 3. 구현 결과 4. 실제 구현 5. 레퍼런스 1. 목표 Interior mapping은 빌딩의 창문을 통해 건물 내부에 보이는 가구나 공간을 개별 드로우콜로 렌더링 하지 않고, 2D 평면에 텍스쳐 매핑을 통해서 렌더링 하는 기능입니다. 그림1를 참고해주세요. UE5 CitySample의 I..
-
Weighted Blended OITGraphics/Graphics Study 자료 2022. 5. 23. 22:12
Weighted Blended OIT 최초 작성 : 2022-05-23 마지막 수정 : 2022-05-23 최재호 목차 1. 목표 2. 내용 2.1. Blended OIT 2.1.1. Meshkin's Method 2.1.2. Bavoil and Myers' Method 2.1.3. New Blended OIT Method 2.2. Weighted Blended OIT Method 3. 실제 구현 4. 구현 결과 5. 실제 구현 코드 6. 레퍼런스 1. 목표 Weighted Blended OIT(Order Independent Transparency) 를 이해하고 실제로 구현해봅시다. 레퍼런스1의 논문을 기반으로 구현의 핵심 내용을 확인해봅시다. 2. 내용 반투명의 경우 Partial coverage 를..