Author Topic: JPCT AE & QCar - > Grafik Fehler  (Read 4066 times)

Offline firstdeathmaker

  • byte
  • *
  • Posts: 15
    • View Profile
JPCT AE & QCar - > Grafik Fehler
« on: October 10, 2011, 01:42:26 pm »
Hallo,

ich habe ein Problem: Ich versuche das Qualcomm QCAR Beispiel "ImageTargets" mittels JPCT zu bereichern, hänge aber gerade an einem fiesen Grafikbug. Im Endeffekt möchte ich mit QCAR das aktuelle Kamerabild in den Hintergrund rendern und dann mit JPCT 3D-Objekte darüber in den Vordergrund. QCAR wird dabei zur Bildanalyse benutzt.

Da QCAR selbst auch auf OpenGL zugreifen muss damit die Kamera in den Hintergrund gerendert wird und JPCT so schlicht und kompakt ist, bin ich vom QCAR-Sample "ImageTargets" ausgegangen und habe dort JPCT importiert. "ImageTargets" benutzt eine Rendererklasse, welche in onDrawFrame eine native-C Funktion aufruft die mittels OpenGL das Kamerabild einzeichnet. Diesen Aufruf umgebe ich mit den JPCT-Funktionen

framebuffer.clear()
<< nativer Funktionsaufruf mit C OpenGL-Befehlen drin >>
world.renderScene(framebuffer)
world.draw(framebuffer)
framebuffer.display()

Wenn ich die Anwendung starte, wird eine ganz kurze Zeitspanne das richtige Modell angezeigt. Danach wird es von einem gleichfarbigen Oval das sich über den ganzen Bildschirm erstreckt verdeckt. Die Größe des Ovals ist unabhängig von der Position des Modells oder der Kamera. Das Oval wird auch bei anderen 3D-Objekten angezeigt, ist also unabhängig vom Modell.

Wenn ich die native-Funktion auskommentiere, wird das Modell richtig, ohne Grafikfehler angezeigt.
Ebenso taucht der Fehler nicht auf wenn ich das Objekt nicht zur world hinzufüge. In dem Fall wird dann nur das Kamerabild angezeigt, aber eben auch kein Objekt.

Ich kann leider nicht den ganzen Code posten, aber ich wäre dankbar für Ideen woran es eventuell liegen könnte.
Ich hatte es früher auch schon einmal genau so hinbekommen, es ist also durchaus möglich. Nur leider ist mir der Sourcecode von damals abhanden gekommen.



Link zum QCAR SDK von Qualcomm

Vielen Dank schonmal für alle Antworten!
« Last Edit: October 11, 2011, 09:51:11 am by firstdeathmaker »

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 12298
    • View Profile
    • http://www.jpct.net
Re: JPCT AE & QCar - > Grafik Fehler
« Reply #1 on: October 10, 2011, 08:26:01 pm »
Welche Version von jPCT-AE verwendest du? Generell zeichnen beide Bibliotheken in denselben GL-Kontext, was für jPCT-AE dann ein Problem ist, wenn die Qualcomm-Lib irgendwas anders einstellt, als jPCT-AE das von seiner Seite aus erwartet. Aber wenn es schonmal funktioniert ist, ist das eher unwahrscheinlich. Hast du schonmal versucht, vor dem renderScene() nochmals den Z-Buffer (FrameBuffer.clearZBufferOnly()) zu löschen?

Offline firstdeathmaker

  • byte
  • *
  • Posts: 15
    • View Profile
Re: JPCT AE & QCar - > Grafik Fehler
« Reply #2 on: October 11, 2011, 09:50:50 am »
Ha, du hast mir sehr geholfen: Lag zwar nicht am Z-Buffer, aber mit der neuen JPCT-AE Alpha Version ist der Fehler weg.

Wir hatten die JPCT-Version vom 13. September 2011 benutzt, hash: a6615d9e839f4920e3ca8eb8ceeaea18.

Die aktuellste geht aber einwandfrei! Danke für die schnelle Antwort!

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 12298
    • View Profile
    • http://www.jpct.net
Re: JPCT AE & QCar - > Grafik Fehler
« Reply #3 on: October 11, 2011, 10:10:13 am »
Hmmm...ja, gut...trotzdem komisch. Bin mir nicht bewusst, was ich da geändert haben soll, dass es nun geht. Naja, egal...