DXGI(DirectX Graphics Infrastructure)는Direct3D와 함께 쓰이는 API이다. DXGI에 말린 기본 착안은 , 여러 그래픽 API들에 공통인 그래픽 관련 작업들이 존재한다는 것이다. 예를 들어 매끄러운 2차원 애니메이션을 위해서는 2차원 렌더링 API 에도 3차원 렌더링 API처럼 교환사슬과 페이지 전환이 필요하다. 이 때문에 교환 사슬을 대표하는 인터페이스인 IDXGISwapchain을 실제로 DXGI API 의 일부이다. DXGI는 그 밖에도 여러 가지 공통적인 그래픽 가능성을 처리한다. 이를 테면 전체화면 모드전환 , 디스플레이 에댑터나 모니터, 지원되는 디스플레이 모드 ( 해상도, 갱신율등 ) 같은 그래픽 시스템정보의 열거 등의 기능은 DXGI 가 제공한다. 또한,..
다중표본화를 위해서는 DXGI_SAMPLE_DESC라는 구조체를 적절히 채워야 한다. 이 구조체는 다음과 같이 두개의 멤버( 자료 빌드 ) 로 이루어져 있다. typedef struct DXGI_SAMPLE_DESC { UINT Count; UINT Quality; } DXGI_SAMPLE_DESC; DXGI_SAMPLE_DESC (dxgicommon.h) - Win32 apps Describes multi-sampling parameters for a resource. learn.microsoft.com Count 멤버는픽셀당 추출한 표본의 개수를 지정하고 Quality 멤버는 원하는 품질 수준 (quality level ) 을 지정 한다 ( '품질 수준 ' 의 구체적인 의미는 하드웨어 제조사마다 다를..

모니터의 픽셀들이 무한히 작지는 않기 때문에, 모니터 화면에 임의의 선을 완벽하게 나타내는 것은 불가능하다. 아래그림은 흔히 '계단현상'이라고 하는 앨리어싱 효과를 보여준다. 선을 픽셀들의 배열로 '근사'하다보면 이런 현상이 생긴다. 삼각형의 변에서도 이와 비슷한 앨리어싱 효과가 나타난다. 모니터 해상도를 키워서 픽셀 크기를 줄이면 문제가 크게 관화되어서 이 계단 현상이 거의 눈에 띄지 않을 정도가 된다. 그러나 모니터 해상도를 키우는 것이 불가능하거나 키워도 충분하지않은 경우에는 앨리어싱 제거( antialiasing ) 기법을 적용할 수 있다. 그런 기법의 하나가 초과표본화 ( supersampling ) 이다. 초과표본화에서는 후면 버퍼라 깊이 버퍼를 화면 해상도보다 4배 ( 가로 , 세로 두배씩 ..
랜더링 과정에서 GPU는 자원들에 자료를 기록하거나 (이를 테면 후면 버퍼나 깊이 스텐실 버퍼가 그런종류의 자원이다.)자원들에서 자료를 읽어 들인다. (이를 테면 표면이 모습을 서술하는 텍스처나 장면 안의 기하구조의 3차원 위치들을 담은 버퍼가 그런 종류의 자원이다.) 그리기 명령을 제출하기 전에, 먼저 해당 그리기 호출이 참조할 자원들을 렌더링 파이프라인에 묶어야 (blind)한다. 이를 가리켜 자원을 파이프라인에 연결한다(link) " 또는 " 바인딩한다"라고 말하기도 한다. 그리기 호출마다 달라지는 자원들도 있으며, 따라서 필요하다면 그리기 호출마다 그런자원들의 바인딩을 갱신해야 한다. 그런데 GPU 자원들이 파이프라인에 직접 묶이는 것은 아니다. 실제로 파이프라인에 묶이는 것은 해당 자원을 참조하..

깊이 버퍼 (depth buffer )는 이미지 자료를 달지 앓는 텍스처의 한 예이다. 깊이 버퍼는 각 픽셀의 깊이 정보를 담는다. 픽셀의 깊이는 0 에서 1.0 까지의 값으로 , 0.0 은 시야 절투체 ( view frustum ) 안에서 관찰자에 최대한 가까운 물체에 해당하고 1.0은 시야 절두체 안에서 관찰자와 최대한 먼 물체에 해당한다. 깊이 버퍼의 원소들과 후면 버퍼의 픽셀들은 일대일로 대응된다. (즉 , 후면 버퍼의 ij번째 원소는 깊이 버퍼의 ij번째 원소에 대응된다.) 예를 들어 후면 버퍼의 해상오가 1280 x 1024 라면 깊이버퍼는 1280 x 1024 개의 원소들로 구성된다 . 아래 그림은 몇몇 물체가 다른 물체들을 가리고 있는 간단한 장면이다. 한 물체의 픽셀들이 다른 물체보다 앞..
- Total
- Today
- Yesterday
- 언리얼
- 언리얼엔진#FPS
- Replicated
- 언리얼#게임
- LockonSystem
- Direct12
- 포트폴리오
- html5
- UnReal
- DirectX12
- 언리얼#프로그래밍#c++#포트폴리오준비#블루프린트->c++전환
- 게임프로그래밍
- ReplicatedUsing
- 언리얼#c++#기능
- c++
- 4.27
- Multiplayer
- 1993
- Direct3D
- 시애틀의 잠 못 이루는 밤
- ActorComponent
- DirectX
- RPC
- 언리얼#c++#Interface
- 포레스트 검프
- 프로그래밍
- 게임
- directx3d
- 영화리뷰
- Multipalyer
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |