Raycasting: Φτιάξε ένα game engine ενός 3D κόσμου σε 15 λεπτά!

Raycasting: Φτιάξε ένα game engine ενός 3D κόσμου σε 15 λεπτά!

Raycasting

game engine ενός 3D κόσμου: Σε αυτό το άρθρο, θα βρείτε τον κώδικα javascript για ένα απλό game engine για την δημιουργία ενός 3D κόσμου και την εξερεύνηση του σε πρώτο πρόσωπο, ξεκινώντας από το μηδέν, γρήγορα και χωρίς δύσκολα μαθηματικά, χρησιμοποιώντας μια τεχνική που ονομάζεται Raycasting.

game engine ενός 3D κόσμου - csc..com.gr - μαθήματα πληροφορικής

Μπορεί να το έχετε δει ξανά σε παιχνίδια όπως το Daggerfall και το Duke Nukem 3D ή πιο πρόσφατα στις συμμετοχές του Notch Persson.

Μαθαίνετε γρήγορα την δημιουργία ενός 3D περιβάλλοντος, χωρίς να ασχοληθείτε με πολλές από τις πολυπλοκότητες του “πραγματικού 3D” ώστε να σας επιβραδύνει στην κατανόηση.

game engine ενός 3D κόσμου - csc..com.gr - μαθήματα πληροφορικής

game engine ενός 3D κόσμου: Για παράδειγμα, τα raycasts λειτουργούν σε συνεχή χρόνο, έτσι μπορείτε να φορτώσετε έναν τεράστιο τρισδιάστατο κόσμο ο οποίος θα λειτουργήσει απλά, χωρίς βελτιστοποίηση, και γρήγορα θα γίνει ένας ατομικός σας κόσμος. Τα επίπεδα ορίζονται ως απλά πλέγματα και όχι ως πολυγωνικά meshes, έτσι ώστε να μπορείτε να υλοποιήσετε το παιχνίδι σας, χωρίς ένα περιβάλλον 3D μοντελοποίησης ή μαθηματικά.

Χύτευση ακτίνων – Ray Casting

Η “χύτευση ακτίνων” (Ray Casting) είναι ο πιο βασικός από πολλούς αλγορίθμους απεικόνισης γραφικών υπολογιστών που χρησιμοποιούν τον γεωμετρικό αλγόριθμο ανίχνευσης ακτίνων  Οι αλγόριθμοι rendering, που βασίζονται στην ανίχνευση Ray, λειτουργούν σε σειρά εικόνων για να αποδίδουν τρισδιάστατες σκηνές σε δισδιάστατες εικόνες.

Οι γεωμετρικές ακτίνες εντοπίζονται από το μάτι του παρατηρητή για να δείξουν το φως (ακτινοβολία ) που ταξιδεύει προς τον παρατηρητή από την κατεύθυνση της ακτίνας. Η ταχύτητα και η απλότητα της χύτευσης ακτίνων προέρχεται από τον υπολογισμό του χρώματος του φωτός χωρίς να ανιχνευθούν αναδρομικά πρόσθετες ακτίνες που αναλύουν το περιστατικό ακτινοβολίας στο σημείο που έπληξε την ακτίνα.

Αυτό εξαλείφει τη δυνατότητα να προβάλλονται με ακρίβεια αντανακλάσεις, τις διαθλάσεις ή τη φυσική παρακμή των σκιών. Ωστόσο, όλα αυτά τα στοιχεία μπορούν να υπονομεύονται σε κάποιο βαθμό, με δημιουργική χρήση χαρτών υφής ή με άλλες μεθόδους. Η υψηλή ταχύτητα υπολογισμού οδήγησε “χύτευση ακτίνων” σε μια πρακτική μέθοδο απόδοσης σε 3D video games σε πραγματικό χρόνο.

Δείτε το άρθρο εδώ

Πατήστε πάνω στην εικόνα του άρθρου που προτείνεται, για να δοκιμάσετε το παιχνίδι οι ίδιοι..