Pt-br/3D Skybox: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Created page with "{{subst:#if: CREATING TRANSLATION OF '3D Skybox' to 'português do Brasil' VIA Template:LanguageBar BUTTONS...")
 
(BR translation added)
Line 1: Line 1:
{{translate}}{{wip}}
{{LanguageBar}}
{{LanguageBar}}
{{subpage|[[Skybox Basics]]}}
{{subpage|[[Skybox Basics]]}}
Adding a ''3D skybox'' can be a powerful addition to the visual treatment of a level. The 3D skybox is an extra area constructed by the level designer that is outside the bounds of the gameplay portion of the map. When the map is loaded, Source enlarges the objects in the 3D skybox area and places them outside the boundaries of the current level, between the [[skybox]] and the player. This is used to give the appearance of a much wider world out side of your level, without being too expensive on the budget due to the (by default) 1:16 scale. 3D skyboxes are non-interactive – the player and other entities cannot move into the 3D skybox space.
A criação de uma “skybox 3D” pode ser uma adição poderosa ao tratamento visual de um nível. A skybox 3D é uma área extra construída pelo designer de níveis que está fora dos limites da parte de jogabilidade do mapa. Quando o mapa é carregado, o Source amplia os objetos na área da skybox 3D e os coloca fora dos limites do nível atual, entre a [[skybox]] e o jogador. Isso é usado para dar a aparência de um mundo muito mais amplo fora da sua fase, sem ser muito caro para o orçamento devido à escala 1:16 (por padrão). As skyboxes 3D não são interativas: o jogador e outras entidades não podem se mover para o espaço da skybox 3D.


3D skybox geometry can be indistinguishable from normal level geometry. Seamless transitions from normal level geometry and 3D skybox are very possible, and are used in many of the maps for official Source games such as [[Counter-Strike: Source]].
A geometria da skybox 3D pode ser indistinguível da geometria de nível normal. As transições perfeitas entre a geometria de nível normal e a skybox 3D são muito possíveis e são usadas em muitos dos mapas dos jogos oficiais da Source, como [[Counter-Strike: Source]].


{{bug|In {{Portal|4.1}}, ''3D skyboxes do not render properly when observed through portals.'' - [[:Image:3dSkyboxProb.png|see here]].|only=portal}}
{{bug|Em {{Portal|4.1}}, '' as skyboxes 3D não são renderizadas corretamente quando observadas através de portais''. - [[:Image:3dSkyboxProb.png|see here]].|only=portal}}
{{modernImportant|A 3D skybox is not a replacement for a [[2D skybox]]. Instead, a 3D skybox should be considered a "skyroom", which is always drawn behind regular level geometry, and of which the regular (2D) skybox is always drawn behind.}}
{{modernImportant|Uma skybox 3D não substitui uma [[skybox 2D]]. Em vez disso, um skybox 3D deve ser considerado um “skyroom”, que é sempre desenhado atrás da geometria regular do nível, e do qual o skybox regular (2D) é sempre desenhado atrás.}}
{{note|{{clr}}
{{note|{{clr}}
* In {{l4d|4.1}}, the default scaling is 1:32, NOT 1:16 (But 1:16 works properly!)
* Em {{l4d|4.1}}, a escala padrão é 1:32, NÃO 1:16 (mas 1:16 funciona corretamente!)
* To avoid lighting problems, do not use [[light]] (or any other lights without the Env_ prefix) in the skybox
* Para evitar problemas de iluminação, não use [[light]] (ou qualquer outra luz sem o prefixo Env_) na skybox
:{{why|What sort of problems? You can have a separate [[light_environment]] in the skyroom and it will work fine.}}
:{{why|Quais são os tipos de problemas? Você pode ter um [[light_environment]] separado no skyroom e ele funcionará bem.}}
* In {{Portal2|4.1}} some skybox geometry won't be visible unless you set the cvar <code>r_skybox_draw_last</code> to <code>0</code>.}}
* Em {{Portal2|4.1}} algumas geometrias de skybox não serão visíveis, a menos que você defina o cvar <code>r_skybox_draw_last</code> como <code>0</code>.}}


==Benefits==
== Benefícios ==
Standard skyboxes are simple 2D images, mapped onto a cube so they surround the level. 3D skyboxes are full 3D geometry, and properly parallax as the player moves through the level. Since they are rendered in real time, they scale with the video card resolution and also support real-time shader effects not possible in 2D skyboxes.
As skyboxes padrão são imagens 2D simples, mapeadas em um cubo para que circundem o nível. Os skyboxes 3D são uma geometria totalmente em 3D e são devidamente paralaxe à medida que o jogador se move pelo nível. Como são renderizadas em tempo real, elas são dimensionadas de acordo com a resolução da placa de vídeo e também suportam efeitos de sombreamento em tempo real que não são possíveis em skyboxes 2D.


The main benefit of using a 3D skybox is that it allows the level designer to make the map look much larger than is possible with the standard world geometry. The largest map that can be made without a 3D skybox is 32768 units on each side. Using a 3D skybox, the map can be extended to 16 times that amount.
A principal vantagem de usar uma skybox 3D é que ela permite que o designer de níveis faça o mapa parecer muito maior do que é possível com a geometria padrão do mundo. O maior mapa que pode ser criado sem uma skybox 3D é de 32768 unidades em cada lado. Usando uma skybox 3D, o mapa pode ser estendido para 16 vezes essa quantidade.


Maps of this size are possible because 3D skyboxes are created in the Hammer editor at 1/16 the scale of standard maps. At run time, the engine scales them back up to match the scale of the rest of the map. Not only does this save space in the editor views, it also is much less expensive to compile and render.
Mapas desse tamanho são possíveis porque as skyboxes 3D são criadas no Hammer Editor em uma escala de 1/16 da escala dos mapas padrão. Em tempo de execução, o mecanismo as dimensiona novamente para corresponder à escala do restante do mapa. Isso não apenas economiza espaço nas exibições do editor, mas também é muito mais econômico para compilar e renderizar.


Due to their scale, 3D skyboxes have much lower lightmap and texture resolution. This makes 3D skybox geometry less expensive performance-wise than standard world geometry.
Devido à sua escala, os skyboxes 3D têm uma resolução de mapa de luz e textura muito menor. Isso torna a geometria de skybox 3D menos dispendiosa em termos de desempenho do que a geometria padrão do mundo.


3D skyboxes can be used to overcome draw distance limitations, if a low-detail skybox identical to the main map is created. A mod team wanting to do this would have to develop code to ease the transition between map versions.
As skyboxes 3D podem ser usadas para superar as limitações de distância de desenho, se você criar uma skybox com poucos detalhes idêntica à do mapa principal. Uma equipe de mods que queira fazer isso teria que desenvolver um código para facilitar a transição entre as versões do mapa.


===Basic characteristics===
===Características básicas===
3D Skyboxes have the following characteristics:
As Skyboxes 3D têm as seguintes características:
* Are constructed (by default) in 1/16 scale in the Hammer editor and then rendered at 16 times size in the engine to match the world geometry.
* São construídos (por padrão) em escala 1/16 no editor Hammer e, em seguida, renderizados em tamanho 16 vezes maior no mecanismo para corresponder à geometria do mundo.
* Support materials with shader effects such as normal mapping, water, environment mapping, proxies, etc.
* Suporte a materiais com efeitos de sombreamento, como mapeamento normal, água, mapeamento de ambiente, proxies, etc.
* Are non-interactive – players and other world entities cannot enter 3D skyboxes. The 3D skybox is just a visual extension of the map extents.
* Não são interativos - os jogadores e outras entidades do mundo não podem entrar nas skyboxes 3D. A skybox 3D é apenas uma extensão visual das extensões do mapa.
* Can be constructed with brushes, displacements, static and dynamic props, lights, brush entities, and point entities (such as {{ent|env_sprite}}).
* Pode ser construído com pincéis, deslocamentos, adereços estáticos e dinâmicos, luzes, entidades de pincel e entidades de ponto (como {{ent|env_sprite}}).
* Any models that are placed in the 3D skybox must be authored at 1/16 scale. Standard models ([[Prop_Types_Overview|props]]) are not scaled properly for 3D skybox. Special 1/16 scale versions must be used. For {{hl2|4.1}}, these props can be found in the <code>models/props_skybox</code> directory.
* Todos os modelos que forem colocados na skybox 3D devem ser criados em escala 1/16. Os modelos padrão ([[Prop_Types_Overview|props]]) não são dimensionados adequadamente para o skybox 3D. Devem ser usadas versões especiais em escala 1/16. Para {{hl2|4.1}}, esses adereços podem ser encontrados no diretório <code>models/props_skybox</code>.
* Should not contain {{ent|info_player_start}}, NPCs or monsters.
* Não deve conter {{ent|info_player_start}}, NPCs ou monstros.
* Have lower lightmap and texture resolution because of the scale at which they are created.
* Têm menor resolução de lightmap e textura devido à escala em que são criados.
* Must have their own lighting sources, although a {{ent|light_environment}} in the non-skybox section will also be used for the 3D skybox lighting.
* Devem ter suas próprias fontes de iluminação, embora um {{ent|light_environment}} na seção sem skybox também seja usado para a iluminação do skybox 3D.
* Use the {{ent|sky_camera}} entity to control how they line up with the non-skybox world geometry.
* Use a entidade {{ent|sky_camera}} para controlar como elas se alinham com a geometria do mundo sem skybox.
* 3D skyboxes have their own fog parameters, adjustable in the {{ent|sky_camera}} entity.
* As skyboxes 3D têm seus próprios parâmetros de neblina, ajustáveis na entidade {{ent|sky_camera}}.
* Geometry in the 3D skybox is not occluded or culled like the rest of the level geometry. Adding lots of detailed brush geometry or models to the 3D skybox, especially with translucent materials, can severely affect performance.
* A geometria na skybox 3D não é ocluída ou eliminada como o restante da geometria do nível. Se você adicionar muitos modelos ou geometrias de pincel detalhadas à skybox 3D, especialmente com materiais translúcidos, o desempenho poderá ser seriamente afetado.
* A map must have a {{ent|light_environment}} in it, otherwise models in the 3d skybox will be lit incorrectly. A <code>light_environment</code> in the non-skybox part of the map negates the need for one in the 3D skybox.
* Um mapa deve ter um {{ent|light_environment}} nele, caso contrário os modelos na skybox 3D serão iluminados incorretamente. Um <code>light_environment</code> na parte não skybox do mapa elimina a necessidade de um na skybox 3D.


==Construction of 3D skyboxes==
==Construção de skyboxes 3D==
* A note about the {{ent|sky_camera}} entity: point entities do not scale down.
* Uma observação sobre a entidade {{ent|sky_camera}}: as entidades de ponto não diminuem a escala.


The most efficient way of creating a 3D skybox that matches or "lines up" with the your current map is to use some of the geometry in the main part of the level. Follow these steps after you've created your main level geometry:
A maneira mais eficiente de criar um skybox 3D que combine ou “se alinhe” com o mapa atual é usar parte da geometria na parte principal do nível. Siga estas etapas depois que você tiver criado a geometria do nível principal:


# Add a {{ent|sky_camera}} entity at the world origin (coordinates 0, 0, 0), the center of the map grid. The {{ent|sky_camera}} is a reference point used by the renderer to align the 3D skybox with the main part of the map. In other words, it acts as a marker telling the renderer how the 3D skybox's origin and the world's origin relate to one another. You can think of this process as being similar to selecting all the 3D skybox geometry and then aligning the {{ent|sky_camera}} entity in that selection with the world's origin '''(0,0,0)'''. The geometry is ''translated'' back to that position in the world. This is the same concept used when the skybox is rendered in the engine.
# Adicione uma entidade {{ent|sky_camera}} na origem do mundo (coordenadas 0, 0, 0), o centro da grade do mapa. A {{ent|sky_camera}} é um ponto de referência usado pelo renderizador para alinhar a skybox 3D com a parte principal do mapa. Em outras palavras, ele funciona como um marcador que informa ao renderizador como a origem da skybox 3D e a origem do mundo se relacionam entre si. Você pode pensar nesse processo como sendo semelhante à seleção de toda a geometria do skybox 3D e, em seguida, alinhar a entidade {{ent|sky_camera}} nessa seleção com a origem do mundo '''(0,0,0)'''. A geometria é “traduzida” de volta para essa posição no mundo. Esse é o mesmo conceito usado quando o skybox é renderizado no mecanismo.
# Select some distinct parts of the level that you can use a guideline for scale and position in the 3D skybox. Common elements to select for this purpose would be some of the larger structures, as well as the walls, cliffs, hills, etc. that define the edges of the map. Make sure you also have the {{ent|sky_camera}} you created selected as well. {{note|It is important '''not''' to select any model entities, only brushes. Models cannot be used as reference geometry, because {{ent|prop_static}} cannot be scaled down in the Hammer editor {{in|{{csgobranch}}{{strata}}|prefix=''except''}}.}}
# Selecione algumas partes distintas do nível que você possa usar como diretriz para escala e posição na skybox 3D. Os elementos comuns a serem selecionados para essa finalidade seriam algumas das estruturas maiores, bem como paredes, penhascos, colinas etc. que definem as bordas do mapa. Certifique-se de que a {{ent|sky_camera}} que você criou também esteja selecionada. {É importante que você “não” selecione nenhuma entidade de modelo, apenas pincéis. Os modelos não podem ser usados como geometria de referência, pois {{ent|prop_static}} não pode ser reduzido no editor Hammer {{in|{csgobranch}}{{strata}}|prefix=''except''}}.}}
# Choose '''Copy''' from the '''Edit''' menu, or hit CTRL-C.
# Escolha '''Copy (Copiar)''' no menu '''Edit (Editar)''' ou pressione CTRL-C.
# Choose '''Paste Special''' from the '''Edit''' menu. Set the '''Number of copies to paste''' to '''1''', and all other values to '''0'''. Hit '''OK'''. This makes a duplicate of the geometry you had selected.
# Selecione '''Paste Special''' no menu '''Edit'''. Defina o '''Number of copies to paste (Número de cópias a serem coladas)''' como '''1''' e todos os outros valores como '''0'''. Clique em '''OK'''. Isso cria uma duplicata da geometria que você havia selecionado.
# Turn on '''Scaling Texture Lock''' in the toolbar, if it is not already on. Its icon resembles <tl>. This will shrink the textures along with the geometry.
# Ative o '''Scaling Texture Lock''' na barra de ferramentas, se ainda não estiver ativado. Seu ícone se assemelha a <tl>. Isso reduzirá as texturas junto com a geometria.
# Leaving geometry selected, choose '''Transform''' from the '''Tools''' menu. Select the radio button next to '''Scale'''. Type in a value of '''.0625 for X, Y and Z.''' This is the decimal equivalent to 1/16 – the scale of the 3D skybox. Click '''OK'''. {{note|If you want textures on the geometry to scale accordingly, make sure you have scaling texture lock enabled.}}
# Deixando a geometria selecionada, escolha '''Transform'' no menu '''Tools'''. Selecione o botão de opção ao lado de '''Scale'''. Digite um valor de '''.0625 para X, Y e Z.''' Esse é o equivalente decimal a 1/16 - a escala da skybox 3D. Clique em '''OK'''. {{note|Se você quiser que as texturas na geometria sejam dimensionadas de acordo, certifique-se de que o bloqueio de textura de dimensionamento esteja ativado.}}
# You now have a 1/16 scale version of your reference geometry. Now drag (move) it to another part of the map where you wish build your 3D skybox. It doesn't matter where it is as long as it's not touching any part of the main level geometry area.
# Agora você tem uma versão em escala 1/16 da sua geometria de referência. Agora, arraste-a (mova-a) para outra parte do mapa onde você deseja construir o skybox 3D. Não importa onde ela esteja, desde que não esteja tocando nenhuma parte da área de geometria do nível principal.
# Delete the {{ent|sky_camera}} entity from the normal world map area you started from. ''Important'': only the {{ent|sky_camera}} entity in the 3D skybox should remain in the map. In L4D2 (and possibly other Source games), forgetting this step (having multiple sky_cameras in your map), will result in every Navigation area being blocked.
# Exclua a entidade {{ent|sky_camera}} da área normal do mapa do mundo em que você começou. ''Importante'': somente a entidade {{ent|sky_camera}} no skybox 3D deve permanecer no mapa. No L4D2 (e possivelmente em outros jogos da Source), se você esquecer essa etapa (tendo várias sky_cameras no mapa), todas as áreas de navegação serão bloqueadas.
# Build your 3D skybox geometry around the reference geometry, using it as a guide. You can build skybox geometry that meets the reference geometry seamlessly. You can use brush and displacement geometry. Models can also be placed, but since the 3D skybox is at 1/16 scale, any models must also be at 1/16 scale. The model <code>hl2\models\props_skybox\coast01.mdl</code> is a sample model in 1/16 scale. Try positioning the 3D view camera near the height of the player. This will give you a good idea of how the 3D skybox will look when it's rendered in the engine.
# Você pode criar sua geometria de skybox 3D em torno da geometria de referência, usando-a como guia. Você pode criar uma geometria de skybox que atenda perfeitamente à geometria de referência. Você pode usar pincel e geometria de deslocamento. Você também pode colocar modelos, mas como a skybox 3D está em escala 1/16, todos os modelos também devem estar em escala 1/16. O modelo <code>hl2\models\props_skybox\coast01.mdl</code> é um modelo de amostra em escala 1/16. Tente posicionar a câmera de visualização 3D perto da altura do jogador. Isso dará a você uma boa ideia de como a skybox 3D ficará quando for renderizada no mecanismo.
# Add a hollow cube of brushes around your reference geometry and assign the <code>tools\toolsskybox</code> material to it. The standard 2D cubic skybox will appear on these surfaces. The 3D skybox area must be sealed with these brushes.
# Adicione um cubo oco de pincéis ao redor de sua geometria de referência e atribua o material <code>tools\toolsskybox</code> a ele. O skybox cúbico 2D padrão aparecerá nessas superfícies. A área do skybox 3D deve ser selada com esses pincéis.
# When you're done, delete or hide all of the reference geometry '''except''' for the {{ent|sky_camera}} entity. You may find that it work best to add the reference geometry to its own visgroup so that it can be toggled on and off or re-placed. Just make sure you turn it off before you save and compile the level, or it will be compiled into the 3D skybox.
# Quando você terminar, exclua ou oculte toda a geometria de referência, “exceto” a entidade {{ent|sky_camera}}. Talvez você ache melhor adicionar a geometria de referência ao seu próprio visgroup para que ela possa ser ativada e desativada ou recolocada. Apenas certifique-se de desativá-la antes de salvar e compilar o nível, ou ela será compilada no skybox 3D.
# If you have brushes inside your 3D skybox other than the reference geometry, make all of these brushes {{ent|func_detail}} brushes. {{Note|The only exception to this is displacements. For obvious reasons, do not tie displacements to an entity.}}
# Se você tiver pincéis dentro da skybox 3D que não sejam a geometria de referência, transforme todos esses brushes em brushes {{ent|func_detail}}.{{Note|A única exceção a isso são os displacements. Por motivos óbvios, não vincule os displacements a uma entidade.}}
# Your original map still needs the <code>tools\toolsskybox</code> material wherever you want to see the sky, however it will now show the 3D skybox as well as the 2D skybox (which is what it did previously).
# Seu mapa original ainda precisa do material <code>tools\toolsskybox</code> onde quer que você queira ver o céu, mas agora ele mostrará o skybox 3D e também o skybox 2D (que era o que fazia anteriormente).
# If you want a part of your map to only show the 2D skybox and not the 3D skybox geometry, use the tools\toolsskybox2d texture, which only draws the 2D skybox. There are no restrictions for this texture and it can be used together the normal skybox texture without problems. This feature is useful when you have I.E. a window and you only want to see the sky from it, like if you are in a very tall building.
# Se você quiser que uma parte do seu mapa mostre apenas a skybox 2D e não a geometria da skybox 3D, use a textura tools\toolsskybox2d, que desenha apenas a skybox 2D. Não há restrições para essa textura e ela pode ser usada junto com a textura normal do skybox sem problemas. Esse recurso é útil quando você tem, por exemplo, uma janela e deseja ver apenas o céu a partir dela, como se você estivesse em um prédio muito alto.


==Testing==
== Testando ==
If you properly sealed your 3D skybox and your map does not have a [[leak]], you can now compile the map and check out your new 3D skybox in the engine.
Se você selou adequadamente seu skybox 3D e seu mapa não tem um [[leak|vazamento]], agora você pode compilar o mapa e verificar seu novo skybox 3D no mecanismo.


== Examples ==
== Exemplos ==
* See <code>sdk_content\hl2\mapsrc\sdk_3d_skybox.vmf</code> for an example of a 3D skybox.
* Veja <code>sdk_content\hl2\mapsrc\sdk_3d_skybox.vmf</code> para um exemplo de uma skybox 3D
* [http://www.steamreview.org/external/vdc/3dskybox/3dskybox_drawdistextend.zip An example of extending draw distances with 3D skyboxes] (commented)
* [http://www.steamreview.org/external/vdc/3dskybox/3dskybox_drawdistextend.zip Um exemplo de extensão das distâncias de desenho com skyboxes 3D]. (comentado)
* [https://web.archive.org/web/20191224085102/http://www.type3studios.com/downloads/tutorials/SdkNutsTutorials/akg_3Dskybox01.zip 3D Skybox Video Tutorial]
* [https://web.archive.org/web/20191224085102/http://www.type3studios.com/downloads/tutorials/SdkNutsTutorials/akg_3Dskybox01.zip Tutorial em vídeo da Skybox 3D]
* [https://web.archive.org/web/20191224085103/https://www.type3studios.com/downloads/tutorials/SdkNutsTutorials/wiseEscape.zip HL2 sample VMF for 3D Skybox water/world]
* [https://web.archive.org/web/20191224085103/https://www.type3studios.com/downloads/tutorials/SdkNutsTutorials/wiseEscape.zip VMF de amostra do HL2 para água/mundo 3D Skybox]


== Making 3D Skybox in 3ds Max ==
== Como criar um Skybox 3D no 3ds Max ==
You can also create your 3D Skybox in a much simpler way than the traditional Hammer method if you build your level inside [[3ds Max]] with [[Wall Worm Model Tools]]. Wall Worm lets you build your 3D Skybox at the scale of the map and avoids the need to shrink down the skybox.
Você também pode criar seu Skybox 3D de uma maneira muito mais simples do que o método Hammer tradicional se construir seu nível dentro do [[3ds Max]] com [[Wall Worm Model Tools]]. O Wall Worm permite que você crie o 3D Skybox na escala do mapa e evita a necessidade de reduzir o skybox.


To do this, simply "tag" the skybox geometry with the Tag functions in the Anvil tools that come with Wall Worm.  
Para fazer isso, basta “marcar” a geometria do skybox com as funções Tag nas ferramentas Anvil que acompanham o Wall Worm.


[http://dev.wallworm.com/document/114/exporting_a_level_from_3ds_max_into_source.html See a demonstration and download a sample scene here.]
[http://dev.wallworm.com/document/114/exporting_a_level_from_3ds_max_into_source.html Veja uma demonstração e faça o download de uma cena de amostra aqui.]


== See also ==
== Veja também ==
* [[Creating custom terrain with Worldmachine]]{{envart}}
* [[Creating custom terrain with Worldmachine]]{{envart}}
[[Category:Level Design]][[Category:Tutorials]][[Category:Skybox]][[Category:Source]]
[[Category:Level Design]][[Category:Tutorials]][[Category:Skybox]][[Category:Source]]

Revision as of 18:40, 10 September 2024

English (en)Deutsch (de)Italiano (it)Português do Brasil (pt-br)Русский (ru)中文 (zh)Translate (Translate)

A criação de uma “skybox 3D” pode ser uma adição poderosa ao tratamento visual de um nível. A skybox 3D é uma área extra construída pelo designer de níveis que está fora dos limites da parte de jogabilidade do mapa. Quando o mapa é carregado, o Source amplia os objetos na área da skybox 3D e os coloca fora dos limites do nível atual, entre a skybox e o jogador. Isso é usado para dar a aparência de um mundo muito mais amplo fora da sua fase, sem ser muito caro para o orçamento devido à escala 1:16 (por padrão). As skyboxes 3D não são interativas: o jogador e outras entidades não podem se mover para o espaço da skybox 3D.

A geometria da skybox 3D pode ser indistinguível da geometria de nível normal. As transições perfeitas entre a geometria de nível normal e a skybox 3D são muito possíveis e são usadas em muitos dos mapas dos jogos oficiais da Source, como Counter-Strike: Source.

Icon-Bug.pngErro:Em Portal Portal, as skyboxes 3D não são renderizadas corretamente quando observadas através de portais. - see here.  [todo tested in ?]
Icon-Important.pngImportante:Uma skybox 3D não substitui uma skybox 2D. Em vez disso, um skybox 3D deve ser considerado um “skyroom”, que é sempre desenhado atrás da geometria regular do nível, e do qual o skybox regular (2D) é sempre desenhado atrás.
Note.pngNotar:
  • Em Left 4 Dead Left 4 Dead, a escala padrão é 1:32, NÃO 1:16 (mas 1:16 funciona corretamente!)
  • Para evitar problemas de iluminação, não use light (ou qualquer outra luz sem o prefixo Env_) na skybox
Why?: Quais são os tipos de problemas? Você pode ter um light_environment separado no skyroom e ele funcionará bem.
  • Em Portal 2 Portal 2 algumas geometrias de skybox não serão visíveis, a menos que você defina o cvar r_skybox_draw_last como 0.

Benefícios

As skyboxes padrão são imagens 2D simples, mapeadas em um cubo para que circundem o nível. Os skyboxes 3D são uma geometria totalmente em 3D e são devidamente paralaxe à medida que o jogador se move pelo nível. Como são renderizadas em tempo real, elas são dimensionadas de acordo com a resolução da placa de vídeo e também suportam efeitos de sombreamento em tempo real que não são possíveis em skyboxes 2D.

A principal vantagem de usar uma skybox 3D é que ela permite que o designer de níveis faça o mapa parecer muito maior do que é possível com a geometria padrão do mundo. O maior mapa que pode ser criado sem uma skybox 3D é de 32768 unidades em cada lado. Usando uma skybox 3D, o mapa pode ser estendido para 16 vezes essa quantidade.

Mapas desse tamanho são possíveis porque as skyboxes 3D são criadas no Hammer Editor em uma escala de 1/16 da escala dos mapas padrão. Em tempo de execução, o mecanismo as dimensiona novamente para corresponder à escala do restante do mapa. Isso não apenas economiza espaço nas exibições do editor, mas também é muito mais econômico para compilar e renderizar.

Devido à sua escala, os skyboxes 3D têm uma resolução de mapa de luz e textura muito menor. Isso torna a geometria de skybox 3D menos dispendiosa em termos de desempenho do que a geometria padrão do mundo.

As skyboxes 3D podem ser usadas para superar as limitações de distância de desenho, se você criar uma skybox com poucos detalhes idêntica à do mapa principal. Uma equipe de mods que queira fazer isso teria que desenvolver um código para facilitar a transição entre as versões do mapa.

Características básicas

As Skyboxes 3D têm as seguintes características:

  • São construídos (por padrão) em escala 1/16 no editor Hammer e, em seguida, renderizados em tamanho 16 vezes maior no mecanismo para corresponder à geometria do mundo.
  • Suporte a materiais com efeitos de sombreamento, como mapeamento normal, água, mapeamento de ambiente, proxies, etc.
  • Não são interativos - os jogadores e outras entidades do mundo não podem entrar nas skyboxes 3D. A skybox 3D é apenas uma extensão visual das extensões do mapa.
  • Pode ser construído com pincéis, deslocamentos, adereços estáticos e dinâmicos, luzes, entidades de pincel e entidades de ponto (como env_sprite).
  • Todos os modelos que forem colocados na skybox 3D devem ser criados em escala 1/16. Os modelos padrão (props) não são dimensionados adequadamente para o skybox 3D. Devem ser usadas versões especiais em escala 1/16. Para Half-Life 2 Half-Life 2, esses adereços podem ser encontrados no diretório models/props_skybox.
  • Não deve conter info_player_start, NPCs ou monstros.
  • Têm menor resolução de lightmap e textura devido à escala em que são criados.
  • Devem ter suas próprias fontes de iluminação, embora um light_environment na seção sem skybox também seja usado para a iluminação do skybox 3D.
  • Use a entidade sky_camera para controlar como elas se alinham com a geometria do mundo sem skybox.
  • As skyboxes 3D têm seus próprios parâmetros de neblina, ajustáveis na entidade sky_camera.
  • A geometria na skybox 3D não é ocluída ou eliminada como o restante da geometria do nível. Se você adicionar muitos modelos ou geometrias de pincel detalhadas à skybox 3D, especialmente com materiais translúcidos, o desempenho poderá ser seriamente afetado.
  • Um mapa deve ter um light_environment nele, caso contrário os modelos na skybox 3D serão iluminados incorretamente. Um light_environment na parte não skybox do mapa elimina a necessidade de um na skybox 3D.

Construção de skyboxes 3D

  • Uma observação sobre a entidade sky_camera: as entidades de ponto não diminuem a escala.

A maneira mais eficiente de criar um skybox 3D que combine ou “se alinhe” com o mapa atual é usar parte da geometria na parte principal do nível. Siga estas etapas depois que você tiver criado a geometria do nível principal:

  1. Adicione uma entidade sky_camera na origem do mundo (coordenadas 0, 0, 0), o centro da grade do mapa. A sky_camera é um ponto de referência usado pelo renderizador para alinhar a skybox 3D com a parte principal do mapa. Em outras palavras, ele funciona como um marcador que informa ao renderizador como a origem da skybox 3D e a origem do mundo se relacionam entre si. Você pode pensar nesse processo como sendo semelhante à seleção de toda a geometria do skybox 3D e, em seguida, alinhar a entidade sky_camera nessa seleção com a origem do mundo (0,0,0). A geometria é “traduzida” de volta para essa posição no mundo. Esse é o mesmo conceito usado quando o skybox é renderizado no mecanismo.
  2. Selecione algumas partes distintas do nível que você possa usar como diretriz para escala e posição na skybox 3D. Os elementos comuns a serem selecionados para essa finalidade seriam algumas das estruturas maiores, bem como paredes, penhascos, colinas etc. que definem as bordas do mapa. Certifique-se de que a sky_camera que você criou também esteja selecionada. {É importante que você “não” selecione nenhuma entidade de modelo, apenas pincéis. Os modelos não podem ser usados como geometria de referência, pois prop_static não pode ser reduzido no editor Hammer (em {csgobranch)Strata Source|prefix=except}}.}}
  3. Escolha Copy (Copiar) no menu Edit (Editar) ou pressione CTRL-C.
  4. Selecione Paste Special no menu Edit. Defina o Number of copies to paste (Número de cópias a serem coladas) como 1 e todos os outros valores como 0. Clique em OK. Isso cria uma duplicata da geometria que você havia selecionado.
  5. Ative o Scaling Texture Lock na barra de ferramentas, se ainda não estiver ativado. Seu ícone se assemelha a <tl>. Isso reduzirá as texturas junto com a geometria.
  6. Deixando a geometria selecionada, escolha Transform no menu Tools'. Selecione o botão de opção ao lado de Scale. Digite um valor de .0625 para X, Y e Z. Esse é o equivalente decimal a 1/16 - a escala da skybox 3D. Clique em OK.
    Note.pngNotar:Se você quiser que as texturas na geometria sejam dimensionadas de acordo, certifique-se de que o bloqueio de textura de dimensionamento esteja ativado.
  7. Agora você tem uma versão em escala 1/16 da sua geometria de referência. Agora, arraste-a (mova-a) para outra parte do mapa onde você deseja construir o skybox 3D. Não importa onde ela esteja, desde que não esteja tocando nenhuma parte da área de geometria do nível principal.
  8. Exclua a entidade sky_camera da área normal do mapa do mundo em que você começou. Importante: somente a entidade sky_camera no skybox 3D deve permanecer no mapa. No L4D2 (e possivelmente em outros jogos da Source), se você esquecer essa etapa (tendo várias sky_cameras no mapa), todas as áreas de navegação serão bloqueadas.
  9. Você pode criar sua geometria de skybox 3D em torno da geometria de referência, usando-a como guia. Você pode criar uma geometria de skybox que atenda perfeitamente à geometria de referência. Você pode usar pincel e geometria de deslocamento. Você também pode colocar modelos, mas como a skybox 3D está em escala 1/16, todos os modelos também devem estar em escala 1/16. O modelo hl2\models\props_skybox\coast01.mdl é um modelo de amostra em escala 1/16. Tente posicionar a câmera de visualização 3D perto da altura do jogador. Isso dará a você uma boa ideia de como a skybox 3D ficará quando for renderizada no mecanismo.
  10. Adicione um cubo oco de pincéis ao redor de sua geometria de referência e atribua o material tools\toolsskybox a ele. O skybox cúbico 2D padrão aparecerá nessas superfícies. A área do skybox 3D deve ser selada com esses pincéis.
  11. Quando você terminar, exclua ou oculte toda a geometria de referência, “exceto” a entidade sky_camera. Talvez você ache melhor adicionar a geometria de referência ao seu próprio visgroup para que ela possa ser ativada e desativada ou recolocada. Apenas certifique-se de desativá-la antes de salvar e compilar o nível, ou ela será compilada no skybox 3D.
  12. Se você tiver pincéis dentro da skybox 3D que não sejam a geometria de referência, transforme todos esses brushes em brushes func_detail.
    Note.pngNotar:A única exceção a isso são os displacements. Por motivos óbvios, não vincule os displacements a uma entidade.
  13. Seu mapa original ainda precisa do material tools\toolsskybox onde quer que você queira ver o céu, mas agora ele mostrará o skybox 3D e também o skybox 2D (que era o que fazia anteriormente).
  14. Se você quiser que uma parte do seu mapa mostre apenas a skybox 2D e não a geometria da skybox 3D, use a textura tools\toolsskybox2d, que desenha apenas a skybox 2D. Não há restrições para essa textura e ela pode ser usada junto com a textura normal do skybox sem problemas. Esse recurso é útil quando você tem, por exemplo, uma janela e deseja ver apenas o céu a partir dela, como se você estivesse em um prédio muito alto.

Testando

Se você selou adequadamente seu skybox 3D e seu mapa não tem um vazamento, agora você pode compilar o mapa e verificar seu novo skybox 3D no mecanismo.

Exemplos

Como criar um Skybox 3D no 3ds Max

Você também pode criar seu Skybox 3D de uma maneira muito mais simples do que o método Hammer tradicional se construir seu nível dentro do 3ds Max com Wall Worm Model Tools. O Wall Worm permite que você crie o 3D Skybox na escala do mapa e evita a necessidade de reduzir o skybox.

Para fazer isso, basta “marcar” a geometria do skybox com as funções Tag nas ferramentas Anvil que acompanham o Wall Worm.

Veja uma demonstração e faça o download de uma cena de amostra aqui.

Veja também

Environment articles:
Skies and environment maps Source Source: Skybox (2D)Skybox (3D)HDR SkiesSkybox with TerragenSkybox with Terragen - AdvancedList of skies


Source 2 Source 2: Skybox (3D)

Terrain and displacement mapping DisplacementsCreating Holes in DisplacementsDigital Elevation ModelsCreating custom terrain with Worldmachine