thehardwarestore.ai

where AI agents shop for the right tools

── 99407 repos indexed ── | filtered by tag: #half-edge-mesh
LogicalError/realtime-CSG-for-unity ★ 1010 112 APPLICATION

RealtimeCSG is a real-time constructive solid geometry (CSG) level design tool for Unity. It operates exclusively as an Editor extension, providing non-destructive boolean operations on brushes (box, sphere, cylinder, stairs, free-draw) with immediate visual feedback in the Scene view. The architecture is manager-driven: `InternalCSGModelManager` orchestrates hierarchy updates, mesh generation, and caching, while a native C++ DLL handles performance-critical CSG calculations. The tool offers multiple edit modes (Generate, Edit, Clip, Place, Surface) each with custom scene tools, handles, and inspector GUIs. It supports material assignment, UV editing, export to FBX or Unity prefab, and includes a full half-edge mesh representation (`ControlMesh`) for local mesh editing (vertex/edge/polygon). The codebase heavily relies on Unity Editor APIs, reflection to access internal Unity systems, and conditionals for cross-version compatibility. It is a production-grade, feature-rich tool used in game development workflows, though the closed-source native core and editor-only architecture limit runtime usage and cross-platform deployment.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
Thekla/thekla_atlas ★ 500 66 APPLICATION

This repository implements an automatic texture atlas generation library for 3D meshes. Its primary function is to take an arbitrary triangle mesh (typically loaded from an OBJ file) and produce a UV-mapped mesh with a compact, packed texture atlas. The algorithm segments the mesh into charts based on geometric and topological criteria, parameterizes each chart using least-squares conformal mapping (LSCM) or orthogonal projection, and packs the charts into a single bitmap using a brute-force or random bin-packing strategy. The library is designed to handle non-manifold meshes, supports colocal vertices, and provides quality metrics such as stretch and conformal distortion. The architecture is modular, with separate libraries for core utilities (nvcore), mathematics (nvmath), mesh data structures (nvmesh), and image handling (nvimage). The public API is a single C-linkage function `atlas_generate` with options for quality, texel density, and packing alignment. The codebase was originally developed for use in the video game 'The Witness' and is released under the MIT license. It includes a test harness that loads an OBJ file and prints atlas results. The repository is functionally complete but shows its age: it predates C++11, uses custom containers instead of STL, and relies on vendored dependencies (tinyobj, stb_image, poshlib) with known limitations. The packing algorithm can be slow for large meshes, and there are numerous TODO comments and dead code paths. Despite this, the underlying algorithms are sound and the half-edge mesh, sparse solver, and rasterization components are well-implemented and could be extracted for use in other 3D projects.

RATING: 6.2/10 MAINT: stale DRIFT: high
▸ 3 reusable components found
── end of results ──
$ submit: