Zastanawiam się nad refaktoryzacją dużej części mojego kodu renderowania i jedno pytanie pojawiło się w umyśle: Czy można renderować zarówno do ekranu, jak i do tekstury za pomocą wielu kolorowych załączników w buforze ramki? Nie mogę znaleźć żadnych informacji, jeśli byłoby to możliwe, nawet jeśli ma wiele użytecznych aplikacji. Przypuszczam, że powinno to wystarczyć, aby powiązać moją teksturę jako kolorową wtyczkę0 i renderuj bufor 0 z załącznikiem1?Czy jest możliwe dołączenie domyślnego bufora renderowania do pliku FBO?
Na przykład chcę zrobić interaktywną aplikację, w której można "narysować" na modelu 3D. Rozdzielam miejsce, w którym rysuje użytkownik, renderując współrzędne UV do tekstury, dzięki czemu mogę sprawdzić współrzędne myszy, gdzie zmodyfikować teksturę. W moim przypadku najszybszym będzie posiadanie modułu cieniującego, który w jednym przejściu przyciąga UV do tekstury i rzeczywistej tekstury na ekranie.
Czy są na to lepsze sposoby, czy jestem na dobrej drodze?
Rzeczywiście. sekcja 4.4 glspec brzmi następująco: "Początkowo GL używa domyślnego bufora ramki, a pamięć, wymiary, alokacja i format obrazów dołączonych do tego bufora ramki są w całości zarządzane przez system okienny, a więc stan domyślnego bufora ramki, łącznie z jego obrazami, nie może być zmieniony przez GL, ani domyślny bufor ramki nie może zostać usunięty przez GL. " –
oznacza to, że nie można nawet dodać własnego bufora renderowania do domyślnego bufora ramki. Aby rozwiązać problem, w zależności od przypadku użycia, możesz spróbować wyszukać "gluUnProject", który zmienia współrzędne okna na współrzędne obiektu. –
Dzięki za odpowiedzi. Domyślam się, że nie rozumiem domyślnego bufora ramki i "domyślnego bufora renderowania", który nie istnieje. – Andos