Dlaczego AI potrafi wygenerować Super Mario, ale nie rampę dla robota sprzątającego?
Współczesne systemy generatywne AI bez trudu tworzą fotorealistyczne grafiki, piszą skomplikowane skrypty, a w środowiskach trójwymiarowych potrafią w kilka sekund wyrenderować bogatą w detale figurkę, taką jak Super Mario. Kiedy jednak użytkownik poprosi ten sam model o zaprojektowanie prostej, funkcjonalnej rampy klinowej, po której domowy robot sprzątający mógłby pokonać kilkucentymetrowy próg, technologia ponosi spektakularną porażkę. Rozdźwięk między generowaniem cyfrowej estetyki a inżynierią obiektów fizycznych stał się zarzewiem głośnej dyskusji technicznej, obnażającej fundamentalne ograniczenia przestrzennego rozumowania sztucznej inteligencji.
Przypadek Bambu P2S: gdy prompt zderza się z fizyką druku 3D
Impulsem do ponownego zdefiniowania problemu stał się projekt programisty o pseudonimie zhuchaokn, opisany na forum Hacker News oraz w repozytorium spec-3d-model. Autor zakupił popularną domową drukarkę 3D Bambu P2S. Nie posiadając specjalistycznej wiedzy z zakresu modelowania CAD, postanowił skorzystać z narzędzi określanych jako „opisz i otrzymaj model”.
Rezultaty okazały się bezużyteczne. Popularne generatory siatek 3D oparte na dyfuzji, takie jak Shap-E, Rodin czy Hunyuan3D, generują obiekty, które na ekranie monitora sprawiają wrażenie poprawnych, lecz w rzeczywistości stanowią niespójną powłokę wielokątów (tzw. triangle soup). Modele te są nieszczelne (błędy non-manifold), nie spełniają kryterium wodoszczelności bryły (watertight), nie trzymają skali metrycznej i uniemożliwiają jakąkolwiek parametryczną modyfikację grubości ścianki czy kąta nachylenia. Z kolei próby zlecenia modelom LLM bezpośredniego napisania kodu w języku Python do wygenerowania geometrii kończyły się zatrzymaniem na elementarnych prostopadłościanach i walcach.
Siatka wielokątów kontra B-Rep: dlaczego geometria to nie piksele
Podstawowa przyczyna tej niemocy tkwi w sposobie reprezentacji danych. Wizualne modele AI traktują przestrzeń trójwymiarową jak rozszerzenie dwuwymiarowego obrazu — operują na polach odległości (SDF), chmurach punktów lub gęstych siatkach trójkątów. Tymczasem w inżynierii mechanicznej standardem jest reprezentacja brzegowa B-Rep (Boundary Representation), zapisywana w formatach takich jak STEP.
Modele B-Rep definiują geometrię nie za pomocą przybliżonych wielokątów, lecz ścisłych równań matematycznych, krzywych NURBS, relacji geometrycznych (równoległość, współosiowość) oraz historii operacji parametrycznych. Dla algorytmu uczonego na obrazach zrozumienie tolerancji pasowania, naprężeń materiałowych czy dokładnego wymiaru w milimetrach stanowi barierę nie do pokonania.
| Cecha / Paradygmat | Generatory siatek (Text-to-3D) | Inżynieryjny Text-to-CAD (B-Rep / Kod) |
|---|---|---|
| Główny format wyjściowy | Siatka wielokątów (STL, OBJ, GLB) |
Bryła parametryczna (STEP) lub skrypt kodu |
| Struktura geometryczna | Przybliżona siatka trójkątów (triangle soup) | Analityczne powierzchnie B-Rep i krzywe NURBS |
| Weryfikacja wodoszczelności | Częste błędy topologiczne (non-manifold) | Deterministyczna geometria zdatna do druku (watertight) |
| Edytowalność wymiarowa | Niemożliwa bez zniekształceń modelu | Pełna zmiana parametrów w drzewie operacji |
| Główne zastosowanie | Grafika gier, wizualizacje, figurki (Super Mario) |
Części użytkowe, druk 3D FDM/CNC, prototypowanie |
Dane: Hacker News (wątek 49405520), repozytorium zhuchaokn/spec-3d-model oraz analizy systemów CAD/B-Rep
Dekompozycja geometryczna: zamiana wyobraźni przestrzennej na kod
Rozwiązaniem problemu okazuje się zmiana podejścia: odejście od prób zmuszenia modeli językowych do bezpośredniego „wyobrażania sobie” przestrzeni 3D na rzecz tego, w czym LLM radzą sobie najlepiej — generowania ustrukturyzowanego kodu.
Projekt spec-3d-model wdraża zasadę dekompozycji geometrycznej (geometric decomposition). Zamiast jednego ogólnego promptu, proces zostaje podzielony na etapy specyfikacji rzutów i operacji boolowskich. Agenty programistyczne, takie jak Claude Code, Codex czy Cursor, komunikują się z programem Blender (wersja ≥ 3.0) za pośrednictwem protokołu blender-mcp zarządzanego przez menedżer pakietów uv. W ten sposób agent buduje obiekt krok po kroku, weryfikując poprawność topologii.
Równolegle w środowisku inżynieryjnym rozwijają się narzędzia łączące modele językowe z profesjonalnymi jądrami CAD. W dyskusjach branżowych wskazuje się projekty takie jak Aetheris (narzędzie do tzw. vibe-CADing), vcad, a także skrypty wykorzystujące biblioteki CadQuery oraz build123d oparte na przemysłowym jądrze OCCT (Open CASCADE Technology). W segmencie komercyjnym zastosowanie znajdują skrypty FeatureScript w chmurowym środowisku Onshape, integracje z Autodesk Fusion oraz dedykowane modele geometryczne, takie jak BrepGen czy platforma Zoo.dev.
AI potrafi wygenerować Mario, ponieważ postać z gry wideo wymaga jedynie powierzchownego podobieństwa wizualnego. Rampa dla robota odkurzającego wymaga jednak dyscypliny inżynieryjnej, znajomości kąta natarcia, grubości ścianki pod obciążeniem i wodoszczelnej siatki. Dopóki modele nie połączą rozumienia tekstu z deterministycznym kodem jądra CAD, droga od promptu do działającej części fizycznej będzie wiodła przez kod parametryczny, a nie generatory obrazów.