Η δύναμη του CSS πέρα από το styling
Το project Lemmings CSS Animation αποτελεί μια ενδιαφέρουσα μελέτη περίπτωσης για το πώς το CSS μπορεί να ξεπεράσει τον παραδοσιακό του ρόλο ως γλώσσα περιγραφής εμφάνισης. Αντί για τη χρήση JavaScript για τον έλεγχο του game loop, η κίνηση των χαρακτήρων βασίζεται εξ ολοκλήρου σε δηλωτικά (declarative) CSS animations.
Αρχιτεκτονική της κίνησης
Η υλοποίηση βασίζεται στη χρήση steps() στο animation-timing-function, επιτρέποντας την ακριβή εναλλαγή των frames ενός sprite sheet. Κάθε χαρακτήρας λειτουργεί ως ένα ανεξάρτητο DOM element, του οποίου η θέση και η κατάσταση (state) ορίζονται από CSS classes που ενεργοποιούν διαφορετικά keyframes. Αυτή η προσέγγιση μειώνει δραστικά το main thread load, καθώς το browser engine αναλαμβάνει το rendering μέσω του compositor thread.
Περιορισμοί και προκλήσεις
Παρά την εντυπωσιακή οπτική απόδοση, η έλλειψη JavaScript καθιστά δύσκολη την υλοποίηση σύνθετης αλληλεπίδρασης ή collision detection. Η διαχείριση του state γίνεται μέσω CSS, γεγονός που περιορίζει τη δυνατότητα δυναμικής αλλαγής της συμπεριφοράς των χαρακτήρων σε πραγματικό χρόνο, καθιστώντας το project μια άσκηση υψηλής τεχνικής κατάρτισης στο CSS animation pipeline.