General > German corner

Tutorials

<< < (2/4) > >>

Dryyden:
so, bin jetzt soweit mit dem einfachen würfel (grauer würfel wird angezeigt; erstmal nur software-renderer...2. tutorial wäre vielleicht gleiche aufgabe mit hw-renderer) :D ...fehlen noch die kommentare und noch etwas text...hab aber noch ein paar fragen:

texturen: ich habe eine textur geladen in dem texturmanager hinzugefügt...danach dem würfel die textur zugeordnet...jetzt wird die textur aber nicht angezeigt, erst wenn ich environment mapping oder bumpmapping aktiviere, siehts gut aus...ist das so gewollt?...also muss ich immer eines von beiden aktiviert haben?...oder hab ich was übersehen?...

threads: in jedem deiner beispiele benutzt du threads (hab ich beim ersten tutorial erstmal rausgenommen)...benutzt du die threads nur, damit das rendern und das hochzählen des counters in verschiedenen threads ablaufen oder gehören threads zur philosophie von jpct?...also das hauptprogramm immer in einem thread ablaufen lassen...

EgonOlsen:
Wenn du den Würfel über die Primitives-Klasse geholt hast, dann hat er erstmal keine Texturkoordinaten, da es ein simpler Drehkörper ist. Du kannst z.B. mit calcTextureWrap() oder -Spherical() eine "draufkleben". Oder den Würfel selber über seine Koordinaten zusammenbauen.
Das mit den Threads ist stellenweise nicht wirklich nötig. Was ich immer tue, ist den Zähler in einem extra Thread laufen zu lassen, um eine Zeitmessung zu realisieren. Der Render-Thread müsste für Applikationen nicht wirklich sein; Du kannst ihn einfach weglassen. Für Applets ist er aber wichtig und um die Portierung zwischen Applet und Applikation zu erleichtern, baue ich es immer gleich so. Hat mit jPCT selber nichts zu tun und ich werde das aus den Beispielen vielleicht auch entfernen, da es wohl mehr verwirrt als hilft.

Dryyden:
hab jetzt das tutorial mit opengl...ist das gleiche wie das erste, nur eben wird das fenster von lwjgl erstellt und es ist noch kein mapping zw. awt-events und lwjgl vorhanden...

noch eine frage: ich muss ja den software-renderer explizit ausschalten (sonst fehlermeldung)...was ist der unterschied zwischen zuerst den opengl-renderer aktivieren und danach den software-renderer zu deaktivieren und dem umgekehrten weg (erst software deaktivieren, dann opengl aktivieren)...im konsolenfenster stand einmal "using splitted buffer", das andere mal "using combined buffer" (oder so ähnlich)...

hmm, beim lesen der api seh ich gerade, das sowas schon unter frambuffer drinsteht...vielleicht könntest du es nochmal kurz erklären...

ach ja, hab das erste tutorial noch geändert...abbruch jetzt über änderung der schleifenvariable...

EgonOlsen:
Eigentlich ist es egal, in welcher Reihenfolge man Software ab- und Hardware anschaltet. Die JavaDOCs klingen so, als ob man erst OpenGL an- und dann Software abschalten muss, aber so war das gar nicht gemeint. Evtl. ist diese Reihenfolge sinniger, um nicht völlig ohne Buffer dazustehen, wenn OpenGL fehlschlägt...aber dann ist sowieso was nicht so, wie es sein sollte.
Die verschiedenen Buffer-Modi gelten nur für Software und werden von der FrameBuffer.optimizeBuf...()-Methode gesetzt. Dabei kann es mal passieren, das in einem Durchlauf die eine und im anderen die andere Methode schneller ist...das liegt im Rahmen er Messtoleranz und macht eigentlich nichts. Der ganze Quark existiert überhaupt nur, weil sich die JVM auf einem P4 u.U. sehr merkwürdig verhält. Es scheint hier ein Problem mit dem Alignment von Arrays zu geben, das aber z.T. erst nach ein paar Sekunden Laufzeit auftritt. Auf meinem Rechner ist das teilweise ziemlich signifikant und man kann es durch diese kleine Messung am Anfang mittels optimize...() etwas abmildern (aber nicht beheben).

Dryyden:
etwas offtopic:

ich bin gerade am überlegen, wie ich eine allgemeine methode zum übersetzen von tastaturkommandos in lwjgl/awt schreiben könnte...würd ich gleich am anfang des tutorials einführen (vermutlich einen kleinen dialog neben dem hauptfenster, in dem man software oder hardware einstellen kann)...wollte ich mal kurz fragen: kennst du jogl?...ist auch eine opengl implementierung, hier kann man aber awt verwenden (das mappen würde also entfallen)...man könnte also ein und dasselbe frame für software + hardware einsetzen...

noch ein vorteil von lwjgl: man hat soundsupport:)...

oder man implementiert in jpct eine wrapperklasse: man definiert seine eigenen tastaturkonstanten (wie lwjgl) und entscheidet dann abhängig davon, ob man software oder lwjgl nutzt, wie die neue tastaturkonstante zu interpretieren ist...

würd ich mich vielleicht mal ransetzen, damit man darauf in den tutorials aufbauen kann...

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version