Artificial Intelligence1 min read

Show HN: Agents infer Lego mechanisms from sources, then animate them

By · Published by Everything Blog

In short

The software inspects LDraw .mpd source files to reverse-engineer mechanisms and generate execution plans for movement. AI agents write custom Python scripts that assemble rigs in Blender to bring specific builds, such as minifigures and flatbed trailer cranes, to life. The system draws on insights from a prior model-generation initiative called LDraw Nova, which showed that file annotations clarify structural mechanics. Operating the workflow requires an environment with Python 3.12, Blender, and LeoCAD, keeping dependencies isolated locally to protect the host system.

Key points

  • The system automates 3D mechanical rigging by extracting kinetic behavior directly from a…: The system automates 3D mechanical rigging by extracting kinetic behavior directly from annotated Lego design files.
  • Developers maintain platform stability by isolating necessary software dependencies local…: Developers maintain platform stability by isolating necessary software dependencies locally inside the project repository.
  • Setup scripts currently support macOS users, while Linux and Windows configurations runni…: Setup scripts currently support macOS users, while Linux and Windows configurations running through WSL2 remain works in progress.

Sources checked by our analysis pipeline: 1

Give an LDraw LEGO© model to an AI agent, get back a Blender-animated version of it.

The agent will:

- Reverse-engineer (infer) the LDraw model's mechanics from its .mpd source code file 🤓

- Study the discovered mechanisms.

- Plan the interactions between their different mechanical components.

- And finally, turn those plans into python code for Blender, that will:

- Create the required rigs for controlling the different mechanisms.

- Animate them according to plan! 🤯

Note

The installation process will install every required tool and dependency locally on this project repo, in order to avoid polluting the host OS.

However, there is a requirement of setting several env vars on rc files, like e.g. .bashrc

or .zshrc

The installed dependencies, like e.g. Blender, are git-ignored by default.

You'll need Python 3.12+ installed.

System | Requirements |

---|---|

macOS | git-lfs (brew install git-lfs ) |

Linux, x86_64 (WIP, untested) | git-lfs, Blender and LeoCAD required graphics libs |

Windows (WIP, untested) | Run inside WSL2 (Ubuntu) |

Start by cloning the repo and running the setup script, pick…

Artificial Intelligence