Archive:Calcul de rendu par la carte graphique avec Luxrender

De Centre de Ressources Numériques - Labomedia

(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher



Luxrender est un logiciel de rendu Open Sources, qui permet des rendus photo-réalistes. Un développement est en cours pour utiliser OpenCL et faire les calculs avec la carte graphique. Il s'intègre très bien et très facilement à Blender 2.50. Ce développement s'appelle LuxRays. Cette page décrit l'installation de Luxrender 0.7 sur Ubuntu 10.04 Lucid avec une carte ATI ou Nvidia, et l'utilisation dans Blender 2.55.

Ce qui est expliqué sur cette page a été mis à jour: Rendu avec LuxRender v0.8RC2 sur Ubuntu 10.10 avec OpenCL

Bibliographie

La doc Building on Linux

Les posts sur le forum luxrender

Luxrender_and_OpenCL

LuxRays

SmallLuxGPU

User documentation - Main Page

Installer les derniers drivers

La documentation FR sur les ppa. Les détails de ce dépôt. Mais est-ce vraiment nécessaire ? Oui, j'ai passé 4 h à chercher pourquoi ça ne marchait pas !

Dans Sources de logiciel, ajouter ppa:ubuntu-x-swat/x-updates puis aller dans Synaptic

ATI

Installer les derniers drivers ATI Catalyst: la doc ici http://wiki.cchtml.com/index.php/Ubuntu_Lucid_Installation_Guide#Ubuntu_X_Team.27s_PPA

Dans Synaptic, installer les paquet fglrx, qui sonr " Pouvant être mis à jour"

Nvidia

Récupérer l'exécutable

Le driver ne s'installe qu'en mode runlevel 3, sans serveur X !

http://www.ubuntugeek.com/howto-install-nvidia-drivers-manually-on-ubuntu-10-04-lucid-lynx.html

Installation de OpenCL SDK

Nvidia

Le SDK de Nvidia est installé avec les drivers

Coller le code (issu de cette page) dans gedit et enregistrer (nautilus en root) sous /usr/include/CL/cl.hpp

CUDA Toolkit CUDA SDK

http://mariosgaee.blogspot.com/2010/05/cuda-30-installation-on-ubuntu-linux.html

http://ubuntuforums.org/showthread.php?t=1534016

http://wiki.accelereyes.com/wiki/index.php/Installing_CUDA_Under_Ubuntu_10.04

ATI

La documentation ATI http://developer.amd.com/gpu/atistreamsdk/pages/default.aspx

Récupérer le fichier ati-stream-sdk-v2.2-lnx64.tgz et décompresser dans votre home, le fichier cl.hpp est dans ce dossier.

Vous trouverez un paquet .deb sur ce thread: http://forums.amd.com/forum/messageview.cfm?catid=390&threadid=125792&enterthread=y merci !!

Licence

Le .deb ajoute le fichier nécessaire.

Boost: La version de Lucid est 1.40, il faut 1.43

Récupérer les sources: http://sourceforge.net/projects/boost/files/boost/1.43.0/

<boost dir> est le dossier avec ./bootstrap.sh

cd <boost dir>
./bootstrap.sh --with-python-version=3.1
./bjam python=3.1 stage

Installation de luxrays et luxrender

Dépendances

sudo apt-get install build-essential cmake mercurial doxygen bison flex libboost-all-dev libfreeimage-dev libfreeimage3 libboost-dev libboost-thread-dev libboost-date-time-dev libboost-program-options-dev libboost-filesystem-dev libopenexr-dev libboost-iostreams-dev libboost-regex-dev libboost-serialization-dev libboost-wave-dev libtiff4-dev libpng12-dev glutg3-dev libxmu-dev libxmu-headers libxmuu-dev libXi-dev qt-sdk libglew1.5-dev

Récupérer les sources

Luxrays

hg clone http://bitbucket.org/luxrender/luxrays luxrays

Luxrender

hg clone http://bitbucket.org/luxrender/lux luxrender

Mise à jour des sources si vous avez déjà fait un clonage

cd luxrender
hg pull
hg update
cd ../luxrays
hg pull
hg update

Compilation de luxrays

Aller dans le dossier luxrays. Editer le fichier CMakeLists.txt

if(LUXRAYS_DISABLE_OPENCL)
   set(OCL_LIBRARY "")
else(LUXRAYS_DISABLE_OPENCL)
   find_path(OCL_INCLUDE_PATH NAMES CL/cl.hpp OpenCL/cl.hpp PATHS /home/pierre/ati-stream-sdk-v2.2-lnx64/include)
   find_library(OCL_LIBRARY OpenCL /home/pierre/ati-stream-sdk-v2.2-lnx64/lib/x86_64)

Ouvrir un terminal dans le dossier luxrays

BOOST_ROOT=/home/pierre/boost_1_43_0 cmake ./
make -j 4

L'exécutable est: /home/pierre/luxrays/bin/slg

Recommencer la compilation

Ouvrir un terminal dans le dossier luxrays

make clean

Recommencer à compiler

Compilation de luxrender

BOOST_ROOT=/home/pierre/boost_1_43_0 cmake ./
make -j 4 luxrender

Exporter Blender

Copier /home/pierre/luxrays/samples/smallluxgpu/blender/render_smallluxgpu.py dans /home/pierre/blender-2.55-beta-linux-glibc27-i686/2.55/scripts/io/ puis lancer Blender 2.55 dans le dossier /home/pierre/blender-2.55-beta-linux-glibc27-i686

Tuto détaillé ici sur l'utilisation du script: http://www.luxrender.net/wiki/index.php?title=Blender_2.5_exporter

Lancer Blender

En console,

export ATISTREAMSDKROOT=/usr/local
/home/pierre/blender-svn/install/linux2/blender

Le calcul en cours

Le calcul du rendu
Le calcul avec une ATI HD5750 Une image de la doc Luxrender

Slg 01.png Juniper est le nom de la série 5xxx chez ATI

OpenCL-smallluxGPU-v1.1-macpro.png


!!!!!Ca marche enfin !!!!!

Slg 02.png

Slg 03.png

Une image en 2 mn

Testscene.png

Quad Core 8200 2.33 GHz ATI HD5750 1024 Mo Ubuntu Lucid 64

GPU Workgroup = 128

Avg. samples/sec 2.43M Avg. rays/sec 4800K on 63.0K tris