Mecanismo de renderização 3D para renderização em lote offline de muitos modelos + mapas de textura?

StackOverflow https://stackoverflow.com/questions/9467499

  •  13-11-2019
  •  | 
  •  

Pergunta

Estou arquitetando um projeto que utilizará vários arquivos PNG que deverão ser renderizados a partir de modelos 3D de roupas (ainda não contratamos alguém para criar os modelos).Temos uma variedade de mapas de texturas (diferentes tipos e cores de tecidos, etc) que serão utilizados com os modelos (cada modelo pode ser renderizado diversas vezes, com texturas diferentes).No futuro, adicionaremos e alteraremos modelos e mapas de textura e precisaremos ser capazes de renderizar novamente automaticamente os PNGs sob demanda.

Então, estamos procurando:

  1. Um mecanismo de renderização 3D independente que pode ser executado na linha de comando.Deve aceitar um formato de entrada que possamos gerar facilmente com um script personalizado.

  2. Uma biblioteca de renderização 3D que pode interoperar com uma linguagem de programação popular, como Java ou Ruby, e que pode carregar modelos 3D em formatos de arquivo de modelagem populares.

Estamos analisando o Yafaray (http://www.yafaray.org), que pode ser executado a partir da linha de comando e que recebe uma descrição de cena XML como entrada, mas tenho certeza de que pode haver opções melhores.Você pode fornecer uma análise objetiva dos prós/contras das opções que você conhece?

Foi útil?

Solução

Mecanismo de renderização 3D para offline

Makehuman usa vários renderizadores externos.Você pode querer dar uma olhada.

Você pode fornecer uma análise objetiva dos prós/contras das opções que você conhece?

Não.Não está claro que tipo de projeto você está projetando.

Neste ponto, suspeito que você esteja tentando criar um farm de renderização personalizado do zero, e se eu estiver certo sobre isso, a solução correta seria usar o software existente - o maya/3dsmax tinha algum suporte ao farm de renderização e deveria ser possível faça render farm baseado em liquidificador também.Desses pacotes, o maya definitivamente tinha suporte a scripts (MEL/python, eu acho), e boa parte do blender é escrita em python.

Se você deseja um renderizador no estilo GL, então Mesa3D fornece uma biblioteca que é "principalmente" compatível com OpenGL, mas funciona na CPU sem aceleração gráfica.O que significa que você deve ser capaz de usá-lo para fora da tela renderizando sem fazer uma janela.Como renderiza tudo na CPU, será muito mais lento do que a renderização acelerada na GPU.

Há também Pixomático renderizador de software que fornece API estilo DirectX.Ainda não usei este.

Depende do seu projeto.Se você deseja renderizar algum modelo 3D com oclusão de ambiente, radiosidade ou rastreamento de fótons, você precisa de um render farm com software de renderização completo como blender/maya/3dsmax.Se você simplesmente deseja renderizar o modelo offline, você pode criar uma solução simples usando Mesa3D ou OpenGL padrão durante a pausa para o almoço.Se bem me lembro, povray era bom para formas booleanas, também conhecidas como Geometria Sólida Construtiva (formas booleanas são difíceis de implementar usando bibliotecas que operam em triângulos, mas são triviais no raytracer).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top