go mod vendor pins onnxruntime_go v1.12.1, Gio and the rest into v2/vendor so go run/build work without hitting proxy.golang.org (blocked/slow in China). Verified: CGO_ENABLED=1 go build -mod=vendor ./internal/spike and GOOS=windows go build -mod=vendor ./internal/ui both pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
33 lines
818 B
GLSL
33 lines
818 B
GLSL
#version 310 es
|
|
|
|
// SPDX-License-Identifier: Unlicense OR MIT
|
|
|
|
precision mediump float;
|
|
|
|
layout(binding = 0) uniform sampler2D tex;
|
|
|
|
layout(location = 0) in highp vec2 vUV;
|
|
|
|
layout(location = 0) out vec4 fragColor;
|
|
|
|
layout(push_constant) uniform Color {
|
|
// If emulateSRGB is set (!= 0), the input texels are sRGB encoded. We save the
|
|
// conversion step below, at the cost of texture filtering in sRGB space.
|
|
layout(offset=16) float emulateSRGB;
|
|
} _color;
|
|
|
|
vec3 RGBtosRGB(vec3 rgb) {
|
|
bvec3 cutoff = greaterThanEqual(rgb, vec3(0.0031308));
|
|
vec3 below = vec3(12.92)*rgb;
|
|
vec3 above = vec3(1.055)*pow(rgb, vec3(0.41666)) - vec3(0.055);
|
|
return mix(below, above, cutoff);
|
|
}
|
|
|
|
void main() {
|
|
vec4 texel = texture(tex, vUV);
|
|
if (_color.emulateSRGB == 0.0) {
|
|
texel.rgb = RGBtosRGB(texel.rgb);
|
|
}
|
|
fragColor = texel;
|
|
}
|