방법: 셰이더 내보내기

Visual Studio 2017 RC에 대한 최신 설명서는 Visual Studio 2017 RC 설명서를 참조하세요.

이 문서에서는 셰이더 디자이너를 사용하여 응용 프로그램에서 사용할 수 있도록 DGSL(Directed Graph Shader Language)을 내보내는 방법을 보여줍니다.

이 문서는 다음과 같은 활동을 보여줍니다.

  • 셰이더 내보내기

셰이더 내보내기

셰이더 디자이너를 셰이더를 만들고 응용 프로그램에서 사용하기 전에 그래픽 API에서 인식하는 형식으로 내보낼 수 있습니다. 다른 요구를 충족하기 위해 여러 가지 방식으로 셰이더를 내보낼 수 있습니다.

셰이더를 내보내기 하려면

  1. Visual Studio에서 시각적 셰이더 그래프(.dgsl) 파일을 엽니다.

    열기 위한 비주얼 셰이더 그래프 (.dgsl) 파일이 없는 경우에는 방법: 기본 색 셰이더 만들기에 설명대로 파일을 만드십시오.

  2. 셰이더 디자이너 도구 모음에서 고급, 내보내기, 다른 이름으로 내보내기를 선택합니다. 셰이더 내보내기 대화 상자가 나타납니다.

  3. 파일 형식 드롭다운 목록에서 내보내려는 형식을 선택합니다.

    다음은 선택할 수 있는 형식입니다.

    HLSL 픽셀 셰이더(*.hlsl)
    HLSL(High Level Shader Language) 소스 코드로 셰이더를 내보냅니다. 이 옵션을 사용하면 응용 프로그램에 배포한 후에도 나중에 셰이더를 수정할 수 있습니다. 그리고 최종 사용자 문제에 기반하여 코드를 더 쉽게 디버깅하여 패치할 수 있지만 사용자가 예를 들면 경쟁 게임에서 공정하지 않은 혜택을 얻기 위해 원하지 않는 방식으로 셰이더를 더 쉽게 수정할 수 있습니다. 또한 셰이더의 로드 시간이 늘어날 수 있습니다.

    컴파일된 픽셀 셰이더(*.cso)
    HLSL 바이트코드로 셰이더를 내보냅니다. 이 옵션을 사용하면 응용 프로그램에 배포한 후에도 나중에 셰이더를 수정할 수 있습니다. 이를 통해 최종 사용자 문제에 기반하여 코드를 더 쉽게 디버깅하고 패치할 수 있지만 셰이더가 미리 컴파일되므로 응용 프로그램에서 셰이더가 로드될 때 추가 런타임 오버 헤드가 발생하지 않습니다. 충분한 기술을 소유한 사용자는 원치 않는 방법으로 셰이더를 수정할 수 있지만 셰이더를 컴파일하면 이 작업은 더 어려워집니다.

    C++ 헤더(*.h)
    HLSL 바이트코드를 포함하는 바이트 배열을 정의하는 C-스타일 헤더로 셰이더를 내보냅니다. 이 옵션을 사용하면 최종 사용자 문제를 기반으로 코드를 디버깅하고 패치하는 데 더 많은 시간이 소비됩니다. 이는 버그 수정을 테스트하기 위해 응용 프로그램을 다시 컴파일해야 하기 때문입니다. 그러나, 이 옵션은 응용 프로그램이 셰이더에 배포된 후에 변경하는 것을 불가능하지는 않지만 어렵게 만들기 때문에 원하지 않는 방식으로 셰이더를 변경하려는 사용자에게 가장 어렵습니다.

  4. 파일 이름 콤보 상자에서 내보낸 셰이더의 이름을 지정한 다음 저장 단추를 선택합니다.

참고 항목

방법: 기본 색 셰이더 만들기
셰이더 디자이너