Gökyüzü kutuları

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Bir gökyüzü kutusu bir deneyimde sürükleyici bir gökyüzü arka planı oluşturan altı ayrı görüntiden oluşan bir küzdür.Resimler birbirine mükemmel bir şekilde paralel tasarlanırken, gökyüzü bir kübün içinde bulunma izlenimi olmadan panoramik görünüyor.Bu, deneyimlerin gerçekten olduklarından daha büyük hissetmesini sağlar ve derin uzay veya sualtı ortamlarını simüle etmek gibi atmosferine derinlik ekler.

Ayrıca, Sky nesnesi güneş, ay ve yıldız gibi dinamik olarak görünen, yükselen ve ayarlanan gök cisimlerini içerir TimeOfDay veya ClockTime.

Son olarak, Sky nesnesi ViewportFrames içinde yansımalar için bir küp haritası olarak kullanılabilir. Detaylar için, görüntü portu çerçeveleri görün.

Skybox inşaatı

Kendi gökyüzü görüntülerinizi oluşturduysanız, önce bunları bir gökyüzü kutusunda kullanmadan önce Roblox'a ithal etmelisiniz.Her resim, komşu resimlerin tüm kenarlarına katlanırken bir kübe içine katıldığında, komşu resimlerin tüm kenarlarında kusursuz olmalıdır.


Bir gök kutusu oluşturmak için:

  1. Gezgin penceresinde, bir Sky nesneyi Lighting hizmetine yerleştirin.

  2. Yeni Sky nesneyi seçin, ardından Özellikler penceresinde, aşağıdaki gök özelliklerinin her birine bir dokuyu atayın:

    • SkyboxBk — Gök kutusunun arka kareleri.
    • SkyboxDn — Gök kutusunun aşağı kareleri.
    • SkyboxFt — Gök kutusunun önü kare.
    • SkyboxLf — Gök kutusunun sol taraftaki kare .
    • SkyboxRt — Gök kutusunun sağ kareleri.
    • SkyboxUp — Gök kutusunun yukarı kareleri.

Göksel cisimler

Varsayılan olarak, Sky nesnesi güneş, ay ve yıldız gibi gök cisimlerini içerir.Bu vücutlar dinamik olarak görünür, yükselir ve TimeOfDay veya ClockTime özellik değerlerine dayanarak ayarlanır.

Göksel cisimleri aşağıdaki özellikler aracılığıyla özelleştirebilirsiniz:

Yönlendirme

The SkyboxOrientation özelliği, gökyüzü yüzeylerinin yönünü değiştirir.Özellik tipik XYZ sırasında bir derece değeri alır, ancak dönüş ilk önce Y eksen etrafında uygulanır, sonra X ve sonra Z karmaşık hareketler üzerinde tahmin edilebilir kontrol sağlamak için.

Bir yön animasyonunu kodlamanın kolay bir yolu, Y eksenini döndürmek (uzay seviyesini koruyarak) ve sonra X ve Z eksenini sabit bir değere ayarlayarak bu ekseni eğmektir.Örneğin, aşağıdaki kod, Y eksenini döndürürken sabit bir 30° eğmeyi koruyarak X ekseninde dönmeyi animasyonlaştırır.


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

Gökyüzü yönünün tüm platformlar ve görsel kalite seviyeleri arasında sorunsuz bir şekilde çalışan düşük maliyetli bir özellik olduğunu unutmayın.Sonuç olarak, bazı kasıtlı istisnalar şunları içerir:

  • Gökyüzü, açık bir pencere aracılığıyla aydınlanan iç yansımalarda bir ayna yüzeyi gibi görülebilirse, bu özel yansıtılan görüş döndürülmeyecektir.Bunu başarmak, performansı ve geniş kullanılabilirliği önemli ölçüde etkileyen kübemapların pahalı yeniden görüntülenmesini ve kullanılmasını gerektirirdi.
  • Sadece gökyüzü yüzeyleri döner; göksel vücutlar bu özellikten etkilenmez.
  • Eğer bir Sky içinde bir ViewportFrame kullanırsanız, küresel SkyboxOrientation değerlerini yansıtacaktır. Her bir ViewportFrame için açıyı ayarlayamazsınız.
  • Dinamik bulutlar özelliği Terrain etkilenmedi.