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 QualcommVielen Dank schonmal für alle Antworten!