mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-14 19:31:25 +00:00
The '%' operator in GLSL is integer-only. Use the full OpFRem expression: (a - b * trunc(a / b)). Bug: tint:1270 Change-Id: I0a969983bef132e004ce456d4a738488e400a61b Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/68760 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
19 lines
325 B
GLSL
19 lines
325 B
GLSL
#version 310 es
|
|
|
|
vec3 tint_float_modulo(vec3 lhs, vec3 rhs) {
|
|
return (lhs - rhs * trunc(lhs / rhs));
|
|
}
|
|
|
|
|
|
void f() {
|
|
vec3 a = vec3(1.0f, 2.0f, 3.0f);
|
|
vec3 b = vec3(4.0f, 5.0f, 6.0f);
|
|
vec3 r = tint_float_modulo(a, b);
|
|
}
|
|
|
|
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
|
void main() {
|
|
f();
|
|
return;
|
|
}
|