Mam obiekt framebuffer, w którym używam Multi Target Rendering na N tekstur bindowanych do niego. W pewnym momencie chcę wyczyścić zawartość niektórych z tych tekstur, ale nie wszystkie. Jeśli zadzwonięCzy jest możliwe wyczyszczenie niektórych tekstur w buforze ramki z renderowaniem z wieloma celami?
glClearColor(0.0, 0.0, 0.0, 0.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
każdy tekstury zbindowanych do FBO zostanie wyczyszczone (mam rację?). Czy można to zrobić na określonych buforach/teksturach rysowania?
Dziękuję. Jakie jest właściwe użycie glClearBufferfv? Czy glClearBufferfv (GL_COLOR_ATTACHEMENT0, 0 i kolor [0]) są w porządku? (gdzie kolor jest tablicą float [4]) – darius
@darius: "* glClearBufferfv *" pobiera tablicę zmiennych. To właśnie ["fv" zawsze oznacza] (https://www.opengl.org/wiki/Nomenclature#Function_suffixes). W tym przypadku zawsze ma 4 pływaki. Tak jak wersja 'iv' pobiera 4 liczby całkowite ze znakiem (dla kasowania buforów w formacie całkowitym), a' uiv' pobiera 4 liczby całkowite bez znaku. –
Dziękuję za link! W rzeczywistości, część, o której naprawdę miałem wątpliwości, to pierwsze dwa argumenty. Jeśli dobrze zrozumiałem, są one GLenum bufora i jego miejsce w tablicy kolorów buforowych GLenum. Tak więc ogólnie rzecz biorąc, takie rzeczy jak GL_COLOR_ATTACHEMENT0 + i, i – darius