Registriert: So Dez 29, 2002 10:37 Beiträge: 251 Wohnort: Ulm
nabend,
bevor jemand was sagt: ich hab mir das tut von SoS (zumindest das erste) durchgelesen, aber nicht wirklich fündig geworden:
ich möchte durch benutzereingabe ein objekt in meiner welt platzieren, aber wie mache ich das am geschicktesten? also ein dynamisches array wär ja ne lösung, aber der aufwand (da brauch ich ja dann für jede seite eines objektes quasi wieder ein unterarray ...)
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Ne andere Möglichkeit als ein dynamisches Array gibts eigentlich keine (zumindestens wenn mans sinnvoll und effizient implementieren will) um Objekte dynamisch in die Szene einzufügen.Es bleibt dir also nix anderes übrig als ein dynamisches Objektarray zu erstellen, in dem jedes Objekt auch ne eigene Dreiecks- bzw. Vertexliste besitzt...ne einfachere Lösung fällt mir auf Anhieb keine ein.
Registriert: So Dez 29, 2002 10:37 Beiträge: 251 Wohnort: Ulm
okay, soweit so gut, das dynamische objekte erstellen hab ich jetzt.. aber da funktioniert irgendwie das depth-testing nimmer!
ihr könnts selber testen, hab mal das projekt aufn server geladen. hab gleich mal in dem settingsscreen nen test-wert eingegeben, bei dem der fehler auftritt: die erste pyramide wird bei 0, -1.3, -5 gezeichnet, die zweite dann (wenn man die settings so lässt..) bei 0, -1.3, -10. trotzdem erscheint die zweite pyramide VOR der ersten, was ja mit depth test net so ganz stimmen kann..
gruß rochus
hier der link: <a href='http://www.rochus.net/virtualmuseum/virtual_editor.rar' target='_blank'>http://www.rochus.net/virtualmuseum/virtual_editor.rar</a>
Registriert: Mi Jul 17, 2002 12:07 Beiträge: 976 Wohnort: Tübingen
Versteh ich das richtig, das also vor dem 2. Objekt
Code:
glTranslatef(0,0,-5)
aufgerufen wird?
_________________ "Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0." - Hal Faber Meine Homepage: http://laboda.delphigl.com
Ich würde kein Array sondern eine Liste nehmen, die muss dann nicht jedesmal völlig neu erstellt werden, sondern man kann problemlos die Elemente verwalten (einfügen, lösche
Alternativ kannst du gleich einen Baum aufbauen, wenn du weißt dass deine Objekte in einer bestimmten Relation zueinander stehen (z.B. ein Objekt mehrere Unterobjekte verwalten sollte).
Registriert: So Dez 29, 2002 10:37 Beiträge: 251 Wohnort: Ulm
La_Boda hat geschrieben:
Versteh ich das richtig, das also vor dem 2. Objekt
Code:
glTranslatef(0,0,-5)
aufgerufen wird?
das wird vor allen objekten aufgerufen:
gltranslatef(...);
glpushmatrix; erstes objekt mit translation und rotation und blablabla glpopmatrix;
glpushmatrix; zweites objekt mit translation und rotation und blablabla glpopmatrix;
und ja, dann wird das gltranslatef mit den werten aufgerufen, die für das 2. (dynamische) objekt eingegeben wurden (in dem formScreenSettings..
ich hab gestern noch rumprobiert und musste feststellen, dass das problem auch auftritt, wenn ich die objekte einfach über das drawpyramide aufrufe und die schon vordefiniert an diese plätze schiebe. irgendwas stimmt da nicht
Registriert: So Dez 29, 2002 10:37 Beiträge: 251 Wohnort: Ulm
neuer tag, neues glück, wie es scheint.. habe mich gerade gewundert, warum ich gluPerspective mit (45,width/height,0,100) und nicht mit (45,width/height,0.01,100) aufrufe. und siehe da, das problem is weg!
kann mir dennoch einer verraten, woran das liegt????? :blink:
Mitglieder in diesem Forum: 0 Mitglieder und 10 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.