diff options
Diffstat (limited to 'src/qcam/assets/shader/bayer_8.vert')
-rw-r--r-- | src/qcam/assets/shader/bayer_8.vert | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/src/qcam/assets/shader/bayer_8.vert b/src/qcam/assets/shader/bayer_8.vert deleted file mode 100644 index 3695a5e9..00000000 --- a/src/qcam/assets/shader/bayer_8.vert +++ /dev/null @@ -1,51 +0,0 @@ -/* SPDX-License-Identifier: BSD-2-Clause */ -/* -From http://jgt.akpeters.com/papers/McGuire08/ - -Efficient, High-Quality Bayer Demosaic Filtering on GPUs - -Morgan McGuire - -This paper appears in issue Volume 13, Number 4. ---------------------------------------------------------- -Copyright (c) 2008, Morgan McGuire. All rights reserved. - -Modified by Linaro Ltd to integrate it into libcamera. -Copyright (C) 2021, Linaro -*/ - -//Vertex Shader - -attribute vec4 vertexIn; -attribute vec2 textureIn; - -uniform vec2 tex_size; /* The texture size in pixels */ -uniform vec2 tex_step; - -/** Pixel position of the first red pixel in the */ -/** Bayer pattern. [{0,1}, {0, 1}]*/ -uniform vec2 tex_bayer_first_red; - -/** .xy = Pixel being sampled in the fragment shader on the range [0, 1] - .zw = ...on the range [0, sourceSize], offset by firstRed */ -varying vec4 center; - -/** center.x + (-2/w, -1/w, 1/w, 2/w); These are the x-positions */ -/** of the adjacent pixels.*/ -varying vec4 xCoord; - -/** center.y + (-2/h, -1/h, 1/h, 2/h); These are the y-positions */ -/** of the adjacent pixels.*/ -varying vec4 yCoord; - -void main(void) { - center.xy = textureIn; - center.zw = textureIn * tex_size + tex_bayer_first_red; - - xCoord = center.x + vec4(-2.0 * tex_step.x, - -tex_step.x, tex_step.x, 2.0 * tex_step.x); - yCoord = center.y + vec4(-2.0 * tex_step.y, - -tex_step.y, tex_step.y, 2.0 * tex_step.y); - - gl_Position = vertexIn; -} |