Escolar Documentos
Profissional Documentos
Cultura Documentos
Editor
01_Instalação
O editor de mapa de cidades XXL é uma ferramenta gratuita para todos os
proprietários de cidades XXL.
Para fazer o download e instalá-lo, simplesmente vá para a categoria
"Ferramentas" na sua Biblioteca Steam.
Interface de usuário
Navegação e câmeras
Nota : você também pode usar qualquer câmera no jogo usando o botão
"Câmera" na guia "Opções".
Uma vez clicado, o botão abrirá um novo painel da câmera, onde você
poderá selecionar uma câmera e alterar todas as opções associadas a ela:
Este painel é muito útil para definir a velocidade da câmera e o
comportamento geral, dependendo de suas necessidades.
1
Você pode voltar para o modo fly by a qualquer momento selecionando a
câmera “FLYBY” na caixa de combinação do painel da câmera.
Controles
Durante o seu processo de criação de níveis, você pode ter que adicionar
novas texturas ou arquivos que você criou em ferramentas externas.
Você deve ter muito cuidado para seguir os locais de arquivos descritos
neste guia para cada tipo de arquivo (mapas normais, texturas de solo,
texturas de rochas, configurações de ambiente, etc.), caso contrário, você
poderá encontrar um comportamento inesperado.
O mecanismo do jogo espera que os arquivos estejam localizados em
lugares bem definidos sob os diretórios do jogo (ou arquivos .pak), portanto,
o editor deve seguir as mesmas regras.
Níveis de amostra
Recomendamos que você abra todos os exemplos existentes para ter uma
ideia melhor dos resultados que você pode obter com o editor.
2
Fluxo de trabalho
Este capítulo apresenta o processo passo a passo que deve ser seguido
para criar novos níveis de jogo.
Editor de paisagem
3
O primeiro passo antes de editar seu terreno é importar um novo arquivo de
mapa de altura.
Importante : a resolução de entrada do arquivo deve ser 4096x4096 para
obter os melhores resultados. Isso é necessário, pois o mapa de altura do
trabalho será usado para assar o mapa normal e será descartado no final do
processo de criação.
O editor suporta mapas de altura de ponto flutuante de 32 bits.
Para importar um novo arquivo, basta clicar no botão.
O editor é fornecido com dois arquivos .R32 de amostra. Você os encontrará
no diretório “<InstallDir> \ Data \ Gfx \ Landscape \ R32”:
⦁ BigIsland_03.r32: arquivo de exemplo de uma ilha exportada do
WorldMachine
⦁ Empty_4096.r32: heightmap vazio fornecido para edição manual completa
dentro do editor.
Nesta documentação, usaremos o heightmap BigIsland_03 como o melhor
fluxo de trabalho para o editor. Agora você pode abrir o arquivo BigIsland_
03.r32 e você deve obter as seguintes elevações no editor:
Nota : você pode ter que mover a câmera para ver o heightmap (use
PageUp / PageDown para percorrer o terreno depois de carregar o
arquivo)
Se você não tiver uma ferramenta DCC como Terragen, Geocontrol ou World
Machine para geração de mapa de ponto de ponto flutuante, ainda poderá
usar imagens simples como a origem de seus valores de elevação de
paisagem.
Para este efeito, você pode clicar no botão.
Você será solicitado por um arquivo jpg, tga, bmp ou png.
Nota : esteja ciente de que o editor usará apenas o canal vermelho da sua
imagem.
Nota : como as imagens de 8 bits têm uma resolução muito baixa, o editor
usa um filtro Búbico B-Spline para gerar o mapa de altura final de 32 bits.
Como o filtro é muito caro, a operação de importação é muito mais lenta que
a importação do Raw32. Você pode esperar tempos entre 15 segundos a um
minuto para a importação ser concluída, dependendo da configuração de
hardware.
Finalmente, como a filtragem ajuda a gerar valores intermediários de ponto
flutuante da imagem de 8 bits, lembre-se de que, diferentemente dos mapas
4
de altura raw32, pode ser mais interessante usar imagens pequenas neste
caso (começando em 1024x1024 e abaixo).
De fato, uma textura de 4096x4096 8bit, mesmo se filtrada com um filtro
bicubico, terá poucas diferenças com a imagem original e, portanto, dará
maus resultados e muitos artefatos de iluminação.
Depois que o seu mapa de alturas for importado, você poderá começar a
editá-lo.
Primeiro você pode modificar o formato do terreno usando pincéis.
Zona de modificação : representa a área onde as escovas afetarão as
elevações do terreno.
A zona é representada por um ou dois círculos vermelhos que seguem o
relevo do terreno:
A zona de modificação é movida com o mouse (somente se um pincel estiver
ativo. Veja abaixo)
Para ativar um pincel, basta clicar no seu ícone no painel Paisagem o pincel
ativo está selecionado em azul).
As propriedades da zona de modificação são controladas com três valores
diferentes.
Nota : cada tipo de pincel tem uma configuração separada.
Suavidade : define o modo como os valores são interpolados entre o círculo
externo e o círculo interno da zona.
Tamanho : define o tamanho da zona de modificação.
Força : define a força da escova.
O editor é fornecido com três tipos de pincel.
Escova para cima / baixo : aumenta ou diminui o terreno dentro da zona de
modificação
Para levantar o terreno, clique com o botão esquerdo do mouse:
Para baixar as elevações, clique com o botão direito do mouse:
Quando você está pronto para lançar um nível de jogo inteiro, você tem a
capacidade de reduzir o tamanho total que levará no jogo. O mapa de altura
de alta resolução usado para edição de terreno é enorme (cerca de 100 Mb),
por isso é realmente importante retirá-lo do nível final.
Para fazer isso, você pode clicar no botão e selecionar seu arquivo .land. O
editor irá convertê-lo no local.
Importante : aconselhamos sempre manter uma cópia de backup do
arquivo .land editável original. Você não poderá mais modificar o
arquivo .land de “produção”.
Você pode notar que, se fizer alguma edição de terreno na guia Paisagem e
tentar alternar para a guia material ou qualquer outra guia, o editor congelará
durante um longo período antes que você possa usá-lo novamente.
Na verdade, cada vez que você modifica o mapa de alturas, ele é marcado
como sujo. Então, quando você muda para uma aba diferente, o editor
garante que o mapa normal estará atualizado e acionará um comando “Bake
Normal Map” automaticamente (consulte o capítulo Editor de material para
obter mais informações).
Este processo é totalmente normal e garante que os dados de elevação
sejam coerentes com os outros editores.
6
alternar diretamente para a guia material), a atualização automática do mapa
normal não será acionada. Nesse caso, você terá que iniciar a atualização
manualmente a partir da guia Material (consulte o capítulo Editor de material
para obter mais informações)
Antes de fazer seus próprios materiais, você também pode testar todos os
materiais de jogo existentes. Basta carregar um arquivo .xml existente no
modo “Material edition” na caixa de combinação do modo Render.
Aqui está uma pequena galeria de materiais existentes:
Edição Rock
Nota : você deve ter notado que as texturas de rochas existentes são
organizadas quatro por quatro. Isso pode facilitar a seleção de texturas, mas
você é livre para fazer qualquer tipo de mistura com texturas de rock. Você
7
também tem a capacidade de ajustar a textura das texturas com o controle
deslizante lado a lado: é muito difícil ver a imagem nessas imagens, por isso
recomendamos que você jogue com o controle deslizante lado a lado para
ver seu efeito em tempo real. Inclinação : esta seção permite alterar a
aparência da rocha dependendo da inclinação do terreno. Também controla
a transição das texturas do rock para as texturas do solo. Controle deslizante
de inclinação (valor baixo): Controle deslizante de inclinação (valor alto):
Controle deslizante de transição (valor baixo): Controle deslizante de
transição (valor alto):
Mix de ruído : esta seção oferece um controle artístico sobre a maneira como
as quatro texturas de rock são mescladas.
Importante : todo este processo é projetado para remover a textura visível ao
jogar o jogo. Texturas de rochas são misturadas duas a duas.
1-2 : este controle deslizante define a quantidade da primeira textura da
rocha com a segunda textura da rocha.
Se você colocar o controle deslizante para a esquerda, isso significa que
você verá apenas a textura da rocha 1; se você a colocar no meio, verá a
mesma quantidade de textura 1 e a textura 2 combinadas usando uma
máscara de ruído. Finalmente, se você mover o controle deslizante para a
direita, verá apenas a textura da rocha 2.
3-4 : este controle deslizante define a quantidade da terceira textura da rocha
com a quarta textura da rocha.
O comportamento deste slider é o mesmo que para 1-2, mas tem como alvo
as texturas 3 e 4 do rock.
Main : define a quantidade de 1-2 texturas de rock ou 3-4 texturas de rock
onde ambos os grupos são combinados com outro ruído.
Novamente, se você mover o controle deslizante Principal para a esquerda,
verá apenas as texturas 1-2 (misturadas de acordo com o controle deslizante
1-2), se você colocá-las no meio, verá uma mistura de texturas 1-2-3-4 e
para a direita, apenas o grupo de textura 3-4.
Transition Blending : direciona a transição de mesclagem entre todas as
texturas (baixo valor significa transição bruta e alto valor significa transição
suave como o controle deslizante de transição de declive).
Aqui estão alguns exemplos visuais para entender melhor o sistema.
Primeiro a configuração da textura:
Exemplo 1 :
Resultado visual:
Você pode ver somente textura 1 (controle deslizante 1-2 foi definido para a
esquerda) e textura 4 (controle deslizante 3-4 definido para a direita) que são
8
misturados igualmente em todo o mapa (controle deslizante Principal definido
como middle)
Nota : a transição foi ajustada para o mínimo (transição brusca) para melhor
visualização das cores.
Exemplo 2 :
A única coisa que mudou aqui no Exemplo 1 é que o slider 1-2 foi movido
para o meio. Resultado visual: Como você pode ver a cor vermelha não se
moveu, mas agora a cor azul é igualmente misturada com verde (textura 2).
Exemplo 3 :
Neste exemplo, todos os três controles deslizantes estão configurados para
o meio. O controle deslizante de transição também foi movido para obter
uma transição suave entre todas as cores. Resultado visual: Noise tiling :
esta seção final controla o ladrilho das texturas de ruído usadas para unir as
quatro texturas de rock. Novamente, esses parâmetros são destinados ao
controle artístico do resultado da mescla final. Mais uma vez as texturas são
lado a lado duas por duas com um controle adicional (Main) para o ladrilho
de ambos os grupos. Onde os controles deslizantes 1-2 e 3-4 controlam a
colocação das texturas correspondentes dentro de suas zonas definidas pela
seção mix, o controle deslizante Main controla a divisão das texturas em todo
o nível. Aqui estão dois exemplos para mostrar o efeito do controle deslizante
principal (as configurações de mix foram tiradas do exemplo 3 do parágrafo
anterior, mas com uma transição difícil): Controle deslizante principal para a
esquerda: Controle deslizante principal para a direita: Usando todas essas
configurações você deve ser capaz de eliminar todos os tipos de artefatos de
lado a lado de seus níveis e adicionar muita diversidade à sua camada de
rocha.
Edição de terrenos
Você deve ter notado que, por padrão, o editor de material começa no modo
“Normal” (veja a caixa de combinação Modo de renderização). Este modo é o
modo “no jogo”.
Neste modo, você vê exatamente o que os jogadores verão se jogarem seu
nível no jogo.
As cidades XXL usam duas técnicas diferentes para materiais do terreno:
⦁ Uma textura difusa em larga escala: esta textura é feita a partir de muitos
materiais em camadas que só podem ser editados quando no modo
“Material edition”.
⦁ Mapas detalhados: essas texturas simples são combinadas com a textura
difusa para adicionar detalhes adicionais quando a câmera está perto do
chão.
Como mencionado, a textura difusa é estática. Mas os mapas detalhados
são totalmente dinâmicos e mudam dependendo da posição da câmera no
jogo.
9
Edição de terrenos - camadas (modo de edição de material)
Para editar os parâmetros de terra, você terá que mudar para o modo
“Material edition”.
Depois de alternar para esse modo, a textura difusa é descartada e você
verá uma visualização em tempo real procedural de suas camadas de
material de solo. Neste modo, você pode alterar os parâmetros do solo e ter
um feedback instantâneo na viewport. Isto não é possível quando no modo
“Normal”.
Importante : observe que as texturas detalhadas estão desativadas neste
modo. Isso pode ser um pouco decepcionante no início, mas foi projetado
intencionalmente para permitir que o artista veja suas matérias-primas e
tenha uma boa idéia da textura final difusa (veja o próximo capítulo para mais
informações sobre mapas detalhados).
Os materiais do solo são compostos por quatro camadas personalizadas.
Você não é forçado a usar todas as quatro camadas para seus níveis. Como
você verá mais tarde, você tem a possibilidade de definir o intervalo de altura
de uma camada e, assim, substituir as outras camadas, se não precisar
delas.
Quanto à camada de rocha, você poderá atribuir 4 texturas diferentes para
cada camada de solo e, em seguida, combiná-las com os mesmos
parâmetros descritos anteriormente:
Consulte a seção de rochas para entender melhor o comportamento dos
controles deslizantes.
Uma diferença com a camada de rocha é que as camadas de solo 2, 3 e 4
têm uma seção adicional para controlar a altitude da camada e as
propriedades de mistura: Nota : a camada 0 não tem seção de altura, pois
ela cobre todo o mapa de baixo para cima. Ele ainda pode ser descartado
pelas outras camadas usando sua altura mínima (veja abaixo).
Início : define a altitude inicial da camada
⦁ End : define a maior altitude da camada
Nota : como as camadas 2, 3 e 4 têm seus próprios controles deslizantes
de altura, você pode decidir que a camada 4 ficará abaixo da camada 2 e
3.
⦁ Transição : quanto à camada de rocha, este controle deslizante controla a
suavidade da transição da camada com as outras.
⦁ Perturbação : este parâmetro ajuda a quebrar a linearidade das transições
da camada. Como cada camada é definida por uma altitude inicial e final,
as transições podem ser muito visíveis e lineares. Para quebrar este
efeito, adicionamos um ruído que irá alterar a altitude localmente de forma
aleatória (mas ainda perto dos valores inicial e final que foram definidos).
⦁ Lado a lado: controla o ladrilho da textura de ruído usada pelo controle
deslizante Perturbação. Pode ser útil alterar essa configuração para evitar
artefatos de lado a lado.
Aqui está um exemplo com camadas coloridas. Para o propósito desta
documentação, todas as 4 texturas de cada camada de solo foram definidas
para o mesmo arquivo: E aqui está a saída com as quatro camadas sendo
colocadas em cima umas das outras (na ordem correta): E aqui estão os
parâmetros usados para os controles deslizantes de altura de cada camada
10
individual: Camada 1 : nenhum parâmetro para definir (lembre-se de que
essa camada cobre todo o nível) Camada 2 : Camada 3 : Camada 4 :
Observação : os controles deslizantes de altura são controles artísticos. Você
pode descobrir que os valores do controle deslizante não são normalizados
ou mesmo difíceis de interpretar. Esteja ciente de que esses controles foram
projetados para interação visual, portanto, você deve sempre verificar a
janela de visualização ao ajustar esses valores. Finalmente, aqui está um
exemplo com as mesmas configurações de altura, mas com transições e
perturbações para os níveis 2, 3 e 4: Você pode notar que agora as camadas
1 e 2 são mescladas e que as outras camadas suavizaram as transições. A
altitude de transição também usa alguma perturbação para que os limites de
cada camada sejam mais difíceis de detectar. Encorajamos você a testar
esses controles deslizantes, começando pelas camadas 1 e 2. Será mais
fácil para começar e você poderá aumentar o número de camadas quando
estiver acostumado com o sistema. Não se esqueça de que você pode
desabilitar as camadas 2, 3 e 4 a qualquer momento definindo o controle
deslizante "altura inicial" para o máximo.
Você também pode criar seus próprios mapas de detalhes. Basta lembrar
11
que esses mapas devem ser do mesmo tamanho e criados em escala de
cinza (todos os canais devem ser os mesmos).
O mapa de detalhes será adicionado como uma sobreposição na parte
superior da textura difusa. O importante é lembrar que cada mapa de
detalhes será mascarado e aparecerá apenas nos locais aos quais ele
pertence (com base na configuração de suas camadas de solo). Depois de
selecionar os mapas de detalhes para cada nível, você poderá configurar as
distâncias nas quais os mapas estarão visíveis. Para esse propósito, você
usará a seção Detalhe que é comum a todas as camadas: Como
mencionado anteriormente, os materiais de aterramento são copiados após a
edição para criar uma textura difusa grande que cubra todo o nível. Se
usarmos apenas a textura difusa, os jogadores não terão detalhes
importantes quando se aproximam do chão: A faixa de perto e longe do
painel "Detalhe" permite decidir quando os mapas de detalhes aparecerão
dependendo da posição da câmera (existem apenas dois parâmetros para
todas as camadas). Para evitar a visibilidade visível dos mapas de detalhes,
o jogo usa dois LODs diferentes baseados na mesma textura. O controle
deslizante de alcance próximo define a distância da câmera na qual o mapa
de detalhes com o ladrilho mais refinado começará a desbotar para o mapa
de detalhes mais grosseiro. Se você definir o controle deslizante de alcance
próximo como um valor muito pequeno, obterá este resultado: Como você
pode ver, a câmera deve estar muito próxima do terreno para ver o mapa de
detalhes mais preciso. Você também pode perceber que a transição para o
mapa de detalhes grosseiros é muito visível. Agora, se empurrarmos um
pouco mais o controle deslizante de alcance próximo, poderemos ver que o
resultado é muito mais agradável: a transição para o mapa de detalhes mais
grosseiros agora é mais sutil e foi afastada muito à distância. O controle
deslizante do mapa de detalhes de longo alcance controla a distância em
que o mapa de detalhes grossos desaparecerá. Após essa distância, o
jogador só verá a textura difusa. Assim, é importante configurar a distância o
mais longe possível para manter sempre os detalhes no terreno, mas
evitando muita telhadura ou tremulação. Aqui está uma captura de tela com o
slider de longo alcance definido para um valor baixo (note que você terá que
mover a câmera para longe do chão para ver o mapa de detalhes mais
grossos): Você pode ver que a textura difusa é muito visível a partir do meio
da imagem e indo para o topo. Nós perdemos os detalhes cedo demais.
Agora, aqui está o mesmo ponto de vista com um valor mais alto: desta vez,
mantemos muito mais detalhes longe à distância. Na verdade, é difícil
identificar a transição do mapa de detalhes grosseiros para a textura difusa.
Os controles deslizantes de mapa próximos e distantes são controles
artísticos e devem ser ajustados com precisão para cada material.
Finalmente, na seção Detalhamento da camada 1, você poderá ajustar o
ladrilho dos mapas de detalhes próximos (mais precisos) e distantes (mais
grossos): O ladrilho deve ser ajustado dependendo das texturas
selecionadas para evitar padrões repetitivos. Cozer a textura normal do mapa
Tal como para a textura difusa, também pode assar a textura do mapa
normal de alta resolução que é responsável pela iluminação correcta do seu
terreno. Como visto no capítulo do editor de paisagem, este processo pode
ser automático ou manual. Caso você esteja carregando um arquivo .r32 sem
editá-lo, há chances de que o mapa normal não seja atualizado: assim, é
12
importante que você sempre verifique se a iluminação está correta. Na
verdade, é uma prática recomendada assar o mapa normal após cada
modificação de paisagem (ou alteração no mapa de altura) usando o botão.
Agora você pode ver a grande diferença de iluminação no mesmo ponto de
vista com um mapa normal correto. Importante : quando terminar de editar
seus materiais, não se esqueça de salvá-los! Esta etapa é necessária, pois o
arquivo salvo será usado pelo nível final do jogo (arquivo .lvl) para recuperar
os mapas detalhados e seus parâmetros associados.
13
Configurações Gerais
agua
15
⦁ Transparência : esta seção dá mais controle artístico sobre a
transparência da água
⦁ Borda : controla a mescla de transparência nas bordas do mapa
⦁ Profundidade : controla a transparência em águas profundas
⦁ Normals : controla a refração da água e a perturbação da reflexão.
⦁ Perturbação : define a quantidade de perturbação normal que dará a
impressão de refração
⦁ Mapa normal / botão Load : a perturbação é baseada em um mapa
normal. Você pode alterar o mapa padrão usando o botão "Carregar". Aqui
está o mapa normal padrão:
⦁ Especular : esta seção controla a resposta especular da água
⦁ Potência : controla o poder especular (ou difusão do effet)
⦁ Intensidade : controla a intensidade do efeito
⦁ Reflexo : a caixa de seleção ativa ou desativa reflexos de água
⦁ Viés de Fresnel : move artificialmente a zona de Fresnel
⦁ Fresnel Power : controla o poder do efeito
⦁ Velocidade : esta seção controla a velocidade das ondas de água. As
ondas de água são baseadas em uma rolagem de mapa normal de várias
oitavas.
⦁ Base : o controle deslizante base controla a velocidade geral da animação
de ondas
⦁ Fator : o fator altera a velocidade de algumas das oitavas para tornar a
animação de onda menos direcional e evitar a rolagem visível.
⦁ Escala : esta seção controla o tamanho das ondas de água.
⦁ Base : o controle deslizante base controla o tamanho global das ondas
⦁ Fator : este controle deslizante escala as oitavas secundárias para
adicionar mais ondulações às ondas de base
⦁ Extensões : esta seção permite adicionar um plano de extensão de água
em cada lado do seu nível. Isso pode ser muito útil para dar a impressão
de uma superfície de água infinita: basta verificar as instruções
necessárias.
⦁ Textura subaquática : quando os planos de água infinitos são adicionados
na seção anterior, a falta de terreno fora dos limites do nível é bastante
visível. Para evitar esse efeito de transparência, você pode selecionar uma
textura mais próxima das cores do terreno e que será exibida sob a água
fora do nível. Nota : para ver a textura submersa basta usar a câmera flyby
para ir abaixo da superfície da água.
⦁ UV : você tem a capacidade de escolher o ladrilho da textura para melhor
corresponder à textura difusa do terreno existente
⦁ Textura : você pode escolher qualquer textura para ser mostrada debaixo
d'água fora dos limites do nível. Basta clicar no botão carregar para
selecionar um mapa.
Nota : você pode reutilizar suas texturas de solo para o mapa subaquático.
Cubemaps do céu
16
Este é um novo recurso Cities XXL que permite substituir o céu processual
definido na seção “Scattering” por mapas de cubo estáticos. Essas texturas
podem ser derivadas de fotos da vida real e, assim, fornecer resultados mais
realistas, além de características climáticas adicionais (nuvens, arco-íris,…)
O novo sistema permite misturar até 4 cubemaps juntos durante todo o ciclo
dia / noite.
Importante : as texturas não podem ser selecionadas ou editadas no editor.
O sistema depende apenas da nomenclatura de arquivos na pasta
“<InstallDir> \ Data \ Gfx \ Sky \ Cubemaps”. A única coisa que você pode
fazer no editor é associar um céu existente ao seu nível e ter uma prévia do
resultado final.
Os mapas de cubo disponíveis serão listados na caixa de combinação "Sky".
Basta selecionar o mapa do cubo desejado para atribuí-lo ao nível (não se
esqueça de salvar seu arquivo .lvl para tornar sua escolha persistente).
Por favor, note que você pode salvar uma configuração de ambiente com um
cubemap específico
Isso permite combinar a cor das texturas do mapa do cubo com a iluminação
do nível (Sun, IBL ambiente,…).
O arquivo .xml do ambiente será salvo automaticamente na pasta
“Cubemaps” com o sufixo “_Env”. Teste de iluminação com teste de
construção Para testar melhor suas configurações de iluminação,
adicionamos um botão que permite gerar um edifício no terreno. Você pode
encontrar o botão na guia Opções na seção Objetos: Quando você clicar no
botão, você terá que mover o mouse para a viewport, a fim de ver o novo
edifício. Ele seguirá automaticamente a paisagem: você pode finalizar o
posicionamento do edifício clicando no botão esquerdo do mouse. Por
padrão, o edifício não fará a terraplanagem do terreno para preservar sua
paisagem. Você sempre pode excluir os edifícios que você colocou no
terreno, selecionando-os com o botão esquerdo do mouse e pressionando a
tecla Delete. Nota : este edifício de teste é descrito no arquivo “<InstallDir> \
Data \ Design \ Buildings \ B_EditorTest.class”. Você pode modificar este
arquivo e alterar todas as configurações, se necessário. Lembre-se de que,
se você alterar a geometria, o arquivo sgbin correspondente deverá estar
presente no diretório “<InstallDir> \ Data \ Gfx \ Building”, caso contrário, ele
não será exibido ou será substituído por um espaço reservado.
Este editor permite que você preencha seus níveis com florestas feitas de
diferentes espécies de árvores ou arbustos.
O editor vem com um painel de edição sigle:
As florestas são limitadas a quatro espécies de árvores e / ou arbustos que
são misturadas.
Para selecionar árvores ou arbustos, você terá que arrastar e soltar os
arquivos .png do diretório “<InstallDir> \ Data \ Gfx \ Trees \ Forest” para a
lista de “árvores atuais”.
Nota : você pode procurar por arquivos * .png no diretório raiz para obter uma
galeria de árvores que facilitará a seleção de árvores:
17
Uma vez que uma árvore ou arbusto for adicionado, ele aparecerá na lista
com um contador de instâncias.
Nota : cada linha na lista (ou tipo árvore / arbusto) é limitada a 10000
instâncias. Assim, a quantidade total de árvores não pode exceder 40.000
instâncias.
Criando florestas
Replantar árvores
Para criar um novo sistema de partículas, você tem que clicar no ícone “novo
sistema” na galeria “Sistemas Existentes”:
Uma vez clicado, vá para a viewport e você verá uma prévia da nova caixa
delimitadora do sistema de partículas. Clique com o botão esquerdo no
terreno para colocá-lo:
Isso também abrirá um novo editor de sistema de partículas na aba Sistema
de partículas: Cada sistema de partículas tem emissores. Um emissor é o
elemento base que irá gerar novas partículas. Todo o comportamento das
partículas é definido nos emissores.
Você pode alterar o nome do emissor clicando duas vezes nele:
Você também pode interagir com os emissores por meio da paleta que
aparece à direita:
Ocultar / Mostrar emissor. Muito útil se você estiver trabalhando em muitos
19
emissores.
Emissor duplicado: copia todas as configurações para um novo emissor.
Exclua o emissor.
Mover para Cima: altera a ordem de renderização do emissor.
Mover para baixo: altera a ordem de renderização do emissor.
Criando novos mapas - Partículas (Parte 2)
Configurações do emissor
⦁ Tipo de emissão : especifica a área de emissão para novas partículas. Os
valores podem ser:
⦁ Ponto : um único ponto no espaço 3D gera novas partículas
⦁ Spray : as partículas são geradas ao longo de um vetor de direção
⦁ Caixa : as partículas são desovadas dentro de uma caixa
⦁ Esfera : as partículas são geradas dentro de uma esfera
⦁ Tipo de partícula : determina a orientação das partículas (billoboarding):
⦁ Outdoor da Câmera : a partícula será uma quadra que sempre fica voltada
para a câmera
⦁ Billboard Orientado : o quadra da partícula terá um vetor fixo para (0,0,1).
As partículas ainda irão enfrentar a câmera.
⦁ Siga o quadro de avisos do caminho : orienta as partículas em seu
caminho aleatório (pode ser útil para cachoeiras)
⦁ Billboard de nuvens : modo especial de billboarding para nuvens como
partículas. Altera a orientação dependendo dos ângulos de visão.
⦁ Tamanho do emissor : usado apenas com os tipos de emissão Box e
Sphere. Define as margens do volume de emissão.
⦁ Sentido : usado apenas com o tipo de emissão de spray. Define a direção
do spray.
⦁ Deslocamento de posição : permite deslocar facilmente o emissor em
relação à posição do sistema.
Nota : você pode usar este deslocamento durante a edição para afastar o
emissor dos outros para ver melhor suas modificações.
Configurações de partículas
⦁ Número de partículas : contagem máxima de partículas para o emissor
selecionado (essa configuração pode ter um grande impacto no
desempenho do jogo).
⦁ Tempo de vida (seg) : define o tempo de vida das partículas em segundos
⦁ Tamanho mínimo da partícula: tamanho mínimo de partícula (este valor é
utilizado pelo gradiente «Evolução do tamanho das partículas»)
⦁ Tamanho máximo da partícula: tamanho máximo de partícula (este valor é
utilizado pelo gradiente «Evolução do tamanho das partículas»)
⦁ Tamanho aleatório : permite gerar tamanhos aleatórios para partículas
emissoras.
⦁ Randomize o tempo de vida : gerou tempos de vida aleatórios com base
no valor do tempo de vida global.
⦁ Evolução do tamanho de partícula : você pode usar este controle de
gradiente para criar curvas personalizadas para a evolução do tamanho de
20
partícula durante o tempo de vida útil da partícula. O controle gradiente
representa o tempo de vida da partícula: a borda esquerda do gradiente
representa o nascimento da partícula e o lado direito a morte das
partículas. O gradiente é em escala de cinza: branco significa 1 (ou
tamanho máximo) e preto significa 0 (ou tamanho mínimo).
Nota : você pode adicionar novas chaves clicando duas vezes na zona do
gradiente. Clicar duas vezes em um marcador com pop-up de um seletor
de cores para seleção de cores.
⦁ Partícula de rotação : permite girar as partículas emitidas.
⦁ Rotação aleatória : rotações uniformes podem ser muito visíveis. Você
pode quebrar o padrão de rotação usando este controle deslizante.
⦁ Velocidade : define a velocidade das partículas.
⦁ Randomize speed : permite que as partículas tenham velocidade aleatória
com base no valor da velocidade principal.
⦁ Ângulo : usado apenas para o tipo de emissão de spray. Define o ângulo
do spray (sua largura).
Configurações do shader
⦁ Partícula iluminada : se verificada a partícula será iluminada com luz
ambiente e direta
⦁ Volume 3D iluminado : opção especial para iluminação de volume falsa
⦁ Somente ambiente iluminado : iluminação simplificada com termo
ambiente.
⦁ Reflexão : informa se esse emissor será renderizado no passe de reflexão
(água)
⦁ Fundo preto : modo especial para partículas coloridas (como chamas de
fogo) para evitar a perda da cor original em fundos brilhantes (céu, por
exemplo).
⦁ Projeção infinita : processa as partículas como se estivessem em um
plano infinito do observador (sem uso).
⦁ Texturas de partículas : permite selecionar até quatro texturas diferentes
para as formas de partículas.
⦁ Mistura Alpha / Additive blending : este controle deslizante permite
controlar a quantidade de mistura nas partículas. Você pode escolher
valores intermediários entre mistura alfa pura e mistura aditiva.
⦁ Cor : descreve a variação de cor das partículas durante o tempo de vida.
Nota : você pode adicionar novas chaves de cores clicando duas vezes na
zona de gradiente. Clicar duas vezes em um marcador com pop-up de um
seletor de cores para seleção de cores.
⦁ Fade in : um gradiente em escala de cinza que permite controlar a
transparência das partículas durante toda a sua vida útil.
Forças de partículas
⦁ Gravidade : um vetor que simula força de gravidade. Definido por padrão
para a gravidade da Terra.
⦁ Vento : um vetor adicional para simular o vento no nível.
⦁ Randomize wind : permite randomizar o efeito do vento.
21
Movimento de partículas
⦁ Dinâmico : especifica se as partículas precisarão de atualizações de
posição durante sua vida útil. Necessário se o emissor precisar ser
conectado a um objeto em movimento.
⦁ Ciclo : ciclos de vida e morte das partículas. Quando uma partícula morre,
ela é instantaneamente substituída por uma nova partícula. Se não estiver
marcada, as partículas mortas não são substituídas para que o sistema
desapareça após o tempo total de vida útil.
⦁ Nascimento : as partículas devem desovar ou já estar na posição correta.
⦁ Morte : as partículas mortas não são substituídas e desaparecem.
⦁ Classificação regular : restrições de nascimentos de partículas ao longo do
tempo de vida do emissor.
⦁ Desaceleração : diminui a velocidade das partículas durante a sua vida
útil.
⦁ Link to : permite que este emissor se conecte a outro (pode ser útil para
gerar novas partículas após um determinado período de tempo. Ex: fogos
de artifício)
⦁ Link to slider : permite definir o horário de nascimento do emissor atual
baseado no link (veja sistema de fogos de artifício). Se você vincular um
emissor, esse controle deslizante exibirá valores úteis para sincronizar os
dois emissores:
Uma vez que seu nível estiver terminado, você terá que salvá-lo em um
arquivo .lvl (isso também pode ser útil durante o processo de edição).
Conforme mencionado na seção Fluxo de Trabalho deste documento, o
arquivo .lvl é um arquivo indireto para os arquivos .land, material .xml e
environment .xml.
Também armazena florestas e partículas internamente. Para simplificar: a .lvl
é um arquivo de salvamento do jogo e é o seu ponto de entrada no jogo.
Antes de salvar seu nível, certifique-se de ter carregado os arquivos de
trabalho corretos na barra de título:
Então, clique no botão Salvar como na parte superior do editor:
nomeie o nível e salve-o em “<InstallDir> \ Data \ Level” pasta onde todos os
níveis do jogo estão localizados.
Agora você está pronto para equipar seu nível com camadas de recursos e
22
disponibilizá-lo para os jogadores.
Adicionando camadas de recursos
Uma vez que você terminou seu level design, você está pronto para preparar
seu nível para o jogo. A primeira coisa a fazer é adicionar camadas de
recursos para fornecer recursos vitais aos jogadores.
Camadas de recursos são arquivos PNG em escala de cinza simples que
cobrem todo o nível. Os valores de cor branca informam onde um
determinado recurso pode ser encontrado no mapa.
Para criar novas camadas de recursos, você precisará de uma captura de
tela de nível. Para fazer a foto nivelada, você pode usar o botão de
nivelamento localizado na aba Opções do editor:
Uma vez que você fez sua captura, você pode usá-la em sua ferramenta
DCC favorita (tipicamente photoshop ou paint.net) como uma máscara para
criar novas camadas.
As camadas devem ter 512x512 pixels (32 bits) de tamanho por motivos de
desempenho. Você pode verificar o diretório “<InstallDir> \ Data \ Gfx \
Paisagem \ Camadas” para comparar com os níveis existentes. O tiro de
nível criado a partir do editor já tem o tamanho correto.
Nota : você não é forçado a usar essa ferramenta para gerar suas camadas.
Você pode começar do nível e desenhá-los a partir do zero.
23
Depois que você terminar de projetar suas camadas citylink e resource, você
precisará vinculá-las ao nível.
Todas as camadas são referenciadas no arquivo “<InstallDir> \ Data \ Design
\ Script \ SimInfo \ Layers.lua”.
Cada nível tem uma seção dedicada que descreve todas as camadas que ele
fornece.
Importante : Para não sobrescrever o arquivo original e evitar conflitos de
arquivo com outros mapas da comunidade, crie o arquivo com a convenção
de nome a seguir: zzz_AuthorName_MapName_Layers.lua .
Importante : o prefixo zzz_ é importante para a inicialização do jogo. É para
ter certeza de que os scripts vêm depois dos scripts originais do jogo.
Aqui está um exemplo:
LAYERMANAGER.TextureLayersFilenames ["bigisland_03"] = {["bigisland_
03"] = {- Camadas GEM: Neve / Praia - NO ["GemSki_Snow"] = {"Dados / Gfx
/ Paisagem / Camadas / bigisland_03_GemSki_Snow.png", 198 },
["Gembeach_Beach"] = {"Dados / Gfx / Paisagem / Camadas / bigisland_03
_Gembeach_Beach.png", 194}, - Links da Cidade: Marítimo / Ferroviário /
Rodoviário / HighWay ["Sim_CityLinkInterCity_sea"] = {"Dados / Gfx /
Paisagem / Camadas / bigisland_03_Sim_CityLinkInterCity_sea.png ", 206}, -
NO [" Sim_CityLinkInterCity_rail "] = {" Dados / Gfx / Paisagem / Camadas /
bigisland_03_Sim_CityLinkInterCity_rail.png ", 210}, - NO ["
Sim_CityLinkInterCity_road "] = {" Data / Gfx / Paisagem / Camadas /
bigisland_03_Sim_CityLinkInterCity_road.png ", 218}, - NO ["
Sim_CityLinkInterCity_highway "] = {" Dados / Gfx / Paisagem / Camadas /
bigisland_03_Sim_CityLinkInterCity_highway.png ", 214}, - Recursos: Água /
Óleos / Agri / Environment - ["Sim_Water"] = {"Dados / Gfx / Paisagem /
Camadas / bigisland_03_Sim_Water.png", 222}, ["Sim_SeaSide"] = {"Dados /
Gfx / Paisagem / Camadas / bigislan d_03_Sim_SeaSide.png ", 255}, ["
Sim_Oils "] = {" Dados / Gfx / Paisagem / Camadas / bigisland_03
_Sim_Oils.png ", 230}, [" Sim_Agri "] = {" Dados / Gfx / Paisagem / Camadas /
bigisland_03_Sim_Agri. png ", 225}, [" Sim_Environment "] = {" Dados / Gfx /
Paisagem / Camadas / bigisland_03_Sim_Environment.png ", 0.98},},}
Importante : o nome do nível na primeira linha deve estar em minúsculas,
caso contrário suas camadas não serão encontradas!
Os nomes à esquerda (chaves) devem ser exatamente os mesmos para
todos os seus níveis.
Você pode desabilitar as camadas não utilizadas comentando-as com “-“:
As possíveis chaves da camada são:
⦁ Sim_CityLinkInterCity_sea: camada da área de porta
⦁ Sim_CityLinkInterCity_rail: não utilizado
⦁ Sim_CityLinkInterCity_road: camada de estradas interurbanas
⦁ Sim_CityLinkInterCity_highway: camada de rodovias intermunicipais
⦁ Sim_Water: camada de águas subterrâneas
⦁ Sim_Oils: camada de áreas produtoras de petróleo
⦁ Sim_Agri: camada de áreas férteis
⦁ Sim_Environment: camadas de ambiente e feriados
⦁ Sim_SeaSide: camada da área costeira
⦁ GemSki_Snow: área de neve para ski gem
24
⦁ GemSki_ContructArea: área de construção permitida para ski gem
Adicionando novos níveis ao jogo
Miniatura do mapa
Para adicionar seu novo nível ao jogo, certifique-se de ter preparado uma
miniatura para ele. Você pode usar o editor para capturar uma visualização
do seu nível usando o botão Captura de tela na guia Opções:
Depois de salvar sua captura de tela no disco, você terá que editá-la e salvá-
la no formato DDS. As miniaturas devem ter 256x256 pixels e serem
convertidas para o formato DXT1 (sem mipmaps). A imagem final deve ser
salva no diretório “InstallDir \ Data \ Interface \ DDSTexture \ Mapas”:
Você deve seguir o mesmo formato das outras miniaturas do mapa. Também
é melhor seguir as mesmas regras de nomenclatura.
Adicionando o nível às listas de mapas
Em seguida, você terá que criar dois arquivos para fazer referência ao novo
nível e disponibilizá-lo no jogo:
Importante : para não substituir o arquivo original e evitar conflitos de arquivo
com outros mapas da comunidade, crie os arquivos com o seguinte nome
convention:
<DataDraw> \ Data \ Design \ UnProtectedScript \
zzz_AuthorName_MapName_FullMapList.lua
<GameDir> \ Data \ Projeto \ UnProtectedScript \
zzz_AuthorName_MapName_MapList.lua
Importante : o prefixo zzz_ é importante para a inicialização do jogo. É para
ter certeza de que os scripts vêm depois dos scripts originais do jogo.
zzz_AuthorName_MapName_FullMapList.lua : este arquivo adicionará seu
mapa à lista.
Exemplo:
local maplist = {"bigisland_03"} MapSaveMgr.FullMapList =
MapSaveMgr.FullMapList para k, v em ipairs (maplist) do table.insert
(MapSaveMgr.FullMapList, 1, v) end
Nota : o nome do nível deve ser adicionado sem a extensão .lvl.
<GameDir> \ Data \ Design \ UnProtectedScript \
zzz_AuthorName_MapName_MapList.lua : este arquivo contém dados para a
descrição do mapa que aparecerá no menu de seleção do mapa.
Aqui você tem que combinar os recursos com as camadas que você
adicionou anteriormente ao seu nível (veja a seção “Adicionando camadas de
recursos”).
Crie o arquivo assim:
MapMgr.g_FullMapList ["bigisland_03"] = {["Sinalizadores"] = {"BEAC_0",
"ISLA_0"}, Recursos = {ÓLEOS = 1, WATR = 0, AGRI = 1, HLDY = 2,},
Edições = { }, Dificuldade = 70, Surface = 80, TransportAvailability = 30,
["Ativo"] = verdadeiro, ["Imagem"] = "bigisland_03.dds", ["Playable"] = true,}
Aqui está uma descrição das diferentes entradas:
⦁ Sinalizadores : lista de tags que serão usados nos filtros de seleção de
mapa (os valores possíveis são: BEAC_0, ISLA_0, DSRT_0 e SNOW_0 e
correspondem aos quatro filtros disponíveis no menu).
Nota : se você deixar esta lista vazia, seu nível desaparecerá quando os
filtros forem selecionados.
⦁ Recursos : esta seção define quantas estrelas serão exibidas para todos
25
os quatro principais recursos do jogo. Os valores variam de 0 (sem
estrelas) a 3 (3 estrelas).
⦁ Dificuldade, superfície e disponibilidade de transporte : valores de
percentual exibidos na descrição do mapa. Esses valores devem
corresponder à topologia do seu nível.
⦁ Imagem : este campo faz referência à miniatura do mapa criada
anteriormente (não é necessário o caminho)
Para estar disponível no planeta, seu nível deve ser atribuído aos slots
disponíveis. Todos os slots são listados no arquivo “<GameDir> \ Data \
Design \ Script \ Rede \ offlinedata \ PlanetSlotList_bup.xml”.
O processo de encontrar novos slots é totalmente manual.
Primeiro você terá que selecionar um ID de slot e verificar se ele não aparece
no arquivo “<GameDir> \ Data \ Test \ SlotMap.cxl”.
É melhor adicionar vários slots para o mapa para que você possa ter certeza
de que terá entradas disponíveis.
Depois de ter alguns IDs de slot não utilizados exclusivos, você terá que criar
o arquivo <GameDir> \ Data \ Design \ UnProtectedScript \
zzz_AuthorName_MapName_mapsavemgr.lua
Aqui está um exemplo com três slots:
CustomSlotDataSlotMap = CustomSlotDataSlotMap ou {}
CustomSlotDataSlotMap ["bigisland03"] = {[1] = {m_nTagsRange1 = 0,
m_LandScape = "HLDY_0", m_SlotId = 212859, m_X = 0.51181507110596,
m_nTagsRange2 = 260, m_Z = 0.13762007653713, m_Y =
0.84800124168396}, [2] = {m_nTagsRange1 = 0, m_LandScape = "HLDY_0",
m_SlotId = 214907, m_X = 0,67740488052368, m_nTagsRange2 = 268, m_Z
= 0,66928255558014, m_Y = -0,30525970458984}, [3] = {m_nTagsRange1 =
0, m_LandScape = "HLDY_0 ", m_SlotId = 206716, m_X
= -0,21043148636818, m_nTagsRange2 = 64, m_Z = 0,27851966023445,
m_Y = 0,93709409236908}}
Adicionando localização
27
⦁ Inicie o editor novamente.
O layout original deve ser restaurado.
As camadas do mapa não são exibidas quando clico nos botões de filtro do
jogo
Verifique se o seu nível tem uma seção dedicada no arquivo “<InstallDir> \
Data \ Design \ Script \ SimInfo \ Layers.lua” e se o nome do nível é
minúsculo sem extensão.
28