Hallöchen mal wieder.
Ich nehme an, ich geh den meisten hier auf die nerven, aber es stellen sich halt wirklich laufend neue Probleme, wo ich keine Antwort zu finde, wenn man an einem, für meine Begriffe, etwas aufwändigeren Projekt arbeitet.
Ich habe das gleiche Problem schonmal von einem Kumpel gehört, dem ich das Programm geschickt hatte, nämlich:
Wenn ich eine der Bewegungstasten nutze (W A S D) dann verschwindet jegliche Geometrie und ich sehe nur die Clearcolor.
Das wäre alles ja noch nicht so der Hokus Pokus, wenn es nicht noch andere Randfaktoren gäbe, die da mit zusammenspielen:
Als mein Kumpel das damals berichtet hatte, dachte ich, das wäre ein einzelfall und läge nur an seiner onboard Grafikkarte und habe es daher ad acta gelegt.
Nun hatte ich aber das selbe Phänomen auf einmal auf meiner Workstation, nachdem ich eine Renderpass Methode eingebaut hatte.
komischerweise tritt das Problem allerdings nur auf meinem Rechner, nicht aber auf meinem Notebook auf.
Wenn ich den Renderpass auskommentiere kann ich mich auch wieder fein bewegen, ohne dass ich nurnoch die Clearcolor zu sehen bekommen.
Ich habe das jetzt auch auf einem anderen Rechner getestet, wo es anstandslos läuft.
Was noch sehr interessant ist, ist folgendes: Bei drücken auf jegliche andere Taste passiert nichts, lediglich wenn ich die Bewegungstasten Nutze.
Wenn ich die Bewegung, die normalerweise die Taste W zum Beispiel nutzt auf etwas anderes lege, wie zum Beispiel das mousewheel, dann funktioniert es auch wieder alles. Es liegt also weder daran, dass ich eine Taste drücke, noch daran, dass die Bewegungsmethode ausgeführt wird.
Es ist eine Kombination aus Tastendruck, mit bewegungsmethode und der aktivierten renderpass. Sobald einer dieser Faktoren Wegfällt funktioniert es wieder.
Allerdings ist das Problem auch nur auf manchen PCs.
Im Renderpass selber zeiche ich eigentlich nur ein Model, auf Bewegung oder sonstiges wird da gar nicht reagiert.
Was ich gerade noch festgestellt habe:
Wenn ich den Renderpass sowohl vor meiner haupt rendering Methode als auch direkt zu Beginn selbiger aufrufe klappt es wieder.
Das ganze kommt echt vor als will mich da einer verarschen.
Wäre es möglicherweise Denkbar, dass man sich auf den unterschiedlichen PC's aufgrund unterschiedlicher FPS mit unterschiedlichen Geschwindigkeiten bewegt ? In dem Fall bist du vermutlich auf den PC's auf denen es nicht klappt einfach so schnell, dass die Geometrie sehr schnell außerhalb des Sichtbereiches liegt.
_________________ Bevor du definierst, was etwas ist, versichere dich seiner Existenz.
Mit timebased movement kann das ja nix zu tun haben.
Weil ich ja nur eine feste Einheit pro Tastatureingabe bewege, und wenn ich nur einmal auf die Taste drücke, dann bin ich ja auch nur um diese Strecke nach vorne.
Zumal das ganze ja auch nicht passiert, wenn ich die Bewegungsmethode auf das Wheel lege. Von daher schließe ich das mal aus.
Gruß
Jan
Registriert: Do Mär 06, 2003 15:27 Beiträge: 281 Wohnort: Bochum
lass doch mal n bissle betreffenden code springen, für mich hört sich das alles sehr merkwürdig an.. liegt bestimmt an was ganz anderem...das man so im ersten moment garnicht damit verknüpfen würde..
Also ich glaube mittlerweile, dass das ganze nichts mit meinem eigenen sourcecode zu tun hat, sondern der Fehler woanders liegt.
Ich habe jetzt das vorherige Problem behoben indem ich einfach nur den Renderpass wann anders durchlaufen lasse.
Aber das selbe Problem tritt jetzt laufend woanders auf, und es ist für mich nie nachvollziehbar warum.
Ich habe jetzt zum Beispiel die Methode zum anvisieren von Objekten mit der Kamera neu geschrieben und jetzt hab ich das selbe Problem mit der verschwindenden Geometrie, wenn ich das Programm auf meinem PC laufen lasse. Auf dem Notebook läuft es einwandfrei.
Wenn ich bei jedem Renderdurchlauf ein showmessage aufrufe und dann einfach im Programm die enter-taste spamme, dann stockt natürlich alles, aber dann sehe ich sogar auf dem PC dass das klappt. Also die geometrie verschwindet dann nicht.
Ich hab da das Gefühl, dass da ein Problem mit dem Buffer ist. Dass der aus irgendeinem Grund geleert wird.
Wenn ich den Kameramodus umstelle, also ich kein Objekt mehr verfolge erscheint die Geometrie dann wieder.
Soll ich mal das Programm uppen?
Gruß
Jan
jup hab ich.
Genau das ist auch so eine Sache die ich nicht verstehe.
Das ich hab auch als erstes mal ans Doublebuffering gedacht und das kontrolliert, war aber aktiviert.
Eine weitere Sache, die irgendwie auf Probleme mit dem Buffer schließen lässt ist folgende:
Wenn ich mit der Maus auf ein Objekt klicke, dann wird für dieses Objekt ein Renderpass gestartet und das Objekt wird in kleiner Form gerendert um dann ins HUD eingeblendet zu werden.
In dem Moment in dem ich auf das Objekt klicke flackert kurz das Bild.
Wenn ich oft genug draufklicke, dann kann ich sehen, dass ich kurzzeitig den Renderpass eingeblendet kriege, obwohl in dem gesamten Renderpass nirgendwo ein Swapbuffers enthalten ist.
Irgendwie komisch alles.
Der Idle handler ist vielleicht auch noch interressant!
Wie man sieht, ist da einiges aus den Tutorials mit eingeflossen. Ich hoffe mal ich habe da keine gröberen Fehler drin, die ich nicht raffe, das wär peinlich :]
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Geh ich richtig in der Annahme, dass du mit cam.usematrix deine Kamera postierst?
Wenn dem so ist, kann es sein, dass deine Y-Komponente immer 0 ist, und du damit im Model stehst? Setz mal statt 0 irgendwas größeres ein. Mal sehn, ob du dann was siehst.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Da hast du recht, dass ist die Methode zum Positionieren der Kamera.
Aber wie meinst du das "Im Model stehen" ?
Ich hab ja nicht nur ein Model, sondern mehrere.
Der Y-Wert ist nicht immer 0, sondern wird natürlich verändert, wenn ich die Kamera nach oben Positioniere.
Weiterhin wäre das ja ein Fehler, der dann auf jedem Rechner auftreten würde und nicht nur auf einem.
Und der Fehler würde dann auch nicht so auftreten wie er es jetzt tut.
Mitglieder in diesem Forum: 0 Mitglieder und 5 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.