Também perguntei sobre isso nos fóruns do UDK , mas não tive muita sorte em obter respostas. Basicamente, tenho alguma experiência com o modding UT3, mas estou apenas começando com o UDK e tenho algumas perguntas sobre o grau de controle sobre a renderização que você possui.
- Entendo que, apesar da presença de vários arquivos de shader HLSL na distribuição do UDK (com a extensão .usf), não há como implementar seus próprios shaders fora do editor de material; isto está correto? (Conheço o nó Custom no editor de materiais, mas é muito limitado e difícil de usar, exceto a lógica mais simples.)
- Entendo que o UE3 emprega renderização diferida. Eu sei que você pode acessar a cor e a profundidade do pixel atual em um processo posterior. No entanto, existe alguma maneira de acessar esses ou outros atributos do buffer G de uma maneira mais geral? (Normais, posição, valores em pixels vizinhos ...)
- Os destinos de renderização são suportados de uma maneira geral? Por uma questão de argumento, seria possível configurar uma câmera para renderizar profundidade a partir de um ponto de vista alternativo e, em seguida, fazer comparações de profundidade no estilo de mapa de sombras ao renderizar a vista principal?
- É possível substituir todos os materiais no cliente (em massa), como aqueles que estão sendo usados para o terreno ou a geometria BSP no nível atual? (Para implementar modos de visão alternativos e coisas dessa natureza.)
As ferramentas que acompanham o UDK são, obviamente, muito polidas, e é difícil vencer o Scaleform e o SpeedTree gratuitos, mas estou começando a pensar que a plataforma é um ajuste terrível para quem quer ir além do arrastar e soltar edição de material em termos de gráficos. Sinto que tenho muito mais controle sobre a renderização em um mod de mecanismo de origem, por exemplo.