Bevy 0.20 yayınlandı: daha hızlı Solari, DLSS-RR 4.5, sadeleşen BSN ve WESL shader'ları
Rust ile yazılan açık kaynaklı Bevy'nin yeni sürümü 227 katkıcı ve 817 pull request'le geldi: path tracing renderer'ı Solari macOS'ta da çalışıyor, shader'lar artık WESL ile yazılıyor, Feathers'a yeni arayüz bileşenleri eklendi.

Bevy ekibi, Rust ile yazılmış veri odaklı oyun motorunun 0.20 sürümünü 8 Ekim 2026'da crates.io'da yayınladı. Sürüm 227 katkıcının 817 pull request'iyle hazırlandı. Öne çıkanlar: gerçek zamanlı path tracing renderer'ı Solari'deki iyileştirmeler ve DLSS güncellemesi, BSN sahne sisteminin sadeleşen sözdizimi, shader dili olarak WESL'e geçiş, yeni arayüz bileşenleri, sprite'lar için özel materyaller ve CAD benzeri bir pan orbit kamera.
Solari ve DLSS
- Görüntü kalitesi: ReSTIR uygulamasındaki iyileştirmelerle render büyük ölçüde unbiased hâle geldi, aydınlatma daha doğru. Hareket eden nesnelerin gölgeleri artık geride kalmıyor, yansımalar hareket hâlinde daha az titreşiyor.
- Performans: ReSTIR artık isteğe bağlı ve varsayılan olarak kapalı; ekip birçok sahnede DLSS-RR'nin yeterli olduğunu söylüyor. 0.19'da Solari kullananlar sahnelerini kontrol etmeli, gerekirse SolariLighting::restir'i yeniden açmalı; ReSTIR kapalıyken çok ışıklı sahnelerde gölge kalitesi düşüyor. Sahne yönetimi kodu retained hâle getirildi ve işlemci maliyeti belirgin biçimde azaldı. SolariLighting'e world cache boyutu, piksel başına ışık örneği, zamansal birikim ve sekme sayısı gibi ayarlar eklendi.
- Uyumluluk: Solari, Atmosphere ve kameralardaki EnvironmentMapLight aydınlatmasını destekliyor. macOS'ta da çalışıyor ama macOS için yerleşik bir denoiser yok.
- DLSS: dlss_wgpu, DLSS-RR 4.5'i destekliyor. 0.19'da DLSS kullananlar DLSS SDK'nın yeni sürümünü kurmalı, yoksa derleme hatası alıyorlar.
BSN ve Ready olayı
Sahne başvuruları artık @ öneki istiyor, template_value sarmalayıcıları kaldırılabiliyor, Default ve Clone uygulayan enum'lar doğrudan çalışıyor, listelerde varlıklar -- ile ayrılıyor. Ekibe göre sözdizimi bundan sonra büyük ölçüde sabit. Yeni Ready olayı, sahnedeki bir varlık bütün alt öğeleriyle birlikte oluşturulduğunda tetikleniyor.
WESL'e geçiş
Bevy'nin shader'ları artık WESL ile yazılıyor; eski "Custom Bevy Extended WGSL" desteği kaldırıldı. WESL, WGSL'i modüller, import'lar ve koşullu derleme gibi özelliklerle genişleten bir standart; wgsl-analyzer ile sözdizimi vurgulama ve tanıma gitme gibi dil sunucusu özellikleri geliyor. Eski lehçeyle yazılmış özel shader'lar WESL'e çevrilmeli ve uzantıları .wgsl'den .wesl'e değiştirilmeli; önişlemci yönergesi içermeyen düz WGSL dosyaları çalışmaya devam ediyor.

Diğer yenilikler
- Feathers'a renk seçici (renk çarkı, RGB ve HSL seçicileri, son kullanılan renkler), kaydırılabilir liste görünümü, açılır seçim ve Lazy Menu eklendi; sayı girişi sürüklenerek de değiştirilebiliyor. bevy_ui_widgets'ta headless sekme bileşenleri var.
- Mesh shader'lar pipeline önbelleğine entegre edildi; web platformlarında desteklenmiyor.
- Sprite'lar için özel shader materyalleri ve 2D için genişletilebilir materyaller geldi; sprite render arka ucu, 3D altyapısını kullanan yeni bir arka uçla değiştirildi.
- @aevyrie'nin bevy_editor_cam'i PanOrbitCamera olarak motora alındı.
- chain_weak ile gevşek sistem sıralaması, schedule randomization, panic'lerin hataya dönüştürülmesi ve despawn_all ile toplu silmede ekibin ölçümlerine göre 1,30 ile 1,70 kat arası hızlanma.
- ctt kütüphanesine dayanan yeni doku sıkıştırma (masaüstü için BCn, mobil için ASTC) ve otomatik mipmap üretimi.
- Arayüzde em ve rem birimleri, FixedNode, eliptik kenar yarıçapı, InlineBox ve InlineImage.

Sırada ne var
Ekip .bsn dosya biçimi, varlıkların (asset) entity olarak temsil edilmesi, uzaktan inceleyici, karşılıklı dışlayan bileşenler ve HDR ekran desteği üzerinde çalışıyor. 0.19'dan geçecekler için geçiş rehberi yayımlandı; motor ücretsiz ve açık kaynaklı.



0 yorum