일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- DP
- 다익스트라
- Two Points
- 그래프
- two pointer
- binary search
- Brute Force
- 스토어드 프로시저
- 이진탐색
- String
- union find
- Dijkstra
- SQL
- Stored Procedure
- Trie
- MYSQL
- Hash
Archives
- Today
- Total
codingfarm
기본지식 - COM(Component Object Model) 본문
COM(Component Object Model)은 어떤 프로그램이나 시스템을 이루는 컴포넌트들이 상호 통신할 수 있도록 하는 메커니즘이라고 할 수 있다. 그렇기 때문에 COM을 이용하면 DirectX의 프로그래밍 언어 독립성과 하위 호환성을 가능하게 할 수 있다. COM 객체는 흔히 인터페이스라 부르지만, C++클래스로 간주해도 무방하므로 흔히 COM 객체라고 부른다.
C++로 DirectX 응용프로그램을 프로그래밍 할때 COM의 세부사항 대부분은 프로그래머에게 드러나지 않는다. 프로그래머가 알아야 할 것은 필요한 COM 인터페이스를 가리키는 포인터를 특별한 함수들을 이용해서, 또는 다른 COM 인터페이스의 메서드를 이용해서 얻는 방법 뿐이다.
COM 인터페이스를 new나 delete를 이용하여 색성, 삭제를 할 수 없다. 반드시 생성을 위한 별도의 API 함수를 써야하며, 그 인터페이스의 Release 메서드를 호출해야한다. 모든 COM 인터페이스는 IUnknown이라는 COM인터페이스의 기능을 상속하는데, 그 인터페이스가 Release라는 메서드를 제공한다.
COM 인터페이스들은 이름이 대문자 I로 시작한다. 가령 2차원 텍스처를 나타내는 COM 인터페이스는 ID3D11Texture2D 이다.
COM에 대해서는 더 방대한 이야기들이 많지만 우선 여기까지 하겠다.
'computer graphics > DirectX11' 카테고리의 다른 글
기본지식 - 자원과 서술자(Direct3D 12) (0) | 2020.11.28 |
---|---|
기본 지식 - 깊이 버퍼링(Depth Buffering) (0) | 2020.11.27 |
기본지식 - 교환사슬(Swap Chain)과 더블 버퍼링(Double Buffering) (0) | 2020.11.27 |
기본지식 - 텍스처 및 자료 자원 형식 (0) | 2020.11.27 |
기본지식 - Direct3D의 개요 (0) | 2020.11.27 |
Comments