Caixas do céu

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Uma skybox é um cubo composto por seis imagens individuais que criam um plano de fundo de céu imersivo em uma experiência.Quando as imagens são projetadas para estar perfeitamente alinhada umas com as outras, a caixa do céu parece ser panorâmica sem a impressão de estar dentro de um cubo.Isso faz com que as experiências se sintam maiores do que realmente são e adiciona profundidade à sua atmosfera, como simular espaço profundo ou ambientes subaquáticos.

Além disso, o objeto Sky inclui corpos celestes como o sol, a lua e as estrelas que aparecem dinamicamente, sobem e se estabelecem com base no TimeOfDay ou ClockTime.

Finalmente, o objeto Sky pode ser usado como um mapa de cubo para reflexões em ViewportFrames . Para detalhes, veja quadros de janela de visualização .

Construção de caixa de céu

Se você criou suas próprias imagens de skybox, você deve primeiro importá-las para o Roblox antes de poder usá-las em uma skybox.Cada imagem deve ser sem costuras ao longo de todos os cantos das imagens vizinhas quando "dobrada" em um cubo.


Para criar uma caixa de céu:

  1. Na janela Explorer , insira um objeto Sky no serviço Lighting.

  2. Selecione o novo objeto Sky , então, na janela Propriedades , atribua uma textura a cada uma das seguintes propriedades do céu:

    • SkyboxBk — O lado de trás da caixa do céu.
    • SkyboxDn — O lado de baixo da caixa do céu.
    • SkyboxFt — O quadrado frontal da caixa do céu.
    • SkyboxLf — O quadrado esquerdo da caixa de céu.
    • SkyboxRt — O direito quadrado da caixa do céu.
    • SkyboxUp — O up quadrado da caixa de céu.

Corpos celestes

Por padrão, o objeto Sky inclui corpos celestes como o sol, a lua e as estrelas.Esses corpos aparecem dinamicamente, sobem e são definidos com base nos valores de propriedade TimeOfDay ou ClockTime.

Você pode personalizar corpos celestes através das seguintes propriedades:

Orientação

A propriedade SkyboxOrientation altera a orientação das superfícies da caixa de céu.A propriedade toma um Vector3 de valores de grau na ordem típica XYZ , mas a rotação é aplicada primeiro em torno do eixo Y , depois X e, em seguida, Z para permitir um controle previsível sobre movimentos complexos.

Uma maneira fácil de escrever uma animação de orientação é girar em torno do eixo Y (manter o nível do horizonte), então inclinar esse eixo definindo X e Z para um valor fixo.O seguinte script, por exemplo, anima o eixo Y para girar enquanto mantém um inclinação consistente de 30° no eixo X .


local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local sky = Lighting:FindFirstChild("Sky")
local ROTATION_SPEED = 5 -- Em graus por segundo
RunService.Heartbeat:Connect(function(deltaTime)
sky.SkyboxOrientation = Vector3.new(
30,
(sky.SkyboxOrientation.Y + ROTATION_SPEED * deltaTime) % 360,
0
)
end)

Observe que a orientação da caixa de céu é um recurso de baixo custo que funciona sem problemas em todas as plataformas e níveis de qualidade visual.Como resultado, algumas exceções intencionais incluem:

  • Se o céu for visível em reflexos interiores, como uma superfície de espelho através de uma janela aberta, essa visão refletida específica não será girada.Alcançar isso exigiria um caro reprocessamento e envolvimento de mapas de cubos que afetaria significativamente o desempenho e a disponibilidade ampla.
  • Apenas as superfícies da caixa de céu giram; corpos celestes não são afetados por esta propriedade.
  • Se você utilizar um Sky dentro de um ViewportFrame, isso refletirá os valores globais de SkyboxOrientation. Você não pode ajustar o ângulo por ViewportFrame .
  • O recurso de nuvems dinâmicas sob Terrain não é afetado.