Hacker News new | ask | show | jobs
by laurentlb 400 days ago
Most transformations don't change the code that's executed.

  const float x = sin(2);
  const float y = 2;
If you define these two consts, we can inline y everywhere it's used. But by default, we don't inline x as it would lead to more work at runtime (maybe it doesn't matter for sin, but other function calls can be expensive). If you notice performance issues, please file a bug.

Renaming uniforms is optional (there's a flag). If you use C++, you can generate a .h header file that contains both the minified shader and macros that tell you how they've been renamed.

So Shader Minifier will generate macros like:

  # define VAR_time "f"
to tell you that "time" is now called "f" and you can use VAR_time in your C++ code.