Que tecnologia Starcraft 2 usa renderiza seus mapas?

9

Eu tenho um mapa que está sendo gerado processualmente em tempo de execução e atualmente estou investigando métodos de renderização desse mapa. Interessei-me pelo visual do Starcraft 2 e gostaria de alguns conselhos sobre quais métodos ele emprega para alcançá-lo. Secundariamente, eu gostaria de ver tutoriais, artigos ou mesmo exemplos de código-fonte, se possível.

Gostaria de obter alguns conselhos sobre algumas das principais coisas, mas fique à vontade para sugerir qualquer outra coisa que possa me ajudar.

  1. Conjuntos de ladrilhos que podem ser removidos - Um mapa típico de starcraft parece consistir em um conjunto de modelos que podem ser agrupados para criar falésias, rampas e outros terrenos elevados. Quais métodos eles empregam para fazê-los parecer tão naturais? O que quero dizer é que é muito difícil detectar repetições.

  2. Texturas do terreno - As texturas do terreno são muito variadas e até dinâmicas (fluência Zerg). Quais métodos são usados ​​para fazer isso?

Obrigado.

S.Richmond
fonte
Quanto ao item 2, pesquise "respingos de textura".
George Duckett

Respostas:

23

Eu acho que parte disso pode ser apenas que a Blizzard tem um número incrível de artistas de texturas. Mas vamos reformular a pergunta um pouco:

Eu tenho um orçamento limitado e quero fazer um jogo de estratégia em tempo real sem obviamente colocar texturas lado a lado. Como posso conseguir isso?

Boa pergunta! Aqui estão algumas ferramentas importantes que eu usaria:

1) Um conjunto razoavelmente grande de ladrilhos intercambiáveis . Digamos que você tenha um tamanho de textura de 64 x 64 em sua grade: faça oito texturas de 64 x 64, uma das quais pode ser ladrilhada com outras, e você terá um jogo bonito com base em til e muita variação!

2) Decalques ou mega-extensão . Pegue sua textura repetida e um pequeno número de texturas de sobreposição "sujeira" ou "sujeira" ou "arranhão". Splatter algumas dessas sobreposições em suas texturas. Eles podem ser renderizados em tempo real; nesse caso, são decalques, ou cozidos em uma textura gigantesca; nesse caso, é chamado de megatexturação. Em qualquer um dos casos, você provavelmente pode fazê-lo de forma semi-aleatória e obterá muita variação com apenas algumas sobreposições aplicadas.

3) Azulejos de cigarra . Confira isso para obter mais detalhes sobre como isso funciona. Em resumo, é uma maneira de pegar um pequeno número de planos de fundo obviamente lado a lado parcialmente transparentes e usá-lo para gerar um plano de fundo muito menos obviamente óbvio.

4) Respingos de textura . Guardei este por último, porque não se trata de evitar lado a lado em uma única textura, mas sim de combinar várias texturas sem problemas. No entanto, se você conseguir obter algumas texturas extras no seu orçamento, isso pode ser uma ferramenta crítica - na verdade, eu diria que se você não estiver usando isso, provavelmente está fazendo algo errado. Isso não ajudará em grandes seções obviamente lado a lado de um único tipo de textura, mas é isso que você usará para fazer com que suas várias texturas pareçam boas uma da outra.

ZorbaTHut
fonte
Para os interessados, Starcraft 1 usa o número 1 nesta lista e Starcraft 2 usa o número 4. Nos dois casos, isso é para o terreno básico. No que diz respeito aos 'doodads' no SC1, eles eram o número 2 (decalques, não megatextures) e no SC2 são todos modelos 3D. - À parte, o que faz com que os mapas SC2 pareçam tão bons é que a maioria dos locais apresenta duas texturas espalhadas uma sobre a outra em vários graus, por isso isso acaba parecendo mais com os azulejos da cigarra. (o que eu não sabia sobre até agora e planeja usar.)
DampeS8N
@ DampeS8N: Na verdade, o SC1 não faz o número 1 por si só. Em vez disso, o que eles têm é uma pequena paleta de peças lado a lado, assim como certas peças que somente lado a lado com outras peças. O editor de mapas tem uma tabela de quais blocos com o quê; portanto, quando você coloca blocos que não estão lado a lado com o que está perto deles, ele passa por suas tabelas e substitui esses blocos pelo que lado a lado com o que você colocou. Recursivamente.
Nicol Bolas
@NicolBolas Tecnicamente verdade, mas a filosofia subjacente é de ladrilhos intercambiáveis. Da mesma forma, meus amigos e eu costumávamos ver quantos lançamentos de peças poderíamos causar no editor SC1 como uma reação em cadeia.
DampeS8N