Installation (sûrement il y a d'autres façon de faire, je documente juste ce que j'ai fait) :
Blender: J'ai utilisé une image blender précompilé, la version blender-2.81a-linux-glibc217-x86_64 qui est compilé avec Python 3.7m. J'ai utilisé la version que j'ai trouvé sur notre serveur mais je pense qu'on peut la télécharger sur le site de Blender.
Après unzip/tar-x de l'archive :
export PATH=~/blender-2.81a-linux-glibc217-x86_64/blender:$PATH
Installation de romidata et romiscanner avec virtualenv :
$ cd ~
$ virtualenv -p ~/blender-2.81a-linux-glibc217-x86_64/2.81/python/bin/python3.7m virtualenv_blender
$ source virtualenv_blender/activate
$ git clone https://github.com/romi/romidata.git
$ cd romidata
$ python -m pip install -e .
$ cd ..
$ git clone https://github.com/romi/romiscanner.git
$ cd romiscanner
$ python -m pip install -e .
$ cd ..
Pour résoudre deux problèmes avec le script romi_pby installé par setuptools :
$ export PATH=~/romiscanner/bin:$PATH
Edit ~/romiscanner/bin/romi_bpy et changer --python-use-system-env en -P
Base de données (fsdb) :
Dans la bdd, il faut un "scan" qui s'appelle vscan_data qui contient les filesets des images HRDI, de la palette de couleurs, des scenes (scenes???) [TODO].
Dans la bdd, dans le scan "myscan", il fait un fileset "data", avec les fichiers VirtualPlant_mtl.mtl et VirtualPlant.obj . Voici le files.json :
Run :
romi_run_task --config path/to/scan.toml VirtualScan path/to/db/myscan --local-scheduler
Pour lancer Blender sur une machine distante (sans display).
D'abord il faut récupérer l'adresse du bus PCI de la cart graphique :
$ nvidia-xconfig --query-gpu-info
Number of GPUs: 2
GPU #0:
Name : GeForce GTX 1080 Ti
UUID : GPU-51fd343f-5147-2f34-1f52-b47893a7ac6e
PCI BusID : PCI:59:0:0
Number of Display Devices: 0
GPU #1:
Name : GeForce GTX 1080 Ti
UUID : GPU-854e79c3-546c-f891-f6b4-58e4d60e33a8
PCI BusID : PCI:175:0:0
Number of Display Devices: 0
Créer un fichier config pour X (ça devrait être fait qu'une seule fois) :
$ sudo nvidia-xconfig --busid=PCI:175:0:0 --use-display-device=none --virtual=1280x1024
Lancer X :
$ sudo Xorg :1
(C'est probalement mieux de créer un fichier de config à part plutôt que d'écraser la config X existante de la machine (à tester) :)
Fichier de config pour Luigi :
Installation (sûrement il y a d'autres façon de faire, je documente juste ce que j'ai fait) :
blender-2.81a-linux-glibc217-x86_64
qui est compilé avec Python 3.7m. J'ai utilisé la version que j'ai trouvé sur notre serveur mais je pense qu'on peut la télécharger sur le site de Blender.export PATH=~/blender-2.81a-linux-glibc217-x86_64/blender:$PATH
virtualenv
:$ export PATH=~/romiscanner/bin:$PATH
Edit~/romiscanner/bin/romi_bpy
et changer--python-use-system-env
en-P
Base de données (fsdb) : Dans la bdd, il faut un "scan" qui s'appelle vscan_data qui contient les filesets des images HRDI, de la palette de couleurs, des scenes (scenes???) [TODO]. Dans la bdd, dans le scan "myscan", il fait un fileset "data", avec les fichiers
VirtualPlant_mtl.mtl
etVirtualPlant.obj
. Voici lefiles.json
:Run :
romi_run_task --config path/to/scan.toml VirtualScan path/to/db/myscan --local-scheduler
Pour lancer Blender sur une machine distante (sans display). D'abord il faut récupérer l'adresse du bus PCI de la cart graphique :
Créer un fichier config pour X (ça devrait être fait qu'une seule fois) :
$ sudo nvidia-xconfig --busid=PCI:175:0:0 --use-display-device=none --virtual=1280x1024
Lancer X :$ sudo Xorg :1
(C'est probalement mieux de créer un fichier de config à part plutôt que d'écraser la config X existante de la machine (à tester) :)Puis dans une autre console :