Pt-br/Cubemaps: Difference between revisions
m (Links) |
m (Setting bug notice hidetested=1 param on page where the bug might not need tested in param specified) |
||
(4 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{translate}} | |||
{{LanguageBar}} | {{LanguageBar}} | ||
{{Todo| | {{Todo|Precisa de informações sobre os cube maps da Source 2. Veja [[Draft:Cubemaps (Source 2)]].}} | ||
[[File:Env_cubemap.png|left]] | [[File:Env_cubemap.png|left]] | ||
[[File:Specular.jpg|thumb|right|300px| | [[File:Specular.jpg|thumb|right|300px|Um exemplo de reflexos especulares em alguns modelos (exagerados por causa do {{cmd|r_showenvcubemap}}).]] | ||
Um '''cubemap''' é uma textura que representa uma representação tridimensional de uma área. {{source|4.1}} usa entidades {{ent|env_cubemap}} como pontos de amostragem para gerar estas texturas, que são depois integradas no arquivo do [[BSP|mapa]]. Os cubemaps, quando [[#Building cubemaps|construídos]], são refletidos em materiais que usam o parâmetro [[$envmap]] (superfícies como vidro refletor, azulejos, água, etc.) Um mapa sem entidades '''env_cubemap''' construídas ou existentes usará outros tipos de “reflexões” que não o retratam corretamente. | |||
== | ==Construindo Cubemaps== | ||
BConstruir cubemaps é o processo de gerar texturas para usar como reflexões. Por razões técnicas, este processo não é automatizado {{mapbase|in|addtext-front='' Exceto''{{nbsp}}}} e cabe ao usuário fazê-lo; até lá, as entidades '''env_cubemap''' existentes permanecerão sem uso e o mapa, dependendo do jogo, mostrará uma textura genérica, preta ou [[Missing content|texturas “ em falta”]] como reflexos devido a cubemaps inexistentes. | |||
{{warning|{{clr}} | {{warning|{{clr}} | ||
* ''' | * '''PARA PESSOAS COM EPILEPSIA''': A criação de cubemaps em jogos executados em Vulkan, como {{l4d2|4.1}}, faz com que a tela pisque violentamente em preto e branco. Também em sistemas com CPU/GPU mais rápida <!-- confirmada com i5-12400F e RTX 3060 -->, a criação de cubemaps HDR em jogos do ramo pré-L4D, como {{css|4.1}}, mesmo com Direct3D 9/DX9, também fará a tela piscar em preto e branco repetidamente. | ||
* | * Se o comando {{Command|nav_show_ladder_bounds}} tiver sido usado antes da criação de cubemaps, as caixas verdes também serão incorporadas ao cubemap. | ||
* | * Se estiver criando cubemaps para o {{Hl2|4.1}} (exceto os episódios) após a '''Atualização do Aniversário de 20 anos''', você deverá iniciar o jogo com {{code|-game hl2}} [[command line argument|argumento da linha de comando]]. Caso contrário, o jogo tentará acessar o {{code|episodic/maps}} ({{hl2ep1}}) em vez do diretório de mapas {{hl2|1}}, fazendo com que o jogo não salve os cubemaps criados no mapa. Da mesma forma, se estiver criando cubemaps para mapas localizados no diretório Episode One ou Episode Two, inicie o jogo com {{code|-game episodic}} (para EP1) ou {{code|-game ep2}} (para o EP2), respectivamente (ou inicie o Episódio Um/Episódio Dois em Steam > Ferramentas). | ||
}} | }} | ||
=== | ===Antes de construir=== | ||
{{Cleanup| | {{Cleanup|Os jogos Source modernos, nomeadamente {{portal2|1}} e {{p2ce|1|nt=1}}, não precisam de todos estes parâmetros e passos complicados, pelo menos na minha experiência -[[User:Equalizer5118|Equalizer]] ([[User talk:Equalizer5118|talk]]) 10:56, 22 março 2024 (PDT) | ||
Também alguns jogos Source (como o CS:S), não parecem necessitar que os cheats estejam activados para construir cubemaps. -[[User:Kr0tchet|leonidakarlach]] ([[User talk:Kr0tchet|talk]]) 02:50, 25 agosto 2024 (PDT) | |||
}} | }} | ||
{{Important| | {{Important|Mapas para jogos {{src13|4.1}} e outros, como {{css|4.1}}, são conhecidos por incluírem cubemaps pré-construídos e em branco depois de serem compilados (mesmo que não existam entidades '''env_cubemap'''' neles); estes devem ser apagados antes de construir novos, como detalhado [[#Deleting cubemaps|aqui]]. Tal foi corrigido no {{mapbase|4.1}}}} | ||
{{tip|{{clr}} | {{tip|{{clr}} | ||
* {{ent|env_cubemap}} | * As entidades {{ent|env_cubemap}} [[Env cubemap#Keyvalues|permitem]] gerar reflexos de alta ou baixa qualidade, embora a qualidade da textura do jogo também entre em jogo; considere maximizar as configurações visuais do jogo antes de criar cubemaps. | ||
* | * Para criar cubemaps, a resolução da tela do seu jogo precisa ser pelo menos 4 vezes maior do que o maior [[Env cubemap#Keyvalues|tamanho]] de um '''env_cubemap''' existente, caso contrário, a tentativa de criá-los falhará ou até mesmo causará o travamento do jogo.<br>Por exemplo, se o maior '''env_cubemap''' tiver o tamanho 128x128, será necessária uma resolução não inferior a 512x512. (''128 × 4 = '''512''' -> 720x576'' (como uma resolução válida) ou superior){{note|O jogo pode parecer congelar ou deixar de responder durante o processo, e o tempo depende de vários fatores. Para obter resultados bem-sucedidos, não se afaste do jogo até que ele seja concluído.}} | ||
* | * Se estiver usando o {{mapbase|4.1}}, adicione {{code|-autocubemap}} à sua linha de comando em {{hammer|1}}. O jogo criará automaticamente cubemaps | ||
* {{slamminsrc|4.1|nt=1}} | * O {{slamminsrc|4.1|nt=1}} apresenta o comando {{code|-nodefaultcubemap}}, que ignora a geração automática de cubemaps skybox na compilação do mapa}}. | ||
===LDR=== | ===LDR=== | ||
{{note| | {{note|Esta etapa não se aplica a {{l4d|4.1}} nem a {{csgo|4.1}}, pois seus mapas são compilados somente no modo [[#HDR|HDR]]. Embora o {{p2|4.1}} seja compatível com LDR, o jogo usa HDR por padrão, portanto, recomendamos a criação de cubemaps somente em HDR.}} | ||
A criação de cubemaps em um mapa compilado no modo '''LDR''' (''Low Dynamic Range'') gerará texturas somente para esse modo, independentemente da configuração de vídeo ''High Dynamic Range'' do jogo. Para criar os cubemaps, envie os seguintes comandos para o console do jogo: | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! | ! Comando !! Descrição | ||
|- | |- | ||
| {{Command|mat_specular|0}} || | | {{Command|mat_specular|0}} || Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap ({{code|materials/engine/defaultcubemap.vtf}}, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. | ||
|- | |- | ||
| {{Command|map}} ''map_name''</code> || | | {{Command|map}} ''map_name''</code> || Carrega o mapa; substitua "''map_name''" pelo nome real do mapa | ||
|- | |- | ||
| {{Command|sv_cheats|1}} || | | {{Command|sv_cheats|1}} || Habilita o uso de comandos de trapaça; necessário para criar cubemaps<br>{{Confirm|{{hl2|1}} não parece exigir trapaças para criar cubemaps, portanto esta etapa pode ser ignorada. Confirme se outros jogos também exigem trapaças para criar cubemaps.}} | ||
|- | |- | ||
| {{Command|buildcubemaps}} || | | {{Command|buildcubemaps}} || Inicia a criação de cubemaps. Opcionalmente, especifique o número de iterações (e.g.: <code>buildcubemaps 2</code> (default is 1)) | ||
|- | |- | ||
| {{Command|disconnect}} || | | {{Command|disconnect}} || Descarrega o mapa e retorna ao menu principal | ||
|- | |- | ||
| {{Command|mat_specular|1}} || | | {{Command|mat_specular|1}} || Ativa os reflexos. | ||
|- | |- | ||
| {{Command|quit}} || ( | | {{Command|quit}} || (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos | ||
|} | |} | ||
===LDR + HDR=== | ===LDR + HDR=== | ||
A construção de cubemaps no jogo {{src06|3.1}} - {{src13|3.1}}, com um mapa compilado com suporte a [[HDR]], precisa ser executada duas vezes - uma para cada modo ('''HDR''' e '''LDR'''). Ao contrário do caso de um mapa '''LDR''', a configuração de vídeo ''High Dynamic Range'' do seu jogo deve ser definida como “Full” para criar cubemaps '''HDR''' e como “None” para criar cubemaps '''LDR''' (ou usando o comando {{code|mat_hdr_level}}. Para criar os cubemaps para LDR + HDR, envie os seguintes comandos para o console do jogo: | |||
{{Note| | {{Note|Os mapas criados em {{l4d|1}} ou posteriores (e alguns jogos Source de terceiros) não exigem a criação de cubemaps em LDR. Veja [[#HDR]]}} | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! | ! Comando !! Descrição | ||
|- | |- | ||
| {{Command|mat_specular|0}} || | | {{Command|mat_specular|0}} || Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap ({{code|materials/engine/defaultcubemap.vtf}}, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. | ||
|- | |- | ||
| {{Command|map}} ''map_name'' || | | {{Command|map}} ''map_name'' || Carrega o mapa; substitua "''map_name''" pelo nome real do mapa | ||
|- | |- | ||
| {{Command|sv_cheats|1}} || | | {{Command|sv_cheats|1}} || Habilita o uso de comandos de trapaça; necessário para criar cubemaps<br>{{Confirm|{{hl2|1}} não parece exigir trapaças para criar cubemaps, portanto, esta etapa pode ser ignorada. Confirme se outros jogos também exigem trapaças para criar cubemaps}}. | ||
|- | |- | ||
| {{Command|building_cubemaps|1}} || | | {{Command|building_cubemaps|1}} || Define a exposição HDR em um valor consistente. Isso será redefinido automaticamente para 0 depois que os cubemaps forem criados. | ||
|- | |- | ||
| {{Command|buildcubemaps}} || | | {{Command|buildcubemaps}} || Começa a criar cubemaps. Opcionalmente, especifique o número de iterações (e.g.: <code>buildcubemaps 2</code> (o padrão é 1)) | ||
|- | |- | ||
| {{Command|disconnect}} || | | {{Command|disconnect}} || Descarrega o mapa e retorna ao menu principal | ||
|- | |- | ||
| {{Command|sv_cheats|0}} || | | {{Command|sv_cheats|0}} || Desativa os comandos de trapaça; evita que o comando <code>''mat_reloadallmaterials''</code> se autoexecute desnecessariamente (o que congela o jogo por um breve período) | ||
|- | |- | ||
| {{Command|mat_hdr_level|0}} || | | {{Command|mat_hdr_level|0}} || Muda para o modo '''LDR''' (de '''HDR'''); em vez disso, envie <code>''mat_hdr_level 2''</code> se os cubemaps '''LDR''' tiverem sido criados primeiro | ||
|- | |- | ||
| {{Command|map}} ''map_name'' || | | {{Command|map}} ''map_name'' || Carrega o mapa novamente para criar cubemaps para o novo modo | ||
|- | |- | ||
| {{Command|sv_cheats|1}} || | | {{Command|sv_cheats|1}} || | ||
|- | |- | ||
| {{Command|buildcubemaps}} || Begins building cubemaps for the new mode | | {{Command|buildcubemaps}} || Begins building cubemaps for the new mode | ||
Line 80: | Line 80: | ||
| {{Command|disconnect}} || | | {{Command|disconnect}} || | ||
|- | |- | ||
| {{Command|mat_specular|1}} || | | {{Command|mat_specular|1}} || Ativa os reflexos. | ||
|- | |- | ||
| {{Command|mat_hdr_level|0/1/2}} || | | {{Command|mat_hdr_level|0/1/2}} || Se necessário, retorna ao modo em que estava antes de ter enviado <code>''mat_hdr_level 0/2''</code> | ||
|- | |- | ||
| {{Command|quit}} || ( | | {{Command|quit}} || (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos | ||
|} | |} | ||
===HDR=== | ===HDR=== | ||
Esta seção destina-se a jogos que executam {{l4dbranch|4}} e ramificações de mecanismo posteriores ou ramificações de mecanismo que suportam apenas HDR ({{xengine|1}}). Para criar cubemaps apenas em HDR, envie os seguintes comandos para o console do jogo: | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! | ! Comando !! Descrição | ||
|- | |- | ||
| {{Command|mat_specular|0}} || | | {{Command|mat_specular|0}} || Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap ({{code|materials/engine/defaultcubemap.vtf}}, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. | ||
|- | |- | ||
| {{Command|map}} ''map_name'' || | | {{Command|map}} ''map_name'' || Carrega o mapa; substitua "''map_name''" pelo nome real do mapa | ||
|- | |- | ||
| {{Command|sv_cheats|1}} || | | {{Command|sv_cheats|1}} || Permite o uso de comandos de trapaça; necessário para criar cubemaps | ||
|- | |- | ||
| {{Command|building_cubemaps|1}} || | | {{Command|building_cubemaps|1}} || Define a exposição HDR em um valor consistente. Isso será redefinido automaticamente para 0 depois que os cubemaps forem criados. | ||
|- | |- | ||
| {{Command|buildcubemaps}} || | | {{Command|buildcubemaps}} || Inicia a criação de cubemaps. Opcionalmente, especifique o número de iterações | ||
|- | |- | ||
| {{Command|disconnect}} || | | {{Command|disconnect}} || Descarrega o mapa e retorna ao menu principal | ||
|- | |- | ||
| {{Command|mat_specular|1}} || | | {{Command|mat_specular|1}} || Ativa os reflexos. | ||
|- | |- | ||
| {{Command|quit}} || ( | | {{Command|quit}} || (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos | ||
|} | |} | ||
== | ==Criando cubemaps em jogos específicos== | ||
===Black Mesa: Source=== | ===Black Mesa: Source=== | ||
Para criar cubemaps em mapas {{bms|4.1}}, o jogo deve ser iniciado com estes parâmetros: <code>-oldgameui -dev -console +r_4way_use_fast_normals 0 +mat_specular 0</code><br>Em seguida, carregue o mapa e envie o comando <code>buildcubemaps</code> para o console. | |||
===Half-Life: Source=== | ===Half-Life: Source=== | ||
{{bug| | {{bug|hidetested=1|Atualmente, não é possível criar cubemaps no {{hls|4.1}}, pois suas texturas, apesar de serem geradas, não são incorporadas ao arquivo de mapa posteriormente. | ||
{{workaround| | {{workaround|Mova o arquivo de mapa para a pasta {{path|maps}} de um jogo no mesmo ramo do motor (como {{hl2|4.1}}), crie seus cubemaps nesse jogo e, em seguida, mova o arquivo de volta para a pasta '''Half-Life: Source'''<nowiki>'</nowiki>s folder.}}{{Confirm|Corrigido em {{hldms}}?}}}} | ||
===Half-Life 2 (20th Anniversary Update) === | ===Half-Life 2 (20th Anniversary Update) === | ||
{{bug|hidetested=1| | {{bug|hidetested=1|A criação de cubemaps em {{hl2|4.1}}, {{hl2ep1|4.1}} e {{hl2ep2|4.1}}, após a atualização do 20º aniversário, pode falhar. No caso do Half-Life 2, o jogo pode acessar o diretório errado (exemplo: {{code|episodic/maps}}), em vez de {{code|hl2/maps}}, impedindo que os cubemaps sejam incorporados ao arquivo de mapa. | ||
Você também pode ver essa mensagem de erro gerada no console: | |||
{{code|vtex failed to compile cubemap! Unable to remove \steamapps\common\half-life 2\episodic\materials\maps\<map name>\<cubemap location>.vtf}} | {{code|vtex failed to compile cubemap! Unable to remove \steamapps\common\half-life 2\episodic\materials\maps\<map name>\<cubemap location>.vtf}} | ||
}} | }} | ||
{{Workaround| | {{Workaround|Inicie o Half-Life 2 com {{code|-game hl2}} [[command line argument]]. Para episódios, inicie o jogo em Steam > Tools (ou usando {{code|-game episodic}} ou {{code|-game ep2}}).}} | ||
===Portal 2=== | ===Portal 2=== | ||
{{bug| | {{bug|hidetested=1|A criação de cubemaps no {{portal2|4.1}} falhará se o arquivo de mapa não estiver na pasta DLC de número mais alto ({{path|dlc2}} por padrão). | ||
{{workaround| | {{workaround|Mova o mapa para essa pasta antes de criar cubemaps e, se necessário, edite o caminho "'''Colocar mapas compilados neste diretório antes de executar o jogo"''' nas opções do [[Hammer Build Programs|Hammer's Build Programs]] para que o mapa seja gerado automaticamente lá.}}}} | ||
===Portal 2: Community Edition=== | ===Portal 2: Community Edition=== | ||
{{bug| | {{bug|hidetested=1|A quantidade de iterações (por exemplo: {{command|buildcubemaps|2}}) não funciona atualmente no {{p2ce|4.1}}. | ||
{{workaround| | {{workaround|Execute o comando {{command|buildcubemaps}}, recarregue o mapa e, em seguida, execute o comando novamente. Se necessário, repita essas etapas sucessivamente.}}}} | ||
===Source Filmmaker=== | ===Source Filmmaker=== | ||
[[File:Cubemap_bug_sfm.jpg|thumb|right|300px| | [[File:Cubemap_bug_sfm.jpg|thumb|right|300px|Renderização incorreta do rosto de um cubemap HDR no Source Filmmaker.]] | ||
{{bug|'''HDR''' | {{bug|hidetested=1|Os cubemaps '''HDR''' com tamanho inferior a 64x64 incorporados no {{tf2|4.1}} e em alguns outros jogos geralmente exibem artefatos gráficos em reflexos devido ao fato de a última face de cada cubemap não ser renderizada corretamente no {{sfm|4.1}}. Embora a reconstrução de cubemaps nele normalmente corrija o problema, atualmente não é possível fazer isso, pois o {{sfm|4.1}} gera texturas em branco. | ||
{{workaround| | {{workaround|Se a recompilação de uma versão especial de um mapa afetado com o tamanho de 64x64 (ou superior) do {{ent|env_cubemap}} não for uma opção, mova o arquivo do mapa para a pasta {{as|4.1}}<nowiki>'</nowiki>s {{path|maps}}, crie seus cubemaps nesse jogo e, em seguida, mova o arquivo de volta para a pasta {{sfm|4.1}}<nowiki>'</nowiki>s.}}}} | ||
:{{note|'''Alien Swarm'''<nowiki>'</nowiki> | :{{note|O arquivo “gameinfo.txt” do '''Alien Swarm'''<nowiki>'</nowiki> precisa ser modificado para esse procedimento, de modo que o jogo possa ter acesso aos recursos usados pelos mapas de outros jogos para não criar cubemaps com texturas ou modelos ausentes. A seção “SearchPaths” do arquivo deve ter a seguinte aparência:}} | ||
"SearchPaths" | "SearchPaths" | ||
{ | { | ||
Line 153: | Line 153: | ||
'''"Game" "..\SourceFilmmaker\game\hl2"''' | '''"Game" "..\SourceFilmmaker\game\hl2"''' | ||
} | } | ||
{{note|{{tf2|4.1}} | {{note|As configurações do {{tf2|4.1}} foram usadas no exemplo; considere a possibilidade de substituir as subpastas de jogos (somente aquelas dentro dos caminhos {{sfm|4.1}}) pelas necessárias. | ||
:{{workaround| | :{{workaround|Outra opção é remover manualmente o [[$envmapsphere|sphere map]] (face nº 7) das texturas de cubemaps HDR existentes. Consulte [[$envmap#reating a custom static cubemap texture|Criando uma textura de cubemap estática personalizada]] para obter mais informações.<br>Como alternativa, a exclusão dos arquivos de textura de cubemaps HDR afetados fará com que sejam usadas as versões LDR, que não sofrem com esse erro.}}}} | ||
== | ==Deletando cubemaps== | ||
Várias ferramentas possibilitam a exclusão de cubemaps desnecessários ou desatualizados; o [[BSPZIP]] é uma ferramenta oficial de linha de comando que geralmente é a opção preferida para esse procedimento, permitindo um uso improvável de corromper o arquivo de mapa devido ao uso indevido. Para excluir cubemaps, execute o seguinte comando na pasta {{path|maps}}: | |||
..\..\bin\bspzip -deletecubemaps | ..\..\bin\bspzip -deletecubemaps nome_mapa.bsp | ||
{{note| | {{note|Substitua "''nome_mapa"'' pelo nome real do mapa.}} | ||
{{warning| | {{warning|A exclusão de cubemaps, na verdade, exclui todos os arquivos de textura (“[[Valve Texture Format|.vtf]]”) atualmente incorporados ao mapa, portanto, recomenda-se não incorporar texturas personalizadas antes de excluir cubemaps.}} | ||
== | ==Extraindo cubemaps== | ||
Nos casos em que um mapa tiver de ser recompilado com pequenas alterações (e seus cubemaps construídos desaparecerem como resultado), extraí-los antecipadamente fará com que não seja necessário passar por todo o processo de construção de cubemaps novamente. Para extrair cubemaps com o '''BSPZIP''', crie uma pasta que conterá os cubemaps extraídos dentro da pasta {{path|maps}} e, em seguida, execute o seguinte comando: | |||
..\..\bin\bspzip -extractcubemaps | ..\..\bin\bspzip -extractcubemaps nome_mapa.bsp "nomepasta" | ||
{{note| | {{note|Substitua “‘’nome_mapa‘’” pelo nome real do mapa e “‘’nomepasta‘’” pelo nome real da pasta para a qual extrair os cubemaps.}} | ||
=== | ===Incorporação de cubemaps=== | ||
Para que o '''BSPZIP''' faça com que um mapa use cubemaps extraídos, crie um arquivo de texto dentro da pasta {{path|maps}}. O conteúdo do arquivo deve ser semelhante a este: | |||
materials/maps/ | materials/maps/nome_mapa/c-128_384_64.hdr.vtf | ||
''' | '''nomepasta\materials\maps\nome_mapa\c-128_384_64.hdr.vtf''' | ||
materials/maps/ | materials/maps/nome_mapa/c-128_384_64.vtf | ||
''' | '''nomepasta\materials\maps\nome_mapa\c-128_384_64.vtf''' | ||
materials/maps/ | materials/maps/nome_mapa/c448_-256_64.hdr.vtf | ||
''' | '''nomepasta\materials\maps\nome_mapa\c448_-256_64.hdr.vtf''' | ||
materials/maps/ | materials/maps/nome_mapa/c448_-256_64.vtf | ||
''' | '''nomepasta\materials\maps\nome_mapa\c448_-256_64.vtf''' | ||
materials/maps/ | materials/maps/nome_mapa/cubemapdefault.vtf | ||
''' | '''nomepasta\materials\maps\nome_mapa\cubemapdefault.vtf''' | ||
{{note| | {{note|Substitua “‘’nome_mapa‘’” pelo nome real do mapa, os nomes de arquivo dos cubemaps pelos nomes corretos e “‘’nomepasta‘’” pelo nome real da pasta que contém os cubemaps extraídos.}} | ||
Um arquivo requer duas linhas dedicadas (caminhos): a primeira linha representa o caminho que será usado no arquivo de mapa, enquanto a segunda é o local real do arquivo a ser incorporado no arquivo de mapa. No exemplo, foram usados caminhos de localização relativos, mas eles também podem ser absolutos. Quando o arquivo de texto estiver pronto, execute o seguinte comando: | |||
..\..\bin\bspzip -addlist | ..\..\bin\bspzip -addlist nome_mapa.bsp texto.txt novomapa_nome.bsp | ||
{{note| | {{note|Substitua “‘’nome_mapa‘’” pelo nome real do mapa, “‘’texto‘’” pelo nome real do arquivo de texto e “‘’newmap_name‘’” pelo nome real do mapa ou por um novo nome que não substitua o arquivo original (e, em vez disso, crie um arquivo separado).}} | ||
== | ==Renomeação de um mapa== | ||
Para que os cubemaps criados funcionem, eles devem estar localizados em uma pasta com o nome do mapa; essa pasta é criada automaticamente no arquivo de mapa durante o processo de criação. Renomear o arquivo de mapa não renomeará também a referida pasta e, portanto, os cubemaps não serão acessados. Alguns aplicativos de terceiros permitem renomear a pasta, embora não seja aconselhável fazê-lo, pois isso pode corromper o arquivo. Em vez disso, exclua e reconstrua os cubemaps ou reverta o mapa para seu nome original. | |||
== | ==Veja Também== | ||
* [[env_cubemap]] | * [[env_cubemap]] | ||
* [[$envmap]] | * [[$envmap]] | ||
* [[parallax_obb]] - | * [[parallax_obb]] - Para cubemaps com correção de paralaxe. | ||
[[Category:Level Design]] | [[Category:Level Design]] |
Latest revision as of 07:23, 20 May 2025

This page either contains information that is only partially or incorrectly translated, or there isn't a translation yet.
If this page cannot be translated for some reason, or is left untranslated for an extended period of time after this notice is posted, the page should be requested to be deleted.
Also, please make sure the article complies with the alternate languages guide.

Um cubemap é uma textura que representa uma representação tridimensional de uma área. Source usa entidades env_cubemap como pontos de amostragem para gerar estas texturas, que são depois integradas no arquivo do mapa. Os cubemaps, quando construídos, são refletidos em materiais que usam o parâmetro $envmap (superfícies como vidro refletor, azulejos, água, etc.) Um mapa sem entidades env_cubemap construídas ou existentes usará outros tipos de “reflexões” que não o retratam corretamente.
Construindo Cubemaps
BConstruir cubemaps é o processo de gerar texturas para usar como reflexões. Por razões técnicas, este processo não é automatizado ( Exceto em ) e cabe ao usuário fazê-lo; até lá, as entidades env_cubemap existentes permanecerão sem uso e o mapa, dependendo do jogo, mostrará uma textura genérica, preta ou texturas “ em falta” como reflexos devido a cubemaps inexistentes.

- PARA PESSOAS COM EPILEPSIA: A criação de cubemaps em jogos executados em Vulkan, como
Left 4 Dead 2, faz com que a tela pisque violentamente em preto e branco. Também em sistemas com CPU/GPU mais rápida , a criação de cubemaps HDR em jogos do ramo pré-L4D, como
Counter-Strike: Source, mesmo com Direct3D 9/DX9, também fará a tela piscar em preto e branco repetidamente.
- Se o comando nav_show_ladder_bounds tiver sido usado antes da criação de cubemaps, as caixas verdes também serão incorporadas ao cubemap.
- Se estiver criando cubemaps para o
Half-Life 2 (exceto os episódios) após a Atualização do Aniversário de 20 anos, você deverá iniciar o jogo com -game hl2 argumento da linha de comando. Caso contrário, o jogo tentará acessar o episodic/maps (
) em vez do diretório de mapas Half-Life 2, fazendo com que o jogo não salve os cubemaps criados no mapa. Da mesma forma, se estiver criando cubemaps para mapas localizados no diretório Episode One ou Episode Two, inicie o jogo com -game episodic (para EP1) ou -game ep2 (para o EP2), respectivamente (ou inicie o Episódio Um/Episódio Dois em Steam > Ferramentas).
Antes de construir

Também alguns jogos Source (como o CS:S), não parecem necessitar que os cheats estejam activados para construir cubemaps. -leonidakarlach (talk) 02:50, 25 agosto 2024 (PDT)





- As entidades env_cubemap permitem gerar reflexos de alta ou baixa qualidade, embora a qualidade da textura do jogo também entre em jogo; considere maximizar as configurações visuais do jogo antes de criar cubemaps.
- Para criar cubemaps, a resolução da tela do seu jogo precisa ser pelo menos 4 vezes maior do que o maior tamanho de um env_cubemap existente, caso contrário, a tentativa de criá-los falhará ou até mesmo causará o travamento do jogo.
Por exemplo, se o maior env_cubemap tiver o tamanho 128x128, será necessária uma resolução não inferior a 512x512. (128 × 4 = 512 -> 720x576 (como uma resolução válida) ou superior)Notar:O jogo pode parecer congelar ou deixar de responder durante o processo, e o tempo depende de vários fatores. Para obter resultados bem-sucedidos, não se afaste do jogo até que ele seja concluído.
- Se estiver usando o
Mapbase, adicione -autocubemap à sua linha de comando em Hammer. O jogo criará automaticamente cubemaps
- O
Slammin' VBSP apresenta o comando -nodefaultcubemap, que ignora a geração automática de cubemaps skybox na compilação do mapa
.
LDR




A criação de cubemaps em um mapa compilado no modo LDR (Low Dynamic Range) gerará texturas somente para esse modo, independentemente da configuração de vídeo High Dynamic Range do jogo. Para criar os cubemaps, envie os seguintes comandos para o console do jogo:
Comando | Descrição |
---|---|
mat_specular 0 | Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap (materials/engine/defaultcubemap.vtf, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. |
map map_name | Carrega o mapa; substitua "map_name" pelo nome real do mapa |
sv_cheats 1 | Habilita o uso de comandos de trapaça; necessário para criar cubemaps![]() |
buildcubemaps | Inicia a criação de cubemaps. Opcionalmente, especifique o número de iterações (e.g.: buildcubemaps 2 (default is 1))
|
disconnect | Descarrega o mapa e retorna ao menu principal |
mat_specular 1 | Ativa os reflexos. |
quit | (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos |
LDR + HDR
A construção de cubemaps no jogo Source 2006 - Source 2013, com um mapa compilado com suporte a HDR, precisa ser executada duas vezes - uma para cada modo (HDR e LDR). Ao contrário do caso de um mapa LDR, a configuração de vídeo High Dynamic Range do seu jogo deve ser definida como “Full” para criar cubemaps HDR e como “None” para criar cubemaps LDR (ou usando o comando mat_hdr_level. Para criar os cubemaps para LDR + HDR, envie os seguintes comandos para o console do jogo:

Comando | Descrição |
---|---|
mat_specular 0 | Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap (materials/engine/defaultcubemap.vtf, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. |
map map_name | Carrega o mapa; substitua "map_name" pelo nome real do mapa |
sv_cheats 1 | Habilita o uso de comandos de trapaça; necessário para criar cubemaps![]() |
building_cubemaps 1 | Define a exposição HDR em um valor consistente. Isso será redefinido automaticamente para 0 depois que os cubemaps forem criados. |
buildcubemaps | Começa a criar cubemaps. Opcionalmente, especifique o número de iterações (e.g.: buildcubemaps 2 (o padrão é 1))
|
disconnect | Descarrega o mapa e retorna ao menu principal |
sv_cheats 0 | Desativa os comandos de trapaça; evita que o comando mat_reloadallmaterials se autoexecute desnecessariamente (o que congela o jogo por um breve período)
|
mat_hdr_level 0 | Muda para o modo LDR (de HDR); em vez disso, envie mat_hdr_level 2 se os cubemaps LDR tiverem sido criados primeiro
|
map map_name | Carrega o mapa novamente para criar cubemaps para o novo modo |
sv_cheats 1 | |
buildcubemaps | Begins building cubemaps for the new mode |
disconnect | |
mat_specular 1 | Ativa os reflexos. |
mat_hdr_level 0/1/2 | Se necessário, retorna ao modo em que estava antes de ter enviado mat_hdr_level 0/2
|
quit | (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos |
HDR
Esta seção destina-se a jogos que executam Left 4 Dead engine branch e ramificações de mecanismo posteriores ou ramificações de mecanismo que suportam apenas HDR (Xengine). Para criar cubemaps apenas em HDR, envie os seguintes comandos para o console do jogo:
Comando | Descrição |
---|---|
mat_specular 0 | Desativa os reflexos, o que é necessário se estiver usando apenas uma iteração de buildcubemaps. Isso também significa que a desativação dos reflexos evitaria alguns casos em que as texturas ausentes ou a textura padrão do cubemap (materials/engine/defaultcubemap.vtf, também conhecida como um deserto com céu laranja ao pôr do sol), poderiam acabar refletidas no próprio cubemap. |
map map_name | Carrega o mapa; substitua "map_name" pelo nome real do mapa |
sv_cheats 1 | Permite o uso de comandos de trapaça; necessário para criar cubemaps |
building_cubemaps 1 | Define a exposição HDR em um valor consistente. Isso será redefinido automaticamente para 0 depois que os cubemaps forem criados. |
buildcubemaps | Inicia a criação de cubemaps. Opcionalmente, especifique o número de iterações |
disconnect | Descarrega o mapa e retorna ao menu principal |
mat_specular 1 | Ativa os reflexos. |
quit | (opcional) Sai do jogo. Em alguns jogos, é necessário reiniciar o jogo para exibir os cubemaps recém-construídos |
Criando cubemaps em jogos específicos
Black Mesa: Source
Para criar cubemaps em mapas Black Mesa, o jogo deve ser iniciado com estes parâmetros:
-oldgameui -dev -console +r_4way_use_fast_normals 0 +mat_specular 0
Em seguida, carregue o mapa e envie o comando buildcubemaps
para o console.
Half-Life: Source




maps
de um jogo no mesmo ramo do motor (como 
Half-Life 2 (20th Anniversary Update)




Você também pode ver essa mensagem de erro gerada no console: vtex failed to compile cubemap! Unable to remove \steamapps\common\half-life 2\episodic\materials\maps\<map name>\<cubemap location>.vtf

Portal 2



dlc2
por padrão).

Portal 2: Community Edition



Source Filmmaker







maps
, crie seus cubemaps nesse jogo e, em seguida, mova o arquivo de volta para a pasta 
Notar:O arquivo “gameinfo.txt” do Alien Swarm' precisa ser modificado para esse procedimento, de modo que o jogo possa ter acesso aos recursos usados pelos mapas de outros jogos para não criar cubemaps com texturas ou modelos ausentes. A seção “SearchPaths” do arquivo deve ter a seguinte aparência:
"SearchPaths" { "Game" "|gameinfo_path|." "Game" "swarm_base" "Game" "platform" "Game" "..\SourceFilmmaker\game\usermod" "Game" "..\SourceFilmmaker\game\tf_movies" "Game" "..\SourceFilmmaker\game\tf" "Game" "..\SourceFilmmaker\game\hl2" }



Gambiarra:Outra opção é remover manualmente o sphere map (face nº 7) das texturas de cubemaps HDR existentes. Consulte Criando uma textura de cubemap estática personalizada para obter mais informações.
Como alternativa, a exclusão dos arquivos de textura de cubemaps HDR afetados fará com que sejam usadas as versões LDR, que não sofrem com esse erro.
Deletando cubemaps
Várias ferramentas possibilitam a exclusão de cubemaps desnecessários ou desatualizados; o BSPZIP é uma ferramenta oficial de linha de comando que geralmente é a opção preferida para esse procedimento, permitindo um uso improvável de corromper o arquivo de mapa devido ao uso indevido. Para excluir cubemaps, execute o seguinte comando na pasta maps
:
..\..\bin\bspzip -deletecubemaps nome_mapa.bsp


Extraindo cubemaps
Nos casos em que um mapa tiver de ser recompilado com pequenas alterações (e seus cubemaps construídos desaparecerem como resultado), extraí-los antecipadamente fará com que não seja necessário passar por todo o processo de construção de cubemaps novamente. Para extrair cubemaps com o BSPZIP, crie uma pasta que conterá os cubemaps extraídos dentro da pasta maps
e, em seguida, execute o seguinte comando:
..\..\bin\bspzip -extractcubemaps nome_mapa.bsp "nomepasta"

Incorporação de cubemaps
Para que o BSPZIP faça com que um mapa use cubemaps extraídos, crie um arquivo de texto dentro da pasta maps
. O conteúdo do arquivo deve ser semelhante a este:
materials/maps/nome_mapa/c-128_384_64.hdr.vtf nomepasta\materials\maps\nome_mapa\c-128_384_64.hdr.vtf materials/maps/nome_mapa/c-128_384_64.vtf nomepasta\materials\maps\nome_mapa\c-128_384_64.vtf materials/maps/nome_mapa/c448_-256_64.hdr.vtf nomepasta\materials\maps\nome_mapa\c448_-256_64.hdr.vtf materials/maps/nome_mapa/c448_-256_64.vtf nomepasta\materials\maps\nome_mapa\c448_-256_64.vtf materials/maps/nome_mapa/cubemapdefault.vtf nomepasta\materials\maps\nome_mapa\cubemapdefault.vtf

Um arquivo requer duas linhas dedicadas (caminhos): a primeira linha representa o caminho que será usado no arquivo de mapa, enquanto a segunda é o local real do arquivo a ser incorporado no arquivo de mapa. No exemplo, foram usados caminhos de localização relativos, mas eles também podem ser absolutos. Quando o arquivo de texto estiver pronto, execute o seguinte comando:
..\..\bin\bspzip -addlist nome_mapa.bsp texto.txt novomapa_nome.bsp

Renomeação de um mapa
Para que os cubemaps criados funcionem, eles devem estar localizados em uma pasta com o nome do mapa; essa pasta é criada automaticamente no arquivo de mapa durante o processo de criação. Renomear o arquivo de mapa não renomeará também a referida pasta e, portanto, os cubemaps não serão acessados. Alguns aplicativos de terceiros permitem renomear a pasta, embora não seja aconselhável fazê-lo, pois isso pode corromper o arquivo. Em vez disso, exclua e reconstrua os cubemaps ou reverta o mapa para seu nome original.
Veja Também
- env_cubemap
- $envmap
- parallax_obb - Para cubemaps com correção de paralaxe.