Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
**Nova3D** generates 3D assets as **executable construction procedures** rather than meshes. Instead of emitting a single fused surface, the pipeline writes Blender-native Python that compiles to a structured GLB with named, separately addressable parts, a real assembly hierarchy, joint pivots and PBR materials. The program is the source of truth; the mesh is its compiled output. The repository was created on **6 May 2026** and sits at roughly **494 stars and 48 forks**, with commits through 4 August and a Blender plugin release (**v1.0.1**) on 1 July. It is MIT-licensed with 3 contributors, published by RareSense. ## Why Code Instead of Mesh Diffusion-based generators — Meshy, Tripo, Rodin, TRELLIS — do image-to-3D and extract one merged isosurface mesh with no part boundaries. That output is fine to look at and awkward to work with: you cannot select the handle, restyle one component, or rig an articulation point, because none of those things exist as entities. CSG and OpenSCAD systems go the other way, guaranteeing clean solids but capping out on organic shapes, hierarchy and materials. Nova3D targets Blender's API as the generation surface, which the project argues is a strict superset of both. Prompt-to-code and image-to-code produce a logical named hierarchy, surgical edits — change the cup's handle without regenerating the cup — and proper PBR materials instead of baked vertex colours, while still reaching organic forms through Blender's modifier suite: subdivision, sculpting, booleans. ## What Comes Out | Property | Result | |---|---| | Parts | Every visually distinct component is its own named, watertight mesh | | Hierarchy | Named sub-assemblies wired into a labeled assembly tree | | Articulation | A joint pivot at every articulation point; rotating a pivot moves its whole subtree | | UVs | Each part gets its own chart, auto-packed into one non-overlapping atlas grouped by sub-assembly | | Constraints | Prompt-stated counts and dimensions hold up when measured back from the result | The README's robot-arm example exports as a **depth-7 kinematic chain** written by the program itself, where mesh generators export a flat list with nothing to grab or rig. Rigging is described as an additive code pass — joints reference parts the program already named, and existing geometry never moves. The distinction from post-hoc segmentation is the project's central claim: Nova3D never builds a fused mesh in the first place. The comparisons put PartCrafter at "a handful of unnamed chunks" and CubePart at needing the part names handed to it before slicing a finished mesh into capped, approximate regions. ## Positioning The repository leads with side-by-side comparisons against TRELLIS and Hunyuan3D, against NVIDIA PartPacker and Tripo for part-awareness, and textured plus wireframe renders against Meshy, TRELLIS.2 and TripoSG. The argument made is that explicit part structure is an added capability rather than a quality tradeoff, with claims of cleaner silhouette control and more coherent surface transitions even on single assets. Those comparisons are the vendor's own, presented on the vendor's terms, and should be read that way — but the wireframe contrast is structural rather than aesthetic: clean parts with visible internal structure versus dense isosurface meshes. That difference is not a matter of taste. The system is **model-agnostic**. Nova3D is a generation harness, not a model: OpenRouter, OpenAI, Anthropic and Gemini are swappable from the settings menu, and the pipeline handles validation and execution regardless of which LLM writes the code. ## Caveats **The generation backend is proprietary.** This is the important one. The MIT license covers the clients and integrations in this repository; the hosted backend that actually produces the code is closed-source. The `app/` directory is a Flutter/Dart web client that connects to the hosted Nova3D service, and there is no local backend to run. Anyone reading "open-source 3D generation" as "self-hostable" will be disappointed — what is open here is the client surface and the MCP server. **Much of the repository is still promised rather than present.** The structure lists `blender-plugin/`, `claude-skills/`, `docs/` and `examples/` — the plugin has releases, but claude-skills, the architecture docs and the example gallery are all marked "coming soon." Surfaces are being moved in one at a time. **Code-native generation inherits LLM failure modes.** When the program is the artifact, a model that writes subtly wrong Blender Python produces a subtly wrong asset. The pipeline validates and executes, but the ceiling on structural correctness is the ceiling of whichever model is wired in. **It is a small project with a commercial parent.** Three contributors, one open issue, and an engine shared with FormaNova for jewelry CAD. The open clients exist to drive a hosted service, which is a legitimate model but sets the roadmap. ## Verdict The idea worth taking seriously is representational: most AI 3D generation optimizes for how an asset looks on arrival, and Nova3D optimizes for what you can do with it afterwards. Named parts, an assembly tree and joint pivots are what separate a render from a production asset, and generating them directly is a cleaner path than segmenting a fused mesh after the fact. Technical artists and pipeline engineers who need assets that stay editable — game props, CAD-adjacent work, anything that has to be rigged or articulated — should look at the output structure and judge it against their own tooling. Anyone evaluating it as self-hosted infrastructure should start with the closed backend, not the feature list.
graphdeco-inria
Original reference implementation of 3D Gaussian Splatting for real-time radiance field rendering
ahujasid
Connect Blender to Claude AI via MCP for natural-language-driven 3D scene creation and manipulation.
Tencent Hunyuan
Tencent's open-source diffusion system that turns a single image or text prompt into high-resolution, textured 3D assets.