Lembro-me há algum tempo que as texturas geradas proceduralmente estavam se tornando um grande negócio que muitas pessoas / empresas estavam realmente interessadas em alguns benefícios sérios (implantações menores, carregamento potencialmente mais rápido, maior qualidade, texturas escaláveis, potencialmente mais baratas de produzir etc.) )
Pelo que sei, o zumbido está morto e nenhum jogo no meu radar os está usando. O que aconteceu?
Eu esperava ver texturas processuais da mesma maneira que as coisas do NaturalMotion (adoção lenta, mas constante).
fonte
A perda do controle artístico e o aumento do tamanho das opções de armazenamento tornaram isso difícil de vender. Além disso, você teria que treinar novamente os artistas, enquanto os contratava para o que eles eram bons em texturas tradicionais. A menos que tamanho ou texturas únicas sejam realmente realmente um problema, geralmente há pouco desejo de seguir o caminho processual.
fonte
Basicamente, as grandes armas não a suportam, por isso não está sendo muito usada. Houve coisas legais (embora um pouco antigas), como .kkrieger, mas o tempo de carregamento nisso (antigamente) era muito lento, pois era necessário gerar todas as texturas durante o carregamento.
Podemos ver algo nos motores da próxima geração (Unreal 4, etc.), mas não acho que o ganho versus desenvolvimento seja grande o suficiente.
Existem exemplos no mundo AAA, por exemplo, o Spore gerou processualmente texturas e animações para as criaturas que você criou.
fonte
A textura processual sofre com o problema que um diretor de arte não pode apontar com segurança para o trabalho de um artista e diz "por favor, faça essa parte um pouco mais de X". porque o sistema de sombreamento processual pode não oferecer suporte ao X de forma barata ou nem um pouco.
Por exemplo, um shader de tijolo pode suportar tijolos marrons limpos, mas não pode suportar tijolos pintados com um anúncio há 80 anos e grafite há 10 anos. Ou pode não suportar ter um tijolo roxo de 1.000 tijolos marrons. Exatamente naquele ponto, porque ele apela ao gosto do diretor de arte.
Uma textura real pode suportar todas essas coisas, é claro, e, nesse sentido, uma textura real é superior a uma textura processual.
A textura processual exerce controle artístico em virtude de sua preferência por determinados casos de uso em detrimento de outros. Uma textura real exerce pouco controle.
O hardware da GPU, no entanto, tem uma forte preferência pelo procedimentalismo, porque a memória de textura fica a muitos ciclos das unidades da ALU que fazem o sombreamento.
fonte
bem, ainda parece uma ótima idéia, especialmente para jogos. Como você pode gerar processualmente texturas em tempo real para que o mundo ao redor do player pareça mais natural. Não é necessário grande volume de dados. Pode ser usado com certeza para aumentar até a resolução
fonte
Você tem o tempo típico de troca de memória . Bem, goste ou não, a geração procedural troca o tempo da CPU pela conservação da memória. Na verdade, à medida que o armazenamento fica mais barato e as pessoas sempre desejam tempos de carregamento mais curtos, a tendência é o contrário - os ativos pré-gerados ou fotografados consomem memória em troca de velocidade.
Um jpg é carregado mais rápido que uma versão gerada proceduralmente? Provavelmente sim . Se o jpg tem 2 MB e você o carrega uma vez, por que se preocupar com procedimentos? Em tempo de execução, a textura ocupa a mesma quantidade de RAM (descompactada e carregada na memória da GPU)
fonte