mercredi 10 février 2010

Comment Compiler Blender 2.5

Comment et pourquoi compiler Blender soi même ?
Tout simplement pour avoir les dernières avancées vu qu'il y a des mises à jour chaque jour sur le SVN et avoir un Blender 2.5 optimisé pour son PC !

Nul besoin d'être développeur pour compiler Blender sous Ubuntu

Je vous propose une modeste description de la procédure à appliquer pour le compiler avec SCons sous la Karmic Koala 9.10 et la Lynx Lucid 10.04.


Vous pouvez télécharger ce mini tutoriel au format pdf ICI

Vérifiez aussi que le dépendances n'ont pas évoluées, ça va tellement vite :
Sur DevDoc BlenderWiki : Installing Dependencies
Si vous n'y arrivez pas pour cause de bug et que vous ne pouvez pas les résoudre, attendez que d'autres versions du SVN soient "clean"

Vous pourriez aussi avoir un problème avec la FFMPEG que seriez obligé de compiler !
Procédure de compilation de FFMPEG

Si ça ne marche où pas, laissez moi un commentaire ! Merci !

Le 17/05/2010
Mise à jour du tutoriel ICI suite aux évolutions de Blender !

Have fun !

10 commentaires:

  1. Bonjour,

    Et bien rien à faire, impossible de compiler Blender : tout se déroule bien en suivant les instructions du didactitiel, sauf pour la dernière ligne où rien ne se passe, mise à part l'invite de commande qui apparait à nouveau dans le terminal. Pourtant tout est bien présent dans mon dossier personnel, j'arrive à faire l'update des sources également... Mais impossible de compiler... Tant pis, j'utilisais Graphicall jusqu'à présent, les versions de Fish fonctionnent très bien chez moi.
    Votre compilation de Blender fonctionne également parfaitement sur mon pc poussif à base de p4 1.8 et gforce ti4200... Humm !!!

    Merci pour votre blog que je visite très régulièrement, amicalement, Christian

    RépondreSupprimer
  2. Bonjour,

    Merci pour le commentaire !
    Je pense que tu as peut être fait une compilation qui a foiré !
    Regarde dans le répertoire : /blender-svn/blender, tu dois avoir un script nommé : user-config.py ! supprime-le !
    C'est lui, si les indications qu'il contient ne sont pas bonnes qui doit poser problème

    Il sera recréé quand tu relanceras la commande :

    echo "BF_OPENAL_LIB = 'openal alut'" >> user-config.py
    python scons/scons.py

    Puisque c'est la première partie qui crée ce script !
    Normalement ça doit marcher ! Tiens moi au courant !

    Je vais ajouter ce petit problème dans le PDF.

    Satisfait que ma compilation fonctionne sur ta machine !

    @++

    RépondreSupprimer
  3. Merci pour ta réponse.

    Non, décidément, rien à faire, ça ne fonctionne toujours pas. J'avais déjà essayé en suivant d'autres procédures, mais aussi sans succès. Il faut dire que je connais trés peu ubuntu, je dois donc louper quelquechose...

    Au plaisir de te relire, Christian

    RépondreSupprimer
  4. Il n'y a pas de quoi !
    Mais bon, c'est bizarre !
    As-tu réussi à le compiler une fois ?
    As-tu un message ?
    Dans ce cas poste-le !

    Supprime le script user-config.py qui se trouve dans le répertoire /blender-svn/blender

    Quand tu tape echo "BF_OPENAL_LIB = 'openal alut'" >> user-config.py
    Il écrit le fichier user-config.py
    Ensuite quand tu tape
    python scons/scons.py il lance la compilation
    Vérifie aussi que le script scons.py est présent, c'est lui qui pilote la compilation.

    Regarde aussi si toutes les Librairies du début de la procédure sont présentes en faisant une recherche sur leur nom !

    Il faut savoir que si il y a un problème d'espace entre les caractères, ou de "casse". ça pose problème !

    Je viens de compiler la révision 26859 et aucun problèmes !

    Reprend toute la procédure de compilation pas à pas si tu n'y arrive pas sans télécharger les sources puisque tu les as déjà ! Met les seulemnet à jour en tapant svn up !

    En fait sous Ubuntu, nul besoin de bien le connaître, mais il ,faut appliquer les procédures à la lettre !

    Pour récapituler les causes possibles :
    Il pourrait manquer une librairie ! (celles qui ont été installées au début)
    La commande de compilation est mal "formatée"
    Le script user-config.py n'est pas bon

    ça devrait marcher !!

    Bon courrage
    @++

    RépondreSupprimer
  5. Super, ça fonctionne, j'ai juste remarqué une erreur de frappe dans ton pdf et c'est peut-être ça qui bloquait avant : dans l'étape 2, la troisième ligne pour la récupération des dépendences commence par un "S" majuscule au "sudo", et ça me renvoyait un message d'erreur, avec la minuscule, ça marche.
    Encore une différence dans l'étape 6, je ne sais pas pourquoi, le dossier final "linux2" se trouve dans /home/mon_nom/blender-svn/install/.

    Vraiment merci pour ta patience et ta persévérance, bien amicalement, Christian

    PS Je suis obligé de partir quelques jours, mais à mon retour me permettras-tu de te poser une question au sujet de Blender, à laquelle je n'ai pas trouvé de réponse claire ?

    RépondreSupprimer
  6. Salut,
    Désolé pour l'erreur de frappe, je viens de vérifier et effectivement, problème !!
    Mais normalement dans le Terminal, il t'aurait signifié cette erreur !
    Je corrige le pdf, comme je l'ai signifié, personne n'est à l'abri d'une erreur de frappe et merci pour ta remarque sur ce point !

    Content que tu ai pu réussir finalement à compiler Blender !

    C'est normal que les fichiers sortent dans le répertoire install
    Je corrige le pdf

    Alors, maintenant, tu n'as plus qu'a mettre à jour les sources en tapant svn up
    Et lancer la compilation avec :
    python scons/scons.py

    Je pense que c'est le premier programme que tu compile sous Ubuntu ! C'est super Ubuntu pour ça !

    Merci encore pour ton commentaire !

    Oui, tu peux me poser toutes les questions que tu veux et si je peux y répondre, je le ferai avec joie !

    @++

    RépondreSupprimer
  7. Bonjour, merci pour tes réponses.

    Juste pour info, j'ai réinstallé Ubuntu et maintenant les versions de Fish que je téléchargeais sur Graphicall ne fonctionnent plus, même après avoir installé les librairies que tu préconises dans ton pdf... Tant pis, je compile maintenant directement, merci à toi :-) Par contre c'est long...
    Pour les dernières versions de blender alpha 1, la compilation c'est arrétée trois fois, j'ai du installer trois nouvelles librairies : libswscale-dev libavdevice-dev et libavformat-dev, et là tout fonctionne parfaitement.

    Voilà la question que je voulais te poser : admettons que j'extrude plusieurs faces aléatoires sur une sphère. Ces faces extrudées et toujours sélectionnées, je peux les "scaler" selon leur normales, mais je n'arrive pas à leur imposer une rotation autour d'un axe aligné sur leur normale ou bien leur imposer un déplacement dans la direction de leur normale, alors que c'est tout à fait possible en sélectionnant chaque face individuellement. J'ai me semble-t-il épuisé toutes les combinaisons "Pivot Center" et "Transformation Orientation", alors peut-être est-ce tout simplement impossible ? Peut-être as-tu une réponse, j'ai été incapable d'en trouver une sur internet ?

    Merci pour ta patience, Christian

    RépondreSupprimer
  8. Bonjour,
    Tu l'as dit, ça évolue tellement vite, il y a en particulier la FFMPEG qui pose problème actuellement !
    De nouvelles bibliothèques sont à intégrer dans les dépendances -->http://wiki.blender.org/index.php/Dev:Doc/Building_Blender/2.5/Linux

    Il y a aussi des versions sur le SVN qui sont bugguées, c'est normal et il faut faire remonter les Bugs ou attendre que la correction soit faite !
    A priori ils utilisent la dernière version FFMPEG qu'il faut compiler !

    Tu as vu que la version 2.50 alpha 1 est disponible sur la BF et avec le drag and drop, s'il vous plaît !!

    Maintenant, le SVN est fait pour donner le code à disposition aux développeurs de la communauté pour qu'ils compilent et fassent remonter les bugs, quand ça marche, ça va pour ceux qui ne veulent pas trop rentrer dans le détail !
    C'est sur que dans le cas ou on y arrive pas, il faut trouver une version compilée qui fonctionne pour ton environnement sur Graphicall.

    Pour ta sphère, choisi le pivot qui te convient (par exemple Individual Centers ou autre suivant ce que tu veux obtenir)et sélectionne quand tu appuie sur E, dans le menu extrude : Individual Faces au lieu de Only Edges. Si j'ai bien compris ce que tu veux faire : Extruder individuellement et faire tourner les Faces individuellements !
    On peut le faire avec Blender.

    @++

    RépondreSupprimer
  9. Merci encore une fois pour ta réponse, mais ce n'est pas à ça que je pensais : je me demande s'il est possible de sélectionner plusieurs faces et de leur imposer en une seule action une rotation idépendante perpendiculairement à leurs normales, ou bien de déplacer toutes les faces en même temps, mais dans la direction de leurs normales ? Ca fonctionne pour le scale, mais pas pour la rotation ou le déplacement.
    J'ai trouvé ça qui pourra peut-être t'aider à comprendre ma question : http://www.siteduzero.com/tutoriel-3-153279-les-principaux-outils-de-modelisation.html en faisant un recherche sur la page avec "une rotation indépendante".

    Mais surtout ne t'embète pas, c'est déjà très sympa de m'avoir aidé pour la compilation de Blender.

    Merci, Christian

    RépondreSupprimer
  10. Il n'y a pas de quoi, si on peut s'aider mutuellement, on le fait !

    Donc par rapport au lien que tu as envoyé, on peut faire tout ça avec Blender !
    Je viens de le faire pour ne pas raconter de bêtises !
    On peut extruder des faces individuelles sur une sphère ou autre !
    Il faut bien comprendre que les extrusions se font par rapport au point de pivot, donc il faut choisir le bon.

    La seule chose qu'il faut faire, c'est de sélectionner après avoir appuyé sur E : Individual Faces a la place de Edge Only dans le menu !
    Quelques fois quand l'axe contraint d'extrusion apparaît, il suffit de faire ESC pour annuler l'extrusion et ensuite de la scaler ou les déplacer suivant les axes souhaités !
    Pour les scales, on peut contraindre sur un axe ou deux, dans ce dernier cas il faut faire S+X+SHIFT+Y par exemple et tu doit voir deux axes contraints apparaître.

    Mais bon, j'ai fait une extrusion sur des faces sélectionnées a partir d'une sphère en Individual Faces et je les ai fait tourner, scaler sans problèmes toutes ensembles.

    Une petite précision, si tu utilise Median Point comme pivot, il faut que le centre de gravité soit au centre de la sphère puisque dans ce cas là, l'extrusion se fera à partir de ce centre.
    Si c'est le curseur 3D, l'extrusion se fera à partir de celui-ci.
    Tu peux aussi choisir Individual Centers

    Donc, c'est sûr qu'il faut comprendre qu'une extrusion, un scale... Ce fait à partir d'un point de référence qui est appelé Pivot. Ensuite il faut choisir la bonne option dans le menu d'Extrusion et dans ton cas, c'est Individual Faces.

    Donc, tu ne dois pas avoir de problèmes pour le faire !

    @++

    RépondreSupprimer