프로젝트 소개
Filament은 Google이 개발한 실시간 물리 기반 렌더링(PBR) 엔진으로, Android, iOS, Linux, macOS, Windows 및 WebGL 2.0/WASM을 통한 웹을 대상으로 합니다. 특히 Android에서 작고 효율적으로 설계되었으며, 런타임 라이브러리와 호스트 측 에셋 도구를 포함하는 안정적인 릴리스 아카이브로 배포됩니다.
언어 바인딩 및 API:
- Android, iOS, Linux, macOS 및 Windows용 네이티브 C++ API
- Android용 Java/JNI API
- 웹용 JavaScript API
그래픽 백엔드에는 OpenGL 4.1+(데스크톱), OpenGL ES 3.0+(모바일), Metal(macOS/iOS), Vulkan 1.0, WebGPU 및 WebGL 2.0이 포함됩니다.
렌더링 기능은 클러스터형 순방향 렌더러, Cook-Torrance 반사 및 Lambertian 확산 BRDF, 사용자 정의 조명/표면 셰이딩, HDR/선형 조명, 금속성 워크플로우, 클리어 코트, 비등방성 조명, 근사 서브서피스/반투명 재질, 천/광택 셰이딩, 법선 및 앰비언트 오클루전 매핑, 이미지 기반 조명, 물리 기반 카메라, 물리적 광 단위, 점/스팟/방향성 조명, 반사 안티앨리어싱, 다양한 그림자 기법(PCF, DPCF, PCSS, EVSM, 캐스케이드, 접촉, 투명), 스크린 스페이스 앰비언트 오클루전, 반사 및 굴절, 전역 안개, AMD FidelityFX FSR 지원을 포함한 동적 해상도를 다룹니다.
후처리 기능에는 HDR 블룸, 피사계 심도 보케, 여러 톤 매퍼(GT7, PBR Neutral, AgX, ACES, 필름릭, 제네릭), 색상/톤 관리 및 그레이딩, TAA/FXAA/MSAA 안티앨리어싱, 스크린 스페이스 렌즈 플레어가 포함됩니다.
엔진에는 임베디드 및 바이너리 인코딩, 점/선/삼각형 프리미티브, 변환/모프/스킨/조인트 애니메이션, KHR_draco_mesh_compression, KHR_lights_punctual, KHR_materials_clearcoat, KHR_materials_transmission, KHR_materials_volume, KHR_texture_basisu, KHR_texture_transform 및 EXT_meshopt_compression과 같은 많은 확장을 지원하는 glTF 2.0 로더가 포함됩니다.
재질은 `matc` 재질 컴파일러로 컴파일되는 재질 시스템을 통해 작성되며, 문서에는 재질 모델 및 사용자 정의 재질 작성이 포함됩니다. 저장소에는 이미지 기반 조명 생성을 위한 `cmgen`, 메시 변환을 위한 `filamesh`, `mipgen`, `matinfo`, `matedit`, `glslminifier`, `resgen` 및 `libiblprefilter`를 포함한 지원 라이브러리와 도구도 함께 제공됩니다. 데스크톱, Android 및 iOS용 샘플 애플리케이션은 엔진 초기화, 스왑 체인 생성, 씬/뷰/카메라 설정 및 렌더링 루프를 보여줍니다. CC0 텍스처 및 환경 맵과 같은 에셋이 시작을 위해 제공됩니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.