사용되지 않는 기능(Direct3D 10)
Direct3D 10에서 사용할 수 있는 기능 목록은 다음과 같습니다. 이 페이지에는 Direct3D 10에서 더 이상 지원되지 않는 Direct3D 9 기능이 나열되어 있습니다.
Direct3D 10의 가장 큰 기능 변경 사항은 다음과 같습니다.
- Direct3D 10은 더 이상 고정 함수 변환 및 조명 파이프라인을 지원하지 않습니다.
- Direct3D 10은 더 이상 고정 함수 텍스처 블렌더(고정 함수 픽셀 셰이더라고도 함)를 지원하지 않습니다.
- Direct3D 10은 Direct3D 9에서 구현된 레거시 GDI 규칙보다 더 간단하고 깨끗한 새 래스터화 규칙을 구현합니다. instance 경우 줄의 마지막 픽셀 컨트롤은 더 이상 지원되지 않습니다.
Direct3D 10에서 더 이상 사용되지 않는 Direct3D 9의 전체 기능 목록은 다음과 같습니다.
알파 혼합. 알파 블렌드는 이제 컬러 블렌드와 독립적으로 프로그래밍됩니다. Direct3D 10은 기본적으로 사용하도록 설정된 알파 혼합 사용 토글을 추가합니다. 자세한 내용은 상태 개체(Direct3D 10) 를 참조하세요.
알파 테스트. 알파 테스트는 Direct3D 9에 대한 고정 함수 픽셀 동작입니다. 알파 테스트는 Direct3D 10 이상의 프로그래밍 가능한 픽셀 셰이더로 이동됩니다. Direct3D 10 이상에서 Direct3D 9 알파 테스트 기능을 에뮬레이트하는 방법에 대한 자세한 내용은 2010년 6월 DirectX SDK의 FixedFuncEMU 샘플을 참조하세요.
혼합 모드 옵션. BOTHSRCALPHA는 BOTHINVSRCALPHA와 중복되므로 D3D10_BLEND 제거되었습니다. 자세한 내용은 D3D10_BLEND 참조하세요.
압축 형식을 차단합니다. Direct3D 10에서는 미리 곱한 알파 또는 미리 곱한 알파가 아닌 알파를 구분하지 않습니다. 이러한 Direct3D 9 형식은 다음 Direct3D 10 형식에 매핑됩니다.
Direct3D 9 Direct3D 10 DXT1 BC1* DXT2,DXT3 BC2* DXT4,DXT5 BC3* 자세한 내용은 블록 압축(Direct3D 10) 을 참조하세요.
평면을 클리핑합니다. Direct3D 10은 클립 평면을 사용하는 대신 최대 2개의 꼭짓점 특성 요소에 최대 8개의 구성 요소를 사용하여 클립 거리 및 컬링 거리를 구현합니다. 자세한 내용은 의미 체계(DirectX HLSL) 를 참조하세요. FixedFuncEMU 샘플 은 Direct3D 10에서 클립 평면을 에뮬레이트하는 예제를 제공합니다.
디더링. Direct3D 10은 디더링된 데이터를 렌더링 대상에 쓰는 것을 지원하지 않습니다.
고정 함수 변환 및 조명 파이프라인을 사용할 수 없습니다. 대신 셰이더를 사용해야 합니다. 자세한 내용은 셰이더 단계(Direct3D 10) 를 참조하세요.
고정 함수 텍스처 블렌더(고정 함수 픽셀 셰이더라고도 함). 대신 셰이더를 사용해야 합니다. 자세한 내용은 셰이더 단계(Direct3D 10) 를 참조하세요.
채우기 모드가 변경되었습니다. Direct3D 10은 단색 및 와이어프레임 채우기 모드를 구현합니다. D3DFILLMODE 지점이 제거되었습니다. 필요한 경우 기하 도형 셰이더를 사용하여 점 모드를 에뮬레이트합니다. FixedFuncEMU 샘플 은 Direct3D 10에서 D3DFILLMODE 지점을 에뮬레이트하는 예제를 제공합니다. 자세한 내용은 D3D10_FILL_MODE 및 셰이더 단계(Direct3D 10) 를 참조하세요.
형식입니다. 하드웨어는 API에서 노출하는 형식을 사용할 수 있습니다. 광도 형식은 더 이상 구현되지 않습니다.
Mipmap 필터링. 필터 없음 모드를 선택하는 옵션이 제거되었습니다. 대신 단일 Mipmap이 있는 텍스처를 사용하거나 MaxLOD 샘플러 상태를 0으로 설정합니다. 자세한 내용은 상태 개체(Direct3D 10) 를 참조하세요.
색상표. 애플리케이션은 종속 텍스처 읽기를 대신 사용해야 합니다.
픽셀 및 꼭짓점 셰이더 모델: 1_x, 2_x 및 3_0. Direct3D 10은 셰이더 모델 4를 지원합니다. 자세한 내용은 셰이더 모델 4 를 참조하세요.
포인트 스프라이트. 대신 기하 도형 셰이더를 사용합니다. 자세한 내용은 셰이더 단계(Direct3D 10) 를 참조하세요.
래스터화 규칙. 레거시 GDI 라인 래스터화 규칙은 더 깨끗하고 간단한 규칙으로 대체됩니다. 줄의 마지막 픽셀 컨트롤은 더 이상 지원되지 않습니다. 자세한 내용은 래스터화 규칙(Direct3D 10) 을 참조하세요.
음영 모드. D3DSHADEMODE(플랫/구라우/퐁 음영 지원)가 제거되었습니다. Direct3D 10은 꼭짓점 셰이더 출력에 대해 두 개의 보간 한정자를 대신 구현합니다. Direct3D 10에서 Direct3D 9 gouraud 및 플랫 셰이드 모드를 에뮬레이트하는 예제는 FixedFuncEMU 샘플을 참조하세요.
texldp 명령입니다. 애플리케이션은 추가 HLSL 문을 사용하여 프로젝션된 텍스처 로드를 구현해야 합니다. 자세한 내용은 HLSL 참조 를 참조하세요. FixedFuncEMU 샘플 은 Direct3D 10에서 texldp를 에뮬레이트하는 예제를 제공합니다.
TCI(텍스처 좌표 인덱스) 텍스처 스테이지 상태(D3DTSS_TEXCOORDINDEX)는 더 이상 지원되지 않습니다.
삼각형 팬. 애플리케이션은 기존 삼각형 팬을 삼각형 목록 또는 삼각형 스트립으로 변환해야 합니다. 이전 API에서 DrawPrimitive를 사용하여 일부 동작을 에뮬레이트하려면 Direct3D 10에서 DrawIndexed를 사용해 보세요. 자세한 내용은 기본 토폴로지(Direct3D 10) 를 참조하세요.
W 버퍼링. 하드웨어 지원은 보장되지 않습니다. 대신 애플리케이션에서 고밀도 깊이 버퍼를 사용하는 것이 좋습니다. 자세한 내용은 Depth-Stencil 기능 구성(Direct3D 10) 을 참조하세요.
래핑 모드 (텍스처 좌표 래핑). 텍스처 주소 래핑(예: 래핑, 미러, 클램프 등)이 여전히 존재합니다. D3D10_SAMPLER_DESC 및 D3D10_TEXTURE_ADDRESS_MODE 참조하세요.
관련 항목