방법: 미리 증가된 알파를 사용하는 질감 내보내기How to: Export a Texture that has Premultiplied Alpha

이미지 콘텐츠 파이프라인은 소스 이미지에서 미리 곱한 알파를 생성할 수 있습니다.The Image Content Pipeline can generate premultiplied alpha textures from a source image. 이 방법은 더 간단히 사용할 수 있고 미리 곱한 알파가 포함되지 않은 질감보다 더 강력할 수 있습니다.These can be simpler to use and more robust than textures that do not contain premultiplied alpha.

이 문서는 다음 활동을 보여 줍니다.This document demonstrates these activities:

  • 이미지 콘텐츠 파이프라인에서 처리할 소스 이미지 구성.Configuring the source image to be processed by the Image Content Pipeline.

  • 미리 곱한 알파를 생성하도록 이미지 콘텐츠 파이프라인 구성.Configuring the Image Content Pipeline to generate premultiplied alpha.

미리 곱한 알파Premultiplied Alpha

미리 곱한 알파는 반투명도(미리 곱한 알파가 통과 허용하는 기본 색의 양)에서 텍셀의 색 기여도(미리 곱한 알파가 장면에 추가하는 색)를 분리하는 방식으로 실제 재질과 광원의 사실적인 상호 작용을 더 잘 표현하기 때문에 기존 미리 곱하지 않은 알파에 비해 다양한 장점을 제공합니다.Premultiplied alpha offers several advantages over conventional, non-premultiplied alpha, because it better represents the real-world interaction of light with physical materials by separating the texel's color contribution (the color that it adds to the scene) from its translucency (the amount of underlying color that it allows through). 미리 곱한 알파 사용의 몇 가지 장점은 다음과 같습니다.Some of the advantages of using premultiplied alpha are:

  • 미리 곱한 알파와 혼합하는 것은 결합형 작업입니다. 질감이 혼합되는 순서에 관계없이 여러 불투명 질감을 혼합한 결과는 동일합니다.Blending with premultiplied alpha is an associative operation; the result of blending multiple translucent textures is the same, regardless of the order in which the textures are blended.

  • 미리 곱한 알파 혼합의 결합형 특성 때문에 불투명 개체의 멀티패스 렌더링은 간단합니다.Because of the associative nature of blending with premultiplied alpha, multi-pass rendering of translucent objects is simplified.

  • 미리 곱한 알파를 사용하면 순수 첨가 혼합(알파를 0으로 설정)과 선형 보간 혼합을 둘 다 동시에 적용할 수 있습니다.By using premultiplied alpha, both pure additive blending (by setting alpha to zero) and linearly interpolated blending can be achieved simultaneously. 예를 들어 파티클 시스템에서 첨가 혼합된 불 파티클은 선형 보간을 통해 혼합된 불투명 연기 파티클이 될 수 있습니다.For example, in a particle system, an additively blended fire particle can become a translucent smoke particle that's blended by using linear interpolation. 미리 곱한 알파가 없으면 연기 파티클과 별도로 불 파티클을 그리고 그리기 호출 사이에 렌더링 상태를 수정해야 합니다.Without premultiplied alpha, you would have to draw the fire particles separately from the smoke particles, and modify the render state between draw calls.

  • 미리 곱한 알파를 사용하는 질감은 사용하지 않는 질감보다 더 높은 품질로 압축되고, 미리 곱한 알파를 사용하지 않는 질감을 혼합할 경우 생성될 수 있는 변색된 가장자리(또는 “후광 효과”)를 나타내지 않습니다.Textures that use premultiplied alpha compress with higher quality than those that don't, and they don't exhibit the discolored edges—or "halo effect"—that can result when you blend textures that don't use premultiplied alpha.

미리 곱한 알파를 사용하는 질감을 만들려면To create a texture that uses premultiplied alpha

  1. 기본 질감으로 시작합니다.Begin with a basic texture. 기존 이미지 파일을 로드하거나 방법: 기본 질감 만들기의 설명대로 질감을 만듭니다.Load an existing image file, or create one as described in How to: Create a Basic Texture.

  2. 이미지 콘텐츠 파이프라인에서 처리되도록 질감 파일을 구성합니다.Configure the texture file so that it's processed by the Image Content Pipeline. 솔루션 탐색기에서 질감 파일의 바로 가기 메뉴를 열고 속성을 선택합니다.In Solution Explorer, open the shortcut menu for the texture file and then choose Properties. 구성 속성, 일반 페이지에서 항목 종류 속성을 이미지 콘텐츠 파이프라인으로 설정합니다.On the Configuration Properties, General page, set the Item Type property to Image Content Pipeline. 콘텐츠 속성이 로 설정되고 빌드에서 제외아니요로 설정되어 있는지 확인하고 적용 단추를 선택합니다.Make sure that the Content property is set to Yes and Exclude From Build is set to No, and then choose the Apply button. 이미지 콘텐츠 파이프라인 구성 속성 페이지가 표시됩니다.The Image Content Pipeline configuration property page appears.

  3. 미리 곱한 알파를 생성하도록 이미지 콘텐츠 파이프라인을 구성합니다.Configure the Image Content Pipeline to generate premultiplied alpha. 구성 속성, 이미지 콘텐츠 파이프라인, 일반 페이지에서 미리 곱한 알파 형식으로 변환 속성을 예(/generatepremultipliedalpha)로 설정합니다.On the Configuration Properties, Image Content Pipeline, General page, set the Convert to pre-multiplied alpha format property to Yes (/generatepremultipliedalpha).

  4. 확인 단추를 선택합니다.Choose the OK button.

    프로젝트를 빌드할 때 이미지 콘텐츠 파이프라인은 소스 이미지를 작업 형식에서 지정한 출력 형식으로 변환하고(여기에는 이미지를 미리 곱한 알파 형식으로 변환하는 작업이 포함됨) 결과는 프로젝트의 출력 디렉터리로 복사됩니다.When you build the project, the Image Content Pipeline converts the source image from the working format to the output format that you specified—this includes conversion of the image to premultiplied alpha format—and the result is copied to the project's output directory.