ОК, поэтому у меня есть 4 буфера, 3 FBOs и буфер визуализации. Позволь мне объяснить.Как объединить два ФБО?
У меня есть вид FBO, который сохранит сцену, прежде чем я отрисую ее в буфер визуализации.
У меня есть буфер фона, который содержит фон сцены.
У меня есть пользовательский буфер, с которым пользователь манипулирует.
Когда пользователь совершает какое-либо действие, я рисую в буфер пользователя, используя некоторое смешение.
Затем, чтобы перерисовать всю сцену, что я хочу сделать, это очистить буфер просмотра, нарисовать буфер фона в буфер просмотра, изменить смешение, а затем нарисовать буфер пользователя в буфер просмотра. Наконец, визуализируйте буфер представления в буфер визуализации.
Однако я не могу понять, как нарисовать FBO для другого FBO. То, что я хочу сделать, - это, по сути, слияние и объединение двух FBOs, но я не могу понять, как это сделать! Я очень новичок в OpenGL ES, поэтому спасибо за помощь.
Спасибо, посмотрев вокруг навсегда, я только что открыл этот ответ. По какой-то причине я просто предположил, что будет очень медленно. – DevDevDev
То, что я нашел очень медленным, - это полноэкранное альфа-смешивание. Смешивание 4 слоев вместе привело меня к 15 FPS. Я должен был тщательно отключить смешивание, когда мне это не понадобилось. – codewarrior
Спасибо за подсказку. Только небольшие части будут меняться между кадрами, есть ли простой способ очистить и перерисовать части кадра. Например, скажем, у вас есть программа рисования прямоугольника. На пользовательском входе (touchsEnded). Вы вычисляете прямоугольную область, в которой пользователь вносил изменения, очищал пиксели там, перерисовывал фон в этом прямоугольнике и затем рисовал действие пользователя? Я имею в виду, что я мог бы сделать что-то вручную, но я бы ожидал, что OpenGL получит это. Также возможно объединить два буфера визуализации вместе? Извините за задание стольких вопросов, но большинство учебников написано довольно плохо ... – DevDevDev