k33theod Δημοσ. 7 Ιανουαρίου 2016 Δημοσ. 7 Ιανουαρίου 2016 Ξέρει κανείς σε τι μονάδες είναι το σύστημα συν/νων του webgl. Ενοώ όταν κάνει ένα κύβο ας πούμε με εντολή new THREE.CubeGeometry(20, 20, 20); ή new THREE.Vector3(10,10,10); Τι είναι αυτά τα νούμερα σε σχέση με τον καμβά μου που είναι ας πούμε 800x600 px.
k33theod Δημοσ. 7 Ιανουαρίου 2016 Μέλος Δημοσ. 7 Ιανουαρίου 2016 Το documentation δεν βοηθά?! Δυστηχώς όχι.
k33theod Δημοσ. 8 Ιανουαρίου 2016 Μέλος Δημοσ. 8 Ιανουαρίου 2016 Σε... Μονάδες. 0 κέντρο. Σε τι μονάδες είναι η ερώτηση; Σε τι μονάδες είναι η ερώτηση; Αντιλαμβάνομαι ότι πέζει ρόλο η θέση / απόσταση της κάμερας αλλά ψάχνω μια αντιστοιχία γιαυτές τις μονάδες γιατί μου φένεται πολύ αόριστο.
παπι Δημοσ. 8 Ιανουαρίου 2016 Δημοσ. 8 Ιανουαρίου 2016 (επεξεργασμένο) -1 1 Μην σε μπερδεύει το viewport. Τα 3d πρακτικά τα projectαρεις. Όσο πιο κοντά στη κάμερα είναι, τόσο πιο μεγάλα θα είναι, οι μονάδες, είναι απλές μονάδες. Η default οθόνη πρέπει να είναι -1 1 με κέντρο το 0. Edit... Ας πούμε πως έχεις μια λάμπα η οποία φέγγει σε έναν τοίχο. Ο τοίχος είναι το viewport ο καμβάς στη περίπτωση σου. Η λάμπα είναι το λεγόμενο eye της κάμερας. Ο χώρος ανάμεσα από την λάμπα και τον τοίχο είναι το λεγόμενο view frustum. Αν βάλεις το χέρι σου σε αυτό το χώρο, τότε θα δεις την σκιά του στο τοίχο. Κάπως έτσι είναι τα πράματα, με την διάφορα ότι εσύ δεν βλέπεις τον τοίχο αλλά ένα άλλο panel (near clip panel) Επεξ/σία 8 Ιανουαρίου 2016 από παπι
k33theod Δημοσ. 9 Ιανουαρίου 2016 Μέλος Δημοσ. 9 Ιανουαρίου 2016 -1 1 Μην σε μπερδεύει το viewport. Τα 3d πρακτικά τα projectαρεις. Όσο πιο κοντά στη κάμερα είναι, τόσο πιο μεγάλα θα είναι, οι μονάδες, είναι απλές μονάδες. Η default οθόνη πρέπει να είναι -1 1 με κέντρο το 0. Edit... Ας πούμε πως έχεις μια λάμπα η οποία φέγγει σε έναν τοίχο. Ο τοίχος είναι το viewport ο καμβάς στη περίπτωση σου. Η λάμπα είναι το λεγόμενο eye της κάμερας. Ο χώρος ανάμεσα από την λάμπα και τον τοίχο είναι το λεγόμενο view frustum. Αν βάλεις το χέρι σου σε αυτό το χώρο, τότε θα δεις την σκιά του στο τοίχο. Κάπως έτσι είναι τα πράματα, με την διάφορα ότι εσύ δεν βλέπεις τον τοίχο αλλά ένα άλλο panel (near clip panel) Ναι για το -11 το είδα στα forums για webgl. και η αντιστοιχία βγαίνει έτσι var objectWidth = OBJECT_WIDTH_IN_PIXEL / CANVAS_WIDTH; Το three.js είναι βιβλιοθήκη του webgl και λογικά θα έπρεπε να ισχύει το ίδιο. Δεν μπορώ να καταλάβω γιατί οι τιμές δεν είναι μεταξύ -1 και 1 παράδειγμα var geometry = new THREE.SphereGeometry(50, 64, 64); Το 50 είναι η ακτίνα. Γιατί δεν βγαίνει εκτός ορίων. Προσπαθώ να καταλάβω τι γίνεται πειραματικά σχεδιάζοντας ένα ορθογώνιο στο επίπεδο XY new THREE.PlaneGeometry(50, 25); και μου γεμίζει όλη την οθόνη, μετά απομακρύνω την κάμερα και το ορθογώνιο μου μικραίνει και μπορώ να το μεγαλώσω κι άλλο. Πού φτάνει αυτό;
παπι Δημοσ. 9 Ιανουαρίου 2016 Δημοσ. 9 Ιανουαρίου 2016 Το θέμα είναι που έχεις τον projectorα τη κάμερα δηλαδή. Αν είναι στο 100z τότε μια σφαίρα με ακτίνα 25, τότε θα γεμίζει την μισή οθόνη. Ξέρεις από matricies? World view projection σου λέει κάτι;
k33theod Δημοσ. 9 Ιανουαρίου 2016 Μέλος Δημοσ. 9 Ιανουαρίου 2016 Ναι, αυτό το καταλαβαίνω. Αυτό που δεν καταλαβαίνω είναι πόσο μεγάλο σε αριθμούς είναι αυτό το τρισδιάστατο κουτί και τι αντιπροσωπεύουν αυτοί οι αριθμοί. Μπορώ δηλαδή την ακτίνα της σφαίρας αντί 25 να την κάνω 25000 και να βάλω την κάμερα στο 100000. Και τη σχέση έχουν αυτοί οι αριθμοί με τις διαστάσεις τη οθόνης.
παπι Δημοσ. 10 Ιανουαρίου 2016 Δημοσ. 10 Ιανουαρίου 2016 Ναι μπορείς να βάλεις ότι θέλεις. Όλο το πράμα έχει να κάνει με σχέσεις, άρα σου είναι αδιάφορο αν έχεις 0.000001 ή 1000000 επειδή πολύ απλά το 0.0001/0.0003 είναι ισοδύναμο με το 1000/3000 Δες λίγο στο google τις αγγλικές λέξεις που έβαλα πιο πάνω. Δες και δω http://www.insomnia.gr/topic/477835-share-3d-console/
k33theod Δημοσ. 10 Ιανουαρίου 2016 Μέλος Δημοσ. 10 Ιανουαρίου 2016 Σε κάθε περίπτωση ευχαριστώ. Πειραματικά έχω αρχήσει και καταλαβαίνω τι πέζει πάνω κάτω πρέπει να το δουλέψω λίγο να το χωνέψω. Απλά κόλλησα με τα pixels που δουλεύει ο 2d καμβάς
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα