3D Blender γραφικά σε webGL με την HTML5

Δημοσθένης | Σάβ, 02/04/2012 - 22:59 | 4' | 2


Η νέα HTML5 είναι πραγματικά δυναμίτης. Μια νέα γενιά παιχνιδιών θα δημιουργηθούν τα επόμενα χρόνια βασισμένα στον φυλλομετρητή με native υποστήριξη της HTML5. Οι απαιτήσεις σε υλικό δεν θα μειωθούν αφού στην προσπάθεια μου να τρέξω πολλά παραδείγματα 3d στο μικρό μου laptop είχαν σαν αποτέλεσμα να κολάνε τον firefox και να πρέπει να τον τερματίσω με το xkill. Ωστόσο σε ισχυρά μηχανήματα με καλές κάρτες γραφικών δεν αντιμετώπισα το ελάχιστο πρόβλημα σε εφαρμογές που έτρεχαν 3d στο tag <canvas> της νέας HTML5.

Σε αυτό το άρθρο θα αναφερθώ για μια σχετικά καινούρια τεχνολογία που ακόμα είναι στα σπάργανα.
Οι κατασκευαστές παιχνιδιών θα ήθελαν να δημιουργούν τα γραφικά στο GIMP ή στο Blender και στην συνέχεια να μπορούν έυκολα να τα εισάγουν στην HTML5.

Αυτό δεν είναι δύσκολο και ήδη γίνεται. Έχουν βγει βιβλιοθήκες javascript όπως η GLGE ή η SceneJS οι οποίες αναλαμβάνουν να διαχειριστούν με έτοιμα API σε javascript την 3d σκηνή ή το 3d μοντέλο και να γράψουν αυτό που πρέπει στο tag <canvas> χωρίς εσείς να κάνετε σχεδόν τίποτα.

Οι βιβλιοθήκες αυτές "μιλάν" την webGL απευθείας στην ιστοσελίδα μας χωρίς περεταίρω περίπλοκες διαδικασίες.
Εσείς σαν προγραμματιστής μέσω των API θα δημιουργείτε κανονικά objects με properties και events δημιουργώντας την 3d σκηνή σας και την αλληλεπίδραση με τον χρήστη.

Επίσης έχουν αρχίσει δειλά δειλά να εμφανίζονται εργαλεία για Blender που εξάγουν ολόκληρη την σκηνή και την μετατρέπουν απευθείας σε javascript και webGL !!! Δεν είναι φανταστικό! Κάτι τέτοιο κάνει το blender-webgl-exporter όπου είναι ένα script σε Python που κάνει εξαγωγές από το Blender σε GLGE και SceneJS.

Παρακάτω είναι ένα παράδειγμα μιας σκηνής που φτιάχτηκε στο Blender και έγινε εξαγωγή στο GLGE. Το παρακάτω τρέχει κανονικά μέσα στον Firefox ή σε οποιονδήποτε browser που υποστηρίζει webGL. Βέβαια μην το δοκιμάσετε σε μηχανήματα χωρίς καλές κάρτες γραφικών.




Σκεφτείτε λοιπόν τι έρχετε στο μέλλον. Οι παίκτες παιχνιδιών θα παίζουν εξελιγμένα παιχνίδια 3D στον browser χωρίς την ανάγκη κάποιου plugin που θα τρέχει μόνο σε Windows όπως το Unity Game Engine.

Οι κατασκευαστές από την άλλη με την χρήση του Blender και της webGL θα δημιουργούν παιχνίδια ποιότητας σε χαμηλό κόστος που θα είναι cross-platform αφού το παιχνίδι θα τρέχει μέσα στον Firefox ή Chrome κτλ ανεξαρτήτου συστήματος. Δεν θα υπάρχει περιορισμός για την πλατφόρμα ανάπτυξης.

Πολλά παλιά ρετρό παιχνίδια θα ξαναζωντανέψουν και θα φτιαχτούν εργαλεία ανάπτυξης παιχνιδιών σε HTML5.
Μικρά παιχνίδια ποιότητας θα βγουν για smartphones και Android κτλ.

Αναμένουμε το συναρπαστικό μέλλον.

Για περισσότερα:
http://www.glge.org/
http://scenejs.com/
https://code.google.com/p/blender-webgl-exporter/

Δώσε αστέρια!
Σχόλια

Σιγά σιγά η Google πέρασε κ' τα analytics σε html5. Έχει πάντως ακόμα βασικά προβλήματα, ειδικά στα βίντεο.

Σε firefox πάντως λειτουργεί καλά.

Οι τεχνολογίες αυτές είναι ακόμη στην αρχή αφού η HTML5 ακόμη δεν έχει βγει επίσημα.

Πάντως μέσα από τις δυνατότητες αυτές εγώ βλέπω το μέλλον.

Σίγουρα θα βγουν εφαρμογές σαν το

http://www.scirra.com/

που θα κάνουν παιχνίδια ή ακόμη μπορεί να βγει μια εφαρμφογή που θα κάνει ότι το Flash αλλά θα γράφει κώδικα HTML5 δλδ να έχει keyframes (CSS3) και animation, αντί actionscript να έχει javascript & jquery.

Επίσης αναμένουμε διάφορες βιβλιοθήκες javascript όπως αυτές του jquery αλλά για 3D και παιχνίδια όπως η http://blog.jaxgl.com/what-is-jax/