-
Notifications
You must be signed in to change notification settings - Fork 320
Legal IP License Information
Basis Universal™ is a trademark of Binomial LLC.
Khronos® and Vulkan® are registered trademarks, and KTX™ and WebGL™ are trademarks of The Khronos Group Inc. ASTC is a trademark of ARM Holdings PLC. All other product names, trademarks, and/or company names are used solely for identification and belong to their respective owners.
Basis Universal uses texture compression formats or technologies created by several companies: ARM Holdings, AMD, Ericsson, Microsoft, and Imagination Technologies Limited. All are supported by various open standards or API's from The Khronos Group, such as OpenGL 4.5, WebGL, OpenGL ES, or Vulkan.
A few texture formats (such as AMD/ATI's ATC texture format, or PVRTC2) were not documented sufficiently by the originator of the format. In these cases, we relied on open source code references from other authors, or information in published articles/papers to implement support for those texture formats in our transcoder. These references are included here.
ASTC usage falls under the astc-encoder Apache 2.0 license.
PVRTC1/2: See the PVRTC Specification and User Guide (alternate URL). Imagination Technologies Limited, 23 Nov 2018. Also see the Khronos Data Format Specification. See PVR Texture Compression Exploration and PvrTcCompressor (github link). Also see Texture Compression Techniques.
ETC1 and ETC2 EAC: See the Khronos Data Format Specification and the OpenGL 4.5 Core Profile Appendix C.
BC1-5,7: Part of Microsoft's Direct3D API technology. See Texture Block Compression in Direct3D 11. Also see the squish library.
ATC: See the OpenGL extension GL_AMD_compressed_ATC_texture. For low-level ATC texture format information, see S3TConv and the paper A Method for Load-Time Conversion of DXTC Assets to ATC.
FXT1: See the OpenGL extension GL_3DFX_texture_compression_FXT1.
Also see Intel(R) Open Source HD Graphics Programmers' Reference Manual (PRM) (or on archive.org here). This reference manual details the memory bit formats for FXT1, ETC1, ETC2, EAC, DXT/BC1-3, BC4/5/7, and ASTC.
Basis Universal's KTX2 transcoder and encoder utilize Zstandard, a stable lossless compressed file format defined by IETF RFC 8478. The Zstandard library uses the BSD license and is Copyright (c) 2016-present, Facebook, Inc.
See the DDS Programming Guide and the KTX File Format.