PyTorch3D is a high-performance library for 3D deep learning, providing differentiable rendering, 3D geometry operations, and neural implicit scene representations. The core library offers efficient data structures for meshes, point clouds, and volumes, with packed/padded batching for variable-size inputs. It includes a full differentiable mesh renderer (rasterization, shading, blending), point cloud renderer (including the Pulsar CUDA backend), and an implicit rendering pipeline for NeRF-style models. The library also provides a comprehensive set of 3D operations (KNN, ball query, farthest point sampling, cubify, marching cubes, IoU for 3D boxes, point-mesh distances) and loss functions (chamfer distance, mesh laplacian smoothing, normal consistency). The architecture is modular: cameras, lights, materials, rasterizers, and shaders are composable components. The implicitron subpackage extends this with a configurable framework for novel view synthesis, featuring dataset providers (CO3D, ShapeNet, R2N2), ray samplers, raymarchers, view poolers, and evaluation metrics. Research projects (NeRF, implicitron trainer) demonstrate end-to-end training pipelines with Hydra/OmegaConf configuration. While primarily a library, the repository has strong research characteristics: it includes benchmark scripts, tutorials, and reproduction configs for multiple papers. The codebase is well-tested with over 100 test files, including numerical equivalence tests and benchmarks. Custom CUDA/C++ kernels ensure performance-critical operations are optimized. The library is designed for reuse, with a registry pattern for components, pluggable IO, and a flexible transform system.
glTF-Transform is a comprehensive SDK and CLI tool for processing, optimizing, and inspecting glTF/GLB 3D assets. It provides a rich property graph model (Document) for reading, editing, and writing glTF files, with full support for the glTF 2.0 specification and dozens of official extensions (KHR_materials_*, EXT_meshopt_compression, etc.). The library includes a broad set of transforms (compression, quantization, deduplication, welding, palette optimization, texture compression, etc.) that can be composed into custom pipelines. A command-line interface wraps all transforms for batch processing, and a viewer package provides real-time Three.js integration. Built as a monorepo with packages for core, extensions, functions, CLI, view, and docs, it demonstrates strong software engineering practices: property-graph architecture, extension system, observer patterns, and comprehensive unit/integration tests. Designed for both scripting in Node.js/Deno/Web and direct use from the command line.
CuMesh is a GPU-accelerated library for high-performance 3D geometry processing within the PyTorch ecosystem. It provides efficient CUDA implementations for mesh cleaning, decimation, remeshing, and UV unwrapping. The library centers around the CuMesh class which manages mesh data on GPU and exposes operations through PyTorch tensor interfaces. Key components include a QEM-based mesh simplification algorithm, narrow-band dual contouring remeshing, accelerated mesh clustering for UV unwrapping, and comprehensive mesh connectivity queries. The implementation demonstrates strong GPU programming practices with proper memory management, error checking, and efficient use of primitives like CUB for parallel operations.
PyMeshLab is a Python library that provides bindings to the core functionality of MeshLab, a mature C++ application for processing and editing large 3D triangle meshes and point clouds. The library exposes a MeshSet class that wraps hundreds of geometry processing filters (e.g., simplification, smoothing, Boolean operations, surface reconstruction, parameterization) via a dynamic method registration pattern—each filter becomes an method on MeshSet at import time. The architecture relies on a pybind11-based C++ extension module that communicates with MeshLab's filter plugins, VCG library, Eigen, and Qt. Users can load meshes in many standard formats (OBJ, PLY, STL, etc.), apply filters with typed parameters (including custom types like PercentageValue and Color), and export results. The project includes comprehensive documentation, automated tests with sample meshes, and cross-platform build scripts for Linux, macOS, and Windows. While the library is tightly coupled to the MeshLab submodule, its design patterns—such as dynamic filter registration and reusable parameter wrappers—demonstrate solid engineering for bridging C++ and Python.
This repository is a comprehensive C++ library and suite of command-line tools for mesh processing research, originally developed by Hugues Hoppe at Microsoft Research. It implements algorithms from several SIGGRAPH papers (1992–2003), including surface reconstruction from unorganized points, mesh optimization, progressive meshes, view-dependent refinement, subdivision surface fitting, spherical parameterization, and gradient-domain video looping. The core library, libHh, provides a rich set of reusable data structures (e.g., fixed-size vectors, D-dimensional grids, half-edge meshes, progressive mesh representations) and algorithms (spatial search, least-squares solvers, multigrid, image filtering, parallel patterns). The tools are designed as stream-oriented filters that read from stdin and write to stdout, enabling Unix-style pipelines for complex processing workflows. An interactive OpenGL viewer (G3dOGL) supports real-time rendering with level-of-detail and geomorph transitions. The build system supports multiple platforms (Windows, Linux, macOS via Cygwin/MinGW) using GNU make and Visual Studio, with optional dependencies on libpng, libjpeg, and ffmpeg for media I/O. The codebase is well-tested with a comprehensive suite of unit and integration tests, and includes numerous demo scripts that reproduce published research results.
SkinTokens is a research codebase for a novel 3D character rigging method (TokenRig) that learns a compact discrete representation (SkinTokens) for skinning weights. The system ingests 3D meshes with skeleton and skinning data (from ArticulationXL, VRoid Hub, ModelsResource), transforms them through a pipeline of augmentation, order arrangement, vertex group extraction, and sampling, then trains an FSQ-CVAE to compress skinning weights into discrete tokens. A Qwen3-0.6B-based autoregressive transformer (TokenRig) generates the full rig (skeleton hierarchy + skin tokens) as a single token sequence. The repo includes a Blender-based server for mesh loading and export, a Gradio demo, a CLI, and extensive data processing modules. The code is well-structured with dataclass-based configs, abstract interfaces, and modular design, but remains primarily a research artifact with some incomplete training implementations (e.g., TokenRig training_step raises NotImplementedError). Its hybrid nature leans strongly toward data research, as the core contribution is a learned representation and generative model for animation rigging.
geometry3Sharp is a comprehensive C# library for 2D/3D geometric computing and triangle mesh processing. It provides a rich set of data structures (dynamic mesh, spatial indices, graphs) and algorithms (mesh editing, remeshing, simplification, boolean operations, distance queries, implicit surfaces, hole filling, smoothing, deformation). The library also includes I/O for common mesh formats (OBJ, STL, OFF), numerical solvers (sparse CG, SVD, eigen), and utilities like parallel loops and memory-efficient containers. It is designed for integration into real-time applications and Unity via conditional compilation. While the codebase shows signs of long development with some incomplete features and deprecated APIs, it remains a powerful and well-crafted tool for geometry processing tasks.
UniTEX is a research-focused repository implementing a two-stage framework for high-fidelity 3D texture generation from arbitrary 3D shapes. Stage 1 uses LoRA-adapted Diffusion Transformers for multi-view texture synthesis, while Stage 2 employs a transformer-based Large Texturing Model (LTM) to predict Texture Functions in unified 3D space, bypassing UV mapping limitations. The repository integrates super-resolution (TSD_SR) for detail enhancement and provides tools for mesh processing, rendering, and texture reprojection. It includes training scripts, model architectures, and utility libraries, indicating its primary purpose is to support experimentation and reproduction of the CVPR 2026 paper's methodology rather than serving as a standalone end-user application.