>> Ενημερωτική ενότητα : Python with Panda3D (click για είσοδο)

Επιμέλεια ενότητας : Πεφάνης Ευάγγελος - Ε.Τ.Ε.Π

PANDA3D - The Open Source Framework for 3D Rendering and Games with Python.

Το Panda3D είναι μια Open Source 3D μηχανή γραφικών που προγραμματίζεται με την χρήση της γλώσσας Python, είναι μια βιβλιοθήκη υπορουτίνων για απόδοση 3D γραφικών και ανάπτυξη παιχνιδιών. Ο πυρήνας της 3d-engine είναι φτιαγμένος με  C ++ και περιέχει ένα σύνολο συνδέσεων Python. Η ανάπτυξη παιχνιδιών με το Panda3D αποτελείται συνήθως από τη σύνταξη ενός προγράμματος Python ή C ++ που ελέγχει τη βιβλιοθήκη Panda3D.

Η συνέχεια εντός της ενότητας...

H 3D μηχανή γραφικών - παιχνιδιών Panda3D, είναι μία ανοικτή πλατφόρμα που χρησιμοποιείται για την υλοποίηση 3D παιχνιδιών και κυκλοφόρησε για πρώτη φορά το 2002. Yποστηρίζει κάποιες βασικές λειτουργίες για τα 3D γραφικά, όπως είναι ο έλεγχος της σύγκρουσης των αντικειμένων (collision detection). Χρησιμοποιεί αντικειμενοστρεφή προγραμματισμό, καθώς η ανάπτυξη των παιχνιδιών γίνεται με την γλώσσα Python, επιτρέποντας με αυτό τον τρόπο την δημιουργία κλάσεων και πολλαπλών αντικειμένων. Ακόμη, δίνεται η δυνατότητα επέκτασης ενός προγράμματος σε C++, και παρέχεται η ενσωμάτωση γραφικών που έχουν αναπτυχθεί σε λογισμικά κατάλληλα για 3D γραφικά, όπως είναι το Blender και το 3dMax(Oyekan et al., 2011). Στην ιστοσελίδα της στο διαδίκτυο, προσφέρονται δωρεάν εκπαιδευτικά βίντεο, εγχειρίδιο με την τεκμηρίωση που υπάρχει στην συγκεκριμένη πλατφόρμα, καθώς και μία ανοικτή κοινότητα με περιοχή συζητήσεων (forums) για οποιαδήποτε ερώτηση ή συζήτηση σχετικά με την Panda3D.

Panda3D δημιουργήθηκε για την ανάπτυξη εμπορικών παιχνιδιών και εξακολουθεί να χρησιμοποιείται για την ανάπτυξη εμπορικών παιχνιδιών. Εξαιτίας αυτού, η μηχανή 3D πρέπει να δώσει έμφαση σε τέσσερις τομείς: ισχύ, ταχύτητα, πληρότητα και ανοχή σφαλμάτων. 

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

Το Panda3D προσπαθεί να είναι η πιο ευέλικτη και ικανή μηχανή παιχνιδιών στον κόσμο. Ακολουθούν ορισμένα παραδείγματα για το πώς επιτυγχάνει αυτό:

android-wear-ball-in-maze-1.jpg

Φορητότητα πλατφόρμας

Ο πυρήνας Panda3D είναι γραμμένος σε γλωσσα C ++. Όταν συνδυάζεται με τον κατάλληλο κώδικα υποστήριξης πλατφόρμας, το Panda3D θα εκτελείται οπουδήποτε!

259.png

Ευέλικτος χειρισμός πηγαίων στοιχείων

Το Panda3D περιλαμβάνει εργαλεία γραμμής εντολών για την επεξεργασία και βελτιστοποίηση των πηγαίων στοιχείων, επιτρέποντάς σας να αυτοματοποιήσετε και να δημιουργήσετε πρόγραμμα που να ταιριάζει στις ακριβείς ανάγκες σας.

boxes-shadows.png
Βιβλιοθήκες
 
Το Panda3D συνοδεύεται από υποστήριξη  για πολλές δημοφιλείς βιβλιοθήκες τρίτων, όπως η μηχανή φυσικής Bullet, ο φορτωτής μοντέλου Assimp, οι βιβλιοθήκες ήχου OpenAL και FMOD και πολλά άλλα.
 
403.png
Graphics
 
Το Panda3D εκθέτει όλα τα γραφικά χαμηλού επιπέδου στην εφαρμογή. Εφευρέστε τις δικές σας τεχνικές γραφικών και τρόπους απόδοσης!
 
PstatsSceneSmooth.png

Προφίλ απόδοσης

Το Panda3D περιλαμβάνει το pstats - ένα σύστημα προφίλ μέσω δικτύου που έχει σχεδιαστεί για να σας βοηθήσει να καταλάβετε πού πηγαίνει κάθε χιλιοστό του δευτερολέπτου του χρόνου εκτέλεσης της εφαρμογής σας.

Screenshot_20190103_052439.png

Ταχεία προτυποποίηση

Το Panda3D δεν απαιτεί περίπλοκο κώδικα αρχικοποίησης. Αυτό που βλέπετε εδώ είναι μια πλήρης εφαρμογή Panda3D γραμμένη σε Python!

Video tutorials for Python : https://docs.panda3d.org/1.10/python/more-resources/video-tutorials

DOWNLOAD THE PANDA3D SDK

Link : https://www.panda3d.org/download/sdk-1-10-13/

Διαφορετικά με εγκατάσταση του SDK μέσω της Python.

Στο command prompt (CMD) δίνουμε την εντολή.

pip install panda3d==1.10.13