A shared-source library for creating and packing isochart texture atlases for 3D mesh parameterization.
UVAtlas is a shared-source library for creating isochart texture atlases, which are used to parameterize 3D meshes for texture mapping. It partitions meshes into charts with minimal stretch distortion and packs them into a texture atlas, optimizing for graphics rendering. The library implements research from Microsoft on stretch-driven mesh parameterization using spectral analysis.
Graphics programmers, game developers, and researchers working on 3D mesh processing, texture mapping, or real-time rendering pipelines, particularly those using DirectX or Windows-based development environments.
Developers choose UVAtlas for its implementation of proven academic research (isocharting) that minimizes texture distortion, its integration with Windows graphics toolchains, and its availability as a shared-source alternative to proprietary mesh parameterization tools.
UVAtlas isochart texture atlas
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements spectral analysis-based isocharting from Microsoft Research, proven to minimize texture stretch distortion for high-quality mapping, as cited in the README.
Designed for Visual Studio, Windows SDK, and DirectX, making it a seamless fit for Windows-based graphics pipelines without legacy DirectX SDK dependencies.
Computes IMT from vertex, texture, and per-texel signals, allowing optimization for diverse texture mapping scenarios, as detailed in the key features.
Includes UVAtlasTool for direct mesh file processing, supporting formats like SDKMesh and OBJ, which aids in automation and integration into build pipelines.
Explicitly marked as archived and not recommended for new projects, meaning no new features, updates, or active support, limiting its future viability.
Requires specific versions of Visual Studio, CMake 3.21+, and Windows SDK, with noted breaking changes like typed enum flags, complicating setup and migration.
Primarily Windows-focused; while it can build on WSL with GCC, native Linux or macOS support is lacking, hindering broader adoption.
Documentation is hosted on a GitHub wiki and may be incomplete or outdated for a legacy project, making it harder for new users to troubleshoot.