#version 330 core uniform sampler2DRect colorMap; uniform vec3 camera; uniform vec2 worldSize; uniform vec2 screenSize; out vec4 outColor; void main() { vec2 halfScreen = screenSize/2; vec2 screenPos = gl_FragCoord.xy + camera.xy; vec2 texCoord = (screenPos-halfScreen)/200; vec3 texColor = texelFetch(colorMap, ivec2(screenPos*camera.z)).xyz; outColor = vec4(texColor, 1.0); }