Εξέλιξη του rendering pipeline και Solari
Το Bevy 0.20 φέρνει το Solari, τον realtime pathtraced renderer, σε ένα νέο επίπεδο ωριμότητας. Με την υποστήριξη για macOS μέσω Metal και τη βελτιστοποίηση του CPU overhead, ο renderer γίνεται πιο προσιτός σε διαφορετικά hardware. Η απόφαση να καταστεί το ReSTIR προαιρετικό (off by default) επιτρέπει στους developers να εξισορροπούν καλύτερα την ποιότητα εικόνας με το performance budget της εφαρμογής τους.
Εκσυγχρονισμός των Shaders με WESL
Η μετάβαση από το custom WGSL dialect στο WESL αποτελεί στρατηγική κίνηση για το οικοσύστημα του Bevy. Το WESL προσφέρει native υποστήριξη για modules, imports και conditional compilation, λύνοντας χρόνια προβλήματα διαχείρισης κώδικα shaders. Η ενσωμάτωση με το wgsl-analyzer παρέχει πλέον στους developers σύγχρονα εργαλεία όπως syntax highlighting και go-to-definition.
Βελτιώσεις στο BSN και Developer Experience
Το BSN (Bevy Scene Notation) δέχτηκε σημαντικές αλλαγές στην εργονομία του. Η κατάργηση των template_value wrappers και η εισαγωγή του @ prefix για scene references καθιστούν τον κώδικα πιο ευανάγνωστο και λιγότερο επιρρεπή σε σφάλματα. Επιπλέον, το νέο Ready event επιλύει το πρόβλημα του "bottom-up" notification, επιτρέποντας την εκτέλεση λογικής μόνο όταν μια ιεραρχία entities έχει πλήρως φορτωθεί.
Mesh Shaders και 2D Extensibility
Για τους power users, η εισαγωγή των mesh shaders ανοίγει τον δρόμο για προηγμένες τεχνικές όπως το procedural grass rendering και η διαχείριση meshlets. Παράλληλα, το 2D rendering αποκτά πλέον δυνατότητες επέκτασης αντίστοιχες με το 3D, επιτρέποντας στους developers να δημιουργούν custom materials για sprites μέσω του MaterialExtension2d trait, ενισχύοντας τη δημιουργική ελευθερία στο 2D pipeline.