9.3 Usando Mathematica para gerar arquivos do RenderMan

Adicionalmente aos comandos WriteOOGL e Geomview descritos acima, o pacote OOGL.m também define o comando WriteRIB que escreve um objeto gráfico 3D para um arquivo RenderMan RIB: WriteRIB[arquivo, nomegrafico] escreve nomegrafico para o arquivo chamado aquivo. RenderMan é um sistema de renderização comercial disponível a partir da Pixar, Inc., que pode produzir imagens de extremamente alta qualidade.

In[1] := <<OOGL.m

In[2] := <<Graphics/Polyhedra.m

In[3] := Graphics3D[Cube[]]

Out[3] := -Graphics3D-

In[4] := WriteRIB["cube.rib", %3]

Out[4] := -Graphics3D-

O comando acima gera o arquivo math.rib. O arquivo math.rib é um arquivo RIB pronto para renderização do objeto geométrico fornecido, usando uma posição de câmera padrão, iluminação, e o sombreador “plastic”. Em uma janela de shell, digite render cube.rib paa gerar o arquivo de imagem mma.tiff. Certamente, você precisa ter o RenderMan instalado para o comando funcionar. Um atalho para renderizar a partir de dentro do Mathematica é WriteRIB["!render", algumacoisa].

WriteRIb trabalha primeiramente convertendo o objeto gráfico do Mathematicao para o formato OOGL usando WriteOOGL e então chamando um o programa externo oogl2rib para converter o formato OOGL para o formato RIB. O programa oogl2rib recebe muitas opções que você pode especificar em uma sequência de caracteres como um opcional terceiro argumento a WriteRIb. A sequência de caracteres padrão de opção é " -n mma.tiff ", que indica que o arquivo RIB deve gerar um arquivo renderizado do tipo TIFF chamado mma.tiff. Uma opção particularmente útil é -g, que informa ao oogl2rib para converter somente o objeto geométrico em um fragmento RIB. Você pode nserir aquele fragmento dentro de um arquivo RIB completo de sua própria criação com posições de câmera e sombreamento de sua escolha, para aproveitar o poder completo do RenderMan.

O uso completo do oogl2rib é:

oogl2rib [-n nome] [-B r,g,b] [-w width] [-h height] [-fgb] [arquivoentrada] [arquivosaida]

Por padrão lê de stdin e escreve em stdout. Ou arquivoentrada ou arquivosaida pode ser -, que significa usar stdin/stdout. As opções são:

-n nome

Use nome para o nome do arquivo TIFF renderizado (o padrão é "geom.tiff") ou para a janela temporária (padrão "geom.rib").

-B r,g,b

Use cor de fundo (r,g,b). Cada intervalo de componente vai de 0 a 1. Padrão: nenhum.

-w largura -h altura

O quadro Renderizado irá ter largura por altura pixels.

-f

O arquivo RIB renderiza para uma janela temporária na tela ao invés de para o arquivo TIFF.

-g

Saída somente do objeto geométrico no formato RIB.

-b

Saída somente de um objeto clip Quick Renderman. Ignora -nBwhf.