직접 밉매핑

필요한 경우 밉매핑을 사용하여 큰 이미지의 크기를 조절합니다.

모든 플랫폼에서 사용할 수 있는 Flash Player 10.1 및 AIR 2.5의 또 다른 새 기능은 밉매핑과 관련됩니다. Flash Player 9 및 AIR 1.0에는 크기가 작게 조절된 비트맵의 품질과 성능을 향상시키는 밉매핑 기능이 새로 추가되었습니다.

참고: 밉매핑 기능은 동적으로 로드된 이미지 또는 포함된 비트맵에만 적용됩니다. 필터가 적용되거나 캐시된 표시 객체에는 적용되지 않습니다. 밉매핑은 비트맵의 폭과 높이가 짝수인 경우에만 처리할 수 있습니다. 홀수인 폭 또는 높이가 발견되면 밉매핑이 중지됩니다. 예를 들어 250 x 250 이미지를 125 x 125로 밉매핑할 수 있지만 그 이하로 밉매핑할 수는 없습니다. 이 경우 크기 중 적어도 하나가 홀수입니다. 256 x 256, 512 x 512, 1024 x 1024와 같이 비트맵 크기가 2의 거듭제곱일 때 최상의 결과를 얻을 수 있습니다.

예를 들어 1024 x 1024 이미지를 로드하고 개발자가 이미지의 크기를 조절하여 갤러리에 축소판을 만들려고 한다고 가정해 보겠습니다. 중간 크기로 다운샘플링된 버전의 비트맵을 텍스처로 사용하여 크기를 조절하는 경우 밉매핑 기능이 이미지를 올바르게 렌더링합니다. 이전 버전의 런타임에서는 중간 크기로 조절된 버전의 비트맵을 메모리에 만들었습니다. 1024 x 1024 이미지를 로드하고 64 x 64에서 표시하는 경우 이전 버전의 런타임에서는 절반 크기의 비트맵을 차례로 모두 만들었습니다. 예를 들어 이 예에서는 512 x 512, 256 x 256, 128 x 128, 및 64 x 64 비트맵이 만들어집니다.

이제 Flash Player 10.1 및 AIR 2.5에서는 원래 소스에서 필요한 대상 크기로 바로 밉매핑을 만들 수 있습니다. 이전 예제에서 4MB(1024 x 1024)의 원래 비트맵과 16KB(64 x 64)의 밉매핑된 비트맵만 만들어집니다.

밉매핑 논리는 동적 비트맵 언로드 기능과도 작동합니다. 64 x 64 비트맵만 사용하는 경우 4MB의 원래 비트맵이 메모리에서 해제됩니다. 밉매핑을 다시 만들어야 하는 경우에는 원래 비트맵이 다시 로드됩니다. 또한 밉매핑된 다양한 크기의 다른 비트맵이 필요할 경우 비트맵의 밉매핑 체인을 사용하여 비트맵을 만들 수 있습니다. 예를 들어 1:8 비트맵을 만들어야 하는 경우 1:4/1:2/1:1 비트맵을 검사하여 메모리에 처음으로 로드되는 비트맵을 확인합니다. 다른 버전이 발견되지 않으면 1:1의 원래 비트맵이 리소스에서 로드되어 사용됩니다.

JPEG 압축 해제 프로그램은 자체의 고유한 형식 내에서 밉매핑을 수행할 수 있습니다. 이러한 직접 밉매핑을 사용하면 압축되지 않은 전체 이미지를 로드하지 않고 큰 비트맵을 밉맵 형식으로 바로 압축 해제할 수 있습니다. 밉맵 생성은 상당히 빠르며 큰 비트맵에 사용되는 메모리가 할당되지 않고 해제됩니다. JPEG 이미지 품질은 일반 밉매핑 기술과 비슷한 수준입니다.

참고: 밉매핑은 가능한 한 사용하지 마십시오. 밉매핑은 다운스케일 비트맵의 품질을 향상시키지만 대역폭, 메모리 및 속도에 영향을 줍니다. 일부 경우, 외부 도구에서 비트맵의 크기가 미리 조절된 버전을 사용하고 해당 버전을 응용 프로그램으로 가져오는 것이 더 나을 수 있습니다. 비트맵의 크기를 줄이려는 경우 큰 비트맵으로 시작하지 마십시오.