2013-08-01 2 views
2

Можно ли прикрепить текстуру к FBO с мипмапами? В настоящее время я пытаюсь сделать это. У меня есть текстура с несколькими уровнями mipmap. Я прикрепляю его к FBO. Когда я очищаю цвет для этого буфера, я все еще вижу исходную текстуру на выходе. Как только я прикрепляю другую текстуру с 1 уровнем mipmap, только FBO правильно рисует результаты.FBO и mipmap-текстуры

ответ

2

Хотя трудно сказать, где ваша проблема лежит без какого-либо кода, быстрый и простой ответ просто: Конечно, это возможно! Вы когда-нибудь задавались вопросом, для чего нужен параметр level для всех этих glFramebufferTexture functions?

Но вы можете писать только на один уровень mipmap соответствующей текстуры, все остальные уровни не изменяются. Обычным способом является запись в уровень mipmap 0 (как и для текстуры без mipmapped) и генерация оставшихся уровней с помощью glGenerateMipmap. Но вы также можете писать на любой другой уровень или на каждый уровень индивидуально.

+0

Это то, что я пытаюсь сейчас. Должен ли я cal glFrameBufferTexture2D для каждого уровня? –

+0

@MichaelIV Это зависит от многого. Вы можете писать на каждый уровень индивидуально. Но если более высокие уровни являются только более низкими регрессионными версиями уровня 0 (что обычно имеет место для mipmapped текстур), то это будет довольно глупая идея, и вы можете просто сделать «glGenerateMipmap», чтобы автоматически генерировать их путем понижающей дискретизации первого уровня , –

+0

, если я установил уровень = 0 ничего не изменилось, если я очистил color.if Я установил уровень = 1 Я могу видеть очищающий цвет, но со следующим miplevel за ним ... –

Смежные вопросы