Como você facilita a criação de conteúdo para um renderizador HDR para seus artistas ? Que tipos de ferramentas você deve fornecer e quais fluxos de trabalho precisam mudar ao passar do LDR para o HDR?
Observe que não estou perguntando sobre os aspectos técnicos da implementação de um renderizador HDR, mas sobre as práticas recomendadas para criar materiais e iluminação no HDR. Eu pesquisei um pouco, mas não parece haver muito sobre esse tópico na web. Alguém pode me indicar alguns bons recursos sobre isso ou compartilhar suas próprias experiências?
Alguns pontos específicos:
- Iluminação - como os artistas de iluminação podem escolher cores claras HDR? Eles possuem um seletor de cores LDR padrão e um multiplicador? O multiplicador está em gama ou espaço linear? Talvez, em vez de um multiplicador, seja uma luminância de log? Ou um nível de brilho físico, como o número de lúmens? Como eles saberão qual multiplicador / luminância / brilho é "correto" para uma determinada luz?
- Materiais - como os artistas de texturas podem fazer mapas de cores emissivos, como sinais de néon, telas de TV, caixas de céu etc.? Você pode pintar uma como uma imagem normal de LDR (8 bits por canal) e aplicar um multiplicador (ou luminância de log etc.)? Existem casos em que é necessário realmente pintar imagens HDR? Se sim, como você faz isso no Photoshop (ou outro software)?
Respostas:
Acho que ainda estamos nos "dias dos homens das cavernas" que Patrick Hugues descreve em seus comentários.
Você não deseja detalhes sobre implementações de renderizador, mas deixe-me esclarecer um pouco as coisas de qualquer maneira: você entenderá o porquê. O HDR nos mecanismos de jogo é principalmente sobre ter valores "mais amplos" para a saída de renderização (o framebuffer). Normalmente, um ponto flutuante de 16 bits que pode ir acima de 1,0, em vez de números inteiros de 8 bits que nos fornecem 256 valores no intervalo [0,1]. Essa saída é então convertida para LDR usando um mapeador de tons , para que a tela possa exibi-la. Para mim, a verdadeira "autoria do HDR" seria ajustar esse mapeador de tons, então você desejará dar o máximo de controle possível aos seus artistas. Haverá algum tipo de sombreador envolvido; portanto, você tem artistas técnicos que podem lidar com isso ou o codifica e expõe os parâmetros mais úteis.
Eu não tenho certeza que você vai, necessariamente, precisa de 16 bits luzes, exceto talvez para criar luzes que emitem "mais branco que o branco". Mas se você quiser, em qualquer editor que use para suas luzes, precisará de algum tipo de seletor de cores ou um monte de controles deslizantes que ofereçam esses valores de ponto flutuante. Ah, se você quiser uma GUI, provavelmente começará com valores de ponto flutuante em texto sem formatação em um arquivo.
As texturas HDR (16 bits por canal) existem, mas não são amplamente usadas, talvez apenas porque isso exigiria muito mais memória do que as texturas LDR comuns (8 bits por canal). Eu também suspeito que haja mais limitações de hardware nos consoles de geração atual, então a maioria dos grandes motores de jogos ao redor não pressiona muito isso. Por exemplo, parece um pouco complicado importar uma textura HDR para uso com o UDK . No entanto, para criar texturas de 16 bits, você precisará de um software que suporte, como o Photoshop . Provavelmente existem outros, mas não parece tão frequente, por exemplo
Estáfoi um pedido de longa data para o GIMPainda está pendente. Você também precisará usar um formato de imagem com reconhecimento de 16 bits, como PNG.fonte
como lorancou disse, você realmente não cria conteúdo hdr, já que geralmente é dinâmico com a quantidade de luz. Mas você provavelmente poderia imitá-lo em um mapa de luz que envolveria apenas a modificação de qualquer sombreador de pré-cálculo para levar isso em conta.
fonte
Bem, três anos depois e acabei de escrever uma postagem no blog sobre a criação de conteúdo HDR , para que agora eu possa responder minha própria pergunta. :)
Para resumir,
fonte