Various compilation scripts & patches for Linux programs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

19 lines
1.3 KiB

7 years ago
  1. diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
  2. --- a/dlls/wined3d/glsl_shader.c
  3. +++ b/dlls/wined3d/glsl_shader.c
  4. @@ -2457,9 +2457,13 @@
  5. rel_param0.param_str, reg->idx[0].offset, shader->limits->constant_float,
  6. prefix, rel_param0.param_str, reg->idx[0].offset);
  7. else if (reg->idx[0].offset)
  8. - sprintf(register_name, "%s_c[%s + %u]", prefix, rel_param0.param_str, reg->idx[0].offset);
  9. + sprintf(register_name, "(%s + %u >= 0 && %s + %u < %u ? %s_c[%s + %u] : vec4(0.0))",
  10. + rel_param0.param_str, reg->idx[0].offset, rel_param0.param_str, reg->idx[0].offset,
  11. + shader->limits->constant_float, prefix, rel_param0.param_str, reg->idx[0].offset);
  12. else
  13. - sprintf(register_name, "%s_c[%s]", prefix, rel_param0.param_str);
  14. + sprintf(register_name, "(%s >= 0 && %s < %u ? %s_c[%s] : vec4(0.0))",
  15. + rel_param0.param_str, rel_param0.param_str, shader->limits->constant_float,
  16. + prefix, rel_param0.param_str);
  17. }
  18. else
  19. {