Generowanie obrazka z Canvasa Jogl

0

Witam drogich użytkowników od kilku dni borykam się z pewnym problemem i mam nadzieje że ktoś z was będzie w stanie mi pomóc.
Otóż mam zamiar wygenerować obraz najlepiej w formacie png z zawartości GLCanvasa czyli canvasa w którym wyświetlają mi się pewne rzeczy napisane w opengl. Problem okazał sie nie być trywialny otóż pierwsze podejście jakie uczyniłem było wykorzystanie funkcji glReadPixels czyli pobranie obrazu z bufora koloru i złożenie go w png ale efekt nie był zadowalający. Drugi pomysł to wykorzystanie tego iż GlCanvas dziedziczy po zwykłym Canvasie z AWT i wyrysowanie go za pomocą metody paint() do Graphics2D i następnie wygenerowanie bufferedimage i zapisanie za pomocą ImageIO, tutaj niestety dostałem pusty ekran pomimo kilkunastu prób z różna konfiguracja. Próbowałem także generować obraz z metod GLCanvasa takich jak volatileImage ale to dało taki sam efekt czyli czarny obrazek. Jedyny efekt jaki udało mi się uzyskać było to zrobienie obrazka ze zrzutu ekranu wykorzystując klase Robot ale to rozwiązanie jest raczej na moje potrzeby ostatecznością. Znacie jakieś sposoby jak można to zrobić? Z góry dzięki za odpowiedzi. w ostateczności napiszcie jak wymusić na JFrame aby zawsze był na wierzchu ;)

0

wykorzystanie funkcji glReadPixels czyli pobranie obrazu z bufora koloru i złożenie go w png ale efekt nie był zadowalający

Co to znaczy, że efekt nie był zadowalający? Na pewno wywołałeś glReadPixels po narysowaniu wszystkiego?

Poczytaj o PBuffers. Może te bufory zadziałają tak jak chcesz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1