J'ai trouvé plusieurs façons de convertir un modèle 3D en sculpture Lego. Le premier est un programme appelé Dolphin Brickr. Cela fonctionne très bien, comme vous pouvez le voir sur cette image de Yoshi:
L'inconvénient de ce programme est qu'il ne fonctionne que sur Mac, strike> Cela fonctionne à la fois sur Windows et Mac maintenant et le format de sortie est une série d'images, une pour chaque couche. Vous ne pouvez donc pas l'importer dans MLCAD ou votre logiciel de construction Lego préféré. Je cherchais quelque chose qui utilise le format .ldr.
Un autre programme est LSculpt. Cela a bien fonctionné mais je n'arrivais pas à obtenir d'excellents résultats. J'utilise un modèle 3D de Nautilus pour mes exemples. Voici une image des résultats de LSculpt:
La version noire a été créée à partir de LSculpt et la version bleue a été créée à l'aide de ma méthode alternative . Il convient également de mentionner qu'il existe une autre technique, un script 3ds Max appelé Legolizer. Malheureusement, je n'ai pas 3ds Max, donc ce n'était pas une option pour moi. Je voulais faire cela en utilisant uniquement des logiciels open source sous Windows. Voici comment procéder:
Étape 1 - Mettez votre modèle 3D à l'échelle
Vous devez réduire votre modèle d'un facteur de .833
. J'ai utilisé MeshLab et le processus qu'il décrit dans le manuel Dolphin.
Étape 2 - Convertir un modèle 3D en fichier binvox
Cela se fait en utilisant un programme appelé binvox.exe
. Vous pouvez en savoir plus et trouver le lien de téléchargement sur ce wiki minecraft. Tout ce que vous avez à faire est de télécharger binvox.exe
puis de copier votre modèle 3D dans ce dossier. Ouvrez l'invite de commande, cd
dans ce dossier, et exécutez une commande qui ressemble à ceci:
binvox nautilus.obj -d 128 -rotz -rotz
nautilus.obj
est le nom de mon modèle 3D, -d 128
spécifie la taille (128 x 128 x 128 voxels), et -rotz
et -rotx
feront pivoter le modèle. Vous devrez faire des essais pour obtenir la bonne rotation, sinon vos briques ne seront pas face vers le haut à la fin. Vous pouvez commencer par -d 32
pour accélérer le processus jusqu'à ce que vous ayez la bonne orientation, ce que vous ne découvrirez pas avant la fin. Le résultat de ceci est un fichier avec le nom nautilus.binvox
.
Étape 3 - Installez Cygwin (facultatif si vous savez ce que vous faites)
Je recommanderais d'installer cygwin pour les étapes suivantes, car c'est ce que j'ai utilisé, mais vous n'en avez pas nécessairement besoin. Vous avez juste besoin d'un moyen d'exécuter les programmes c ++
et Perl
. Lorsque vous l'installez, vous pouvez sélectionner des packages, assurez-vous d'installer le package nommé perl
et le package nommé gcc-g++
.
Étape 4 - Convertir le fichier binvox en un fichier txt lisible en utilisant read_binvox
Téléchargez ce programme appelé read_binvox. Assurez-vous qu'il est enregistré sous read_binvox.cc
. Copiez ensuite votre fichier .binvox
dans le même dossier. Ouvrez Cygwin et cd
dans ce dossier. Puis lancez
g ++ read_binvox.cc -o read_binvox
pour compiler le programme. Ensuite, vous pouvez l'exécuter avec
read_binvox nautilus.binvox
Cela créera un fichier de sortie appelé voxels.txt
.
Étape 5 - Convertissez voxels.txt
dans votre fichier .ldr
J'ai écrit un programme en Perl
qui convertira le voxels.txt
dans un fichier .ldr
. Créez un nouveau fichier nommé binvox2ldr.pl
dans le même répertoire que votre fichier voxels.txt
. Classez-le avec le contenu de ce pastebin.
Revenez ensuite à ce répertoire dans cygwin et exécutez la commande:
perl binvox2ldr.pl voxels.txt > nautilus.ldr
Cela peut prendre un certain temps, selon la taille de la sculpture. Le programme utilise un algorithme très basique pour combiner des briques ensemble. Il peut avoir des briques flottantes, donc je ne recommanderais pas simplement d'utiliser la liste de pièces de celle-ci et d'attendre un modèle sûr et parfait. Mais je pense que cela pourrait être un bon moyen de commencer la conception d'une sculpture. Le script pourrait certainement utiliser d'autres améliorations, mais c'est un début de base.
Étape 6 - Édition et rendu
Vous pouvez utiliser ces instructions de ldraw.org installer des outils pour éditer et rendre la sculpture. J'ai utilisé MLCAD pour changer la couleur, puis je l'ai rendue en utilisant POV-RAY. Voici à quoi il ressemble: