Aprenda a instalar o PBRT no Ubuntu
- 7 Comment
O PBRT (Physically Based Rendering) é um programa Open Source que utiliza o algoritmo Ray-Tracing para criar imagens tridimensionais realistas. As imagens resultantes deste algoritmo podem ser extremamente realistas dado que o algoritmo referido anteriormente tenta simular o verdadeiro funcionamento de uma fonte de luz das reflexões dos objectos que interajam com essa luz. Este artigo tem como objectivo ajudar a instalar este software que é utilizado por muitos estudantes de computação gráfica.
Para ter uma noção melhor do que é Ray-Tracing, aconselho a visitar a página da Wikipedia que explica em que consiste este algoritmo:
Instalação do programa
Como não existe nenhum repositório para este programa, será necessário compilar o código fonte do PBRT. Para proceder à compilação e para poder ter o programa em perfeito funcionamento, é necessário instalar algumas dependências. Por isso, abra o terminal e escreva o seguinte para instalar os diversos pacotes necessários:
Depois de ter todos os pacotes necessários, precisa de fazer download do código fonte do programa. Clique aqui para fazer download do código fonte do programa e, de preferência, guarde o ficheiro na sua Pasta Pessoal para depois a configuração ser mais fácil. Depois de fazer download do ficheiro, abra o terminal na pasta onde o ficheiro foi guardado (se não sabe como fazer este passo visite este artigo) e escreva o seguinte para descompactar o ficheiro:
Agora que tem o ficheiro descompactado, entre na pasta:
Antes de proceder à compilação, deve mudar o Makefile corrigindo a localização das bibliotecas, ou seja, deve abrir a Makefile:
E deve substituir estas duas linhas:
EXRINCLUDE=-I/usr/local/include/OpenEXR
EXRLIBDIR=-L/usr/local/lib
Por estas duas:
EXRINCLUDE=-I/usr/include/OpenEXR
EXRLIBDIR=-L/usr/lib
Salve o ficheiro e feche o programa. Depois, no mesmo terminal, escreva o seguinte para proceder à compilação:
Agora que tem o programa compilado, convém ter um atalho para executar o programa, por exemplo, criar um atalho que baste escrever o seguinte no terminal e o programa execute:
Ora, para tal basta escrever dois comandos no terminal e o programa, nessa sessão do terminal, reconhecerá sempre esse comando. Esses dois comandos dependem da localização da pasta onde salvou e compilou o programa (no início do artigo disse para guardar o programa na Pasta Pessoal para este propósito). Assim, assumindo que a pasta está na Pasta Pessoal, os dois comando referidos são os seguintes:
Exemplo de execução do PBRT
Para experimentar o programa, precisa de uma cena para a poder compilar e, posteriormente, a poder visualizar. Assim, faça download deste ficheiro e abra o terminal na pasta onde o guardou (deve utilizar o terminal onde adicionou os dois “exports” referidos acima para poder utilizar o comando “pbrt” ou, então, se é um terminal novo, corra novamente esses dois “exports”). No terminal escreva o seguinte para descompactar e entrar na pasta:
Compile o ficheiro:
E por fim visualize o resultado:
Na pasta scenes existe vários ficheiros que podem ser compilados, o ficheiro buddha.pbrt é apenas um exemplo.
Referências
Homepage do PBRT;
Ray-Tracing na Wikipedia.
Artigos relacionados:
7 Comentários:
Trackbacks
-
Cláudio Novais diz:
Olá Mondragon,
Os links não precisam de ser executados na pasta pois você já está a escrever a localização da mesma. Quanto à biblioteca que estava a dar erro, peço desculpa, mas para pelo menos o jaunty jackalope, a biblioteca é diferente (libopenexr6) e por isso peço desculpa pelo sucedido, mas já está corrigido!
Para os utilizadores que tiverem problemas com a compatibilidade dos ficheiros com o unix, aconselho a instalar o pacote tofrodos:
sudo apt-get install tofrodosE, depois, para converter o ficheiro para unix basta executar o novo comando com o nome do ficheiro como argumento, por exemplo:
dos2unix cornell2.pbrt.txtAbraços.
Maio 27th, 2009 às 8:53 am -
Mondragon diz:
Bom, quando fui conferir os procedimentos, percebi que o pacote “libopenexr2ldbl” não havia sido encontrado. Então baixei daqui: http://packages.ubuntu.com/hardy/i386/libopenexr2ldbl/download
e fiz a compilação do arquivo. Até aí tudo certo. Porém não consigo executar de forma alguma. Todos os arquivos estão na pasta pessoal. Se esses links devem ser executados na pasta pessoal, então não sei de fato onde está o problema. Pois:root@mondragon-desktop:/home/mondragon# export PATH=$PATH:$HOME/pbrt-1.03/bin/
root@mondragon-desktop:/home/mondragon# export PBRT_SEARCHPATH=$HOME/mondragon/pbrt-1.03/bin/Ou os links devem ser executados dentro da pasta “pbrt-1.03″ que está dentro da pasta pessoal?
Maio 25th, 2009 às 3:15 pm -
Cláudio Novais diz:
Olá Lau,
Não sei qual será o problema, mas sei que o mais provável é estar relacionado com a programação da aplicação ou, então, a compilação falhou em algum módulo.
No entanto, experimente outro modelo, ou seja, em vez do buddha.pbrt, escolha o areapot.pbrt
Olá Mondragon,
Através desta mensagem de erro:
“bash: pbrt: comando não encontrado”
Você pode rapidamente concluir que o problema está no link. Você não deve ter feito bem o link para o programa e o terminal não está a reconhecer o comando pbrt. Ou seja, o problema deve estar nos EXPORTS.Pode, também, estar na compilação. Caso a compilação não tenha sido bem sucedida os exports tornam-se obsoletos e esse erro também aparece. Veja se aquando da compilação deu algum erro, caso nao tenha dado o problema está no caminho dos exports que não deve ser esse que você pôs…
Abraços.
Maio 23rd, 2009 às 2:25 pm -
Mondragon diz:
Seguindo as orientações, descompactei os arquivos na pasta pessoal e compilei. O mesmo com os arquivos SCENES. Porém, após criar os links para o programa. Já dentro da pasta scenes tentei compilar o ficheiro (pbrt buddha.pbrt), mas aparece o aviso:
root@mondragon-desktop:/home/mondragon/scenes# pbrt
bash: pbrt: comando não encontrado
A partir daí não avancei mais.
Uma pequena luz já me ajuda, pois estou começando a estudar Linux e portanto, visito este site com máxima frequencia. Grato.Maio 23rd, 2009 às 2:58 am -
Lau diz:
Quando rodo “pbrt buddha.pbrt” aparece:
pbrt version 1.030 of May 22 2009 at 12:02:47
Copyright (c)1998-2007 Matt Pharr and Greg Humphreys.
The source code to pbrt (but *not* the contents of the book) is
covered by the GNU General Public License. See the file COPYING.txt
for the conditions of the license.
Segmentation faulte nada mais acontece.
Sabe do que se trata?Valeu !!
Maio 22nd, 2009 às 3:36 pm -
Cláudio Novais diz:
Olá Lau,
Peço desculpa pelo erro. Isso não é um pacote, mas sim, dois pacotes. Faltou pôr um espaço entre os dois pacotes que são os seguintes: libilmbase6 e build-essential
Já corrigi o artigo, já pode voltar a correr a linha para instalar as dependências…
Abraço.
Maio 22nd, 2009 às 2:15 pm -
Lau diz:
Valeu pelo artigo Claudio mas não consegui achar esse pacote libilmbase6build-essential em nenhum lugar. Alguma dica?
Maio 22nd, 2009 às 1:56 pm



