Mercurial > repos > blastem
view shaders/sharp.f.glsl @ 1904:8312e574100a
Implement selectable YM2612/YM3834 invalid status port behavior
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 26 Feb 2020 22:40:37 -0800 |
parents | be1da0a68d1e |
children | f3cca4b3f17a |
line wrap: on
line source
uniform sampler2D textures[2]; varying mediump vec2 texcoord; void main() { mediump float x0 = (floor(texcoord.x * 512.0 - 0.25) + 0.5)/512.0; mediump float x1 = (floor(texcoord.x * 512.0 + 0.25) + 0.5)/512.0; mediump float y0 = (floor(texcoord.y * 512.0 + 0.25) + 0.5)/512.0; mediump float y1 = (floor(texcoord.y * 512.0 - 0.25) + 0.5)/512.0; mediump vec2 modifiedCoord0 = vec2(texcoord.x, (floor(texcoord.y * 512.0 + 0.25) + 0.5)/512.0); mediump vec2 modifiedCoord1 = vec2(texcoord.x, (floor(texcoord.y * 512.0 - 0.25) + 0.5)/512.0); mediump float ymix = (sin(texcoord.y * 1024.0 * 3.14159265359) + 1.0) * 0.5; mediump float xmix = (sin(texcoord.x * 1024.0 * 3.14159265359) + 1.0) * 0.5; gl_FragColor = mix( mix( texture2D(textures[1], vec2(x0, y1)), texture2D(textures[0], vec2(x0, y0)), ymix ), mix( texture2D(textures[1], vec2(x1, y1)), texture2D(textures[0], vec2(x1, y0)), ymix ), xmix ); }