Я пытаюсь выполнить некоторую обработку изображения на графическом процессоре, например, медиана, размытие, яркость и т. д. Общая идея состоит в том, чтобы сделать что-то вроде этого каркаса из GPU Gems 1.
Я могу написать фрагментный шейдер GLSL для обработки пикселей, поскольку я пробовал разные вещи в приложении дизайнера эффектов.
Я не уверен, однако, как я должен выполнить другую часть задачи. То есть я хотел бы работать с изображением в координатах изображения и затем выводить результат в текстуру. Мне известна переменная gl_FragCoords
.
Насколько я понимаю, это выглядит так: мне нужно настроить вид (может быть, орфографический?) И четырехугольник таким образом, чтобы пиксельный шейдер применялся один раз к каждому пикселю изображения и так, что это будет рендеринг в текстуру или что-то. Но как я могу добиться этого, учитывая, что есть глубина, которая может сделать некоторые вещи несколько неловкими для меня ...
Я был бы очень признателен, если бы кто-нибудь мог помочь мне с этой довольно простой задачей, поскольку я действительно разочарован собой.
UPDATE:
Кажется, мне придется использовать FBO, получая вот так: glBindFramebuffer(...)