블로그로 돌아가기
형식

Basis Universal: 유니버설 텍스처 압축에 대한 완벽한 가이드

15 분 읽음

Basis Universal은 크로스 플랫폼 그래픽 개발의 가장 큰 과제 중 하나인 다양한 플랫폼과 장치에서 다양한 텍스처 압축 형식을 관리하는 문제를 해결하는 혁신적인 텍스처 압축 시스템입니다. Binomial LLC에서 개발하여 현재 오픈 소스 프로젝트로 유지 관리되는 Basis Universal은 런타임에 기본 GPU 압축 형식으로 트랜스코딩할 수 있는 단일 압축 텍스처 파일 형식을 제공합니다.

베이시스 유니버셜이란 무엇입니까?

Basis Universal은 고도로 압축된 중간 텍스처 파일을 생성하는 '초압축' GPU 텍스처 압축 시스템입니다. 이러한 파일은 런타임 시 ETC1, ETC2, ASTC, BC1-7 및 PVRTC를 포함하여 대상 플랫폼이 지원하는 모든 GPU 압축 형식으로 빠르게 트랜스코딩될 수 있습니다.

Basis Universal의 주요 혁신은 텍스처 데이터를 플랫폼에 구애받지 않는 형식으로 저장한 다음 이를 대상 장치에 대한 최적의 기본 형식으로 트랜스코딩하는 기능입니다. 이는 개발자가 휴대폰에서 데스크톱 컴퓨터, 게임 콘솔에 이르기까지 어디에서나 작동하는 단일 텍스처 파일을 제공할 수 있음을 의미합니다.

Basis Universal은 ETC1S(최대 압축)와 UASTC(최고 품질)의 두 가지 기본 압축 모드를 지원합니다. 두 모드 모두 최신 그래픽 애플리케이션에 적합한 시각적 품질을 유지하면서 뛰어난 압축률을 제공합니다.

Basis Universal의 주요 특징

범용 트랜스코딩

단일 압축 파일은 런타임 시 모든 기본 GPU 형식(ETC1/2, ASTC, BC1-7, PVRTC)으로 트랜스코딩 가능

높은 압축비

ETC1S 모드는 우수한 시각적 품질과 함께 탁월한 압축 비율(최대 10:1 이상)을 제공합니다.

UASTC 모드

UASTC(Universal ASTC) 압축은 BC7 및 ASTC 형식에 비해 경쟁력 있는 품질을 제공합니다.

빠른 트랜스코딩

런타임 트랜스코딩은 최소한의 메모리 오버헤드로 매우 빠릅니다(일반적으로 텍스처당 밀리초).

기본 범용 압축 모드

Basis Universal은 각기 다른 사용 사례에 최적화된 두 가지 압축 모드를 제공합니다.

ETC1S 모드

매우 높은 압축률(일반적으로 6:1 ~ 10:1 압축)과 우수한 시각적 품질을 제공합니다. 완벽한 시각적 충실도보다 파일 크기가 더 중요한 대부분의 확산 텍스처, UI 요소 및 콘텐츠에 이상적입니다.

최적의 용도: 모바일 애플리케이션, 웹 콘텐츠, 확산 텍스처, UI 요소

UASTC 모드

3:1~4:1의 압축률로 BC7 및 ASTC와 비슷하거나 그보다 더 나은 뛰어난 시각적 품질을 제공합니다. 높은 디테일의 텍스처, 노멀 맵, 시각적 품질이 가장 중요한 콘텐츠에 이상적입니다.

최적의 용도: 노멀 맵, 디테일 텍스처, 히어로 자산, PC/콘솔 애플리케이션

기본 범용 워크플로우

일반적인 Basis Universal 워크플로우에는 세 가지 주요 단계가 포함됩니다.

1. 소스 압축

ETC1S 또는 UASTC 모드를 사용하여 소스 텍스처(PNG, TGA 등)를 .basis 파일로 압축합니다. 이는 일반적으로 자산 구축 프로세스 중에 수행됩니다.

2. 런타임 트랜스코딩

애플리케이션 시작 또는 로드 시 .basis 파일을 대상 플랫폼에 가장 적합한 기본 형식(Android용 ETC2, iOS용 ASTC, Windows용 BC7 등)으로 트랜스코딩합니다.

3. GPU 렌더링

GPU의 기본 텍스처 압축 하드웨어와 함께 트랜스코딩된 텍스처 데이터를 직접 사용하여 최적의 성능을 보장합니다.

베이시스 유니버셜의 장점

단일 자산 파이프라인

다양한 플랫폼에 대해 여러 텍스처 형식 버전을 유지할 필요가 없습니다.

패키지 크기 감소

여러 형식 변형을 배송하는 것과 비교하여 훨씬 작은 애플리케이션 패키지

낮은 대역폭 사용량

다운로드 속도가 빨라지고 데이터 사용량이 줄어듭니다. 특히 웹 및 모바일 애플리케이션에 중요합니다.

플랫폼 유연성

소스 텍스처를 다시 압축하지 않고도 새로운 플랫폼을 쉽게 타겟팅할 수 있습니다.

제한 사항 및 고려 사항

트랜스코딩 오버헤드

텍스처 로딩 중에 약간의 성능 비용이 추가되는 런타임 트랜스코딩이 필요합니다.

압축 손실

모든 손실 압축과 마찬가지로 압축되지 않은 텍스처에 비해 약간의 품질 손실이 있습니다.

메모리 요구 사항

트랜스코딩에는 압축된 데이터와 트랜스코딩된 데이터 모두에 임시 메모리가 필요합니다.

통합 복잡성

Basis Universal 라이브러리와 런타임 트랜스코딩 코드의 통합이 필요합니다.

이상적인 사용 사례

WebGL 애플리케이션

단일 파일 배포와 빠른 로딩이 중요한 웹 기반 3D 애플리케이션에 적합합니다.

크로스 플랫폼 모바일

단일 텍스처 파이프라인으로 Android와 iOS를 모두 대상으로 하는 모바일 앱에 이상적입니다.

Web3 및 블록체인 게임

자산 규모와 전송 속도가 중요한 블록체인 기반 게임에 탁월합니다.

다중 플랫폼 게임

여러 플랫폼과 앱 스토어를 대상으로 하는 게임의 자산 관리를 단순화합니다.

기본 범용 및 기타 형식

Basis Universal을 기존 접근 방식과 비교하는 방법:

전통적인 접근 방식

다양한 형식 변형 출시(Android용 ETC2, iOS용 ASTC, Windows용 BC7) → 더 큰 패키지 크기, 복잡한 자산 파이프라인

기초 보편적 접근 방식

단일 .basis 파일 배송 → 최적의 형식으로 런타임 트랜스코드 → 더 작은 패키지, 더 간단한 파이프라인

저장 공간: 텍스처 저장 요구 사항 50-80% 감소

대역폭: 다운로드 대역폭 50-90% 감소

빌드 시간: 단일 압축 단계로 더 빠른 빌드

품질: 기본 형식과 비교할 수 있는 시각적 품질

모범 사례

  • 파일 크기가 중요한 대부분의 확산 텍스처 및 UI 요소에는 ETC1S 모드를 사용합니다.
  • 시각적 품질이 중요한 노멀 맵, 디테일 텍스처 및 영웅 자산에 UASTC 모드를 사용하세요.
  • 차단을 방지하기 위해 애플리케이션 시작 시가 아닌 자산 로딩 중에 텍스처를 트랜스코딩합니다.
  • ETC1S와 UASTC 모드 중에서 선택할 때 대상 플랫폼 압축 형식을 고려하십시오.
  • 시각적 품질이 요구 사항을 충족하는지 확인하기 위해 대상 플랫폼에서 트랜스코딩된 텍스처를 테스트합니다.
  • 동일한 자산의 반복적인 트랜스코딩을 방지하기 위해 가능한 경우 트랜스코딩된 텍스처를 캐시하세요.

결론

Basis Universal은 텍스처 압축 기술의 획기적인 발전을 나타내며 다양한 플랫폼에서 여러 텍스처 형식을 관리해야 하는 오랜 문제를 해결합니다. 범용 트랜스코딩 접근 방식은 패키지 크기 감소부터 자산 파이프라인 단순화까지 기술적, 비즈니스적 이점을 모두 제공합니다.

크로스 플랫폼 애플리케이션, 웹 기반 환경, 다운로드 크기와 대역폭이 중요한 시나리오의 경우 Basis Universal은 시각적 품질이나 성능을 저하시키지 않는 강력한 솔루션을 제공합니다. 그래픽 산업이 크로스 플랫폼 개발을 향해 계속 이동함에 따라 Basis Universal과 같은 도구는 효율적인 텍스처 관리를 위해 점점 더 필수적이 될 것입니다.

추가 자료 및 자료

다음과 같은 권위 있는 리소스를 통해 지식을 확장하세요.

우리의 도구를 사용해 보세요