사용되지 않는 기능(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_DESCD3D10_TEXTURE_ADDRESS_MODE 참조하세요.

API 기능(Direct3D 10)