Releases: deanthecoder/GLSLShaderShrinker
GLSL Shader Shrinker v0.10-alpha
Features:
Start offering post-optimizing code 'hints'.
- Report unused functions.
- Report functions only used once (which can be inlined).
- Detect unused function parameters.
- Suggest GOLFing common expression using #define.
GLSL Shader Shrinker v0.9-alpha
A replacement installer - v0.8.0.0 was actually a build from v0.1.0.0 !
GLSL Shader Shrinker v0.8-alpha
Bug Fixes:
Include more DLLs in the installer, hopefully resolving problems running the app on a wider range of machines.
Note: A runtime prompt will be given if the app detects the .Net 5.0 runtimes are not installed.
GLSL Shader Shrinker v0.7-alpha
Features:
Added support for the '|=' operator.
Unnecessary vector copy constructors are now removed.
Better compression by not grouping variable declarations where the name is longer than the type.
Bug Fixes:
Character count problem causes by '*//' not being recognized as a value C-style comment terminator.
Prevent multi-processing the same variable multiple times when making consts.
Not safe to inline an assignment with an 'if' condition if the 'if' isn't at the same level.
Be extra careful when merging two consecutive assignments of the same variable.
Ensure pragma expressions always start on their own line.
Occasional bug joining assignment with existing declaration, as I was checking types incorrectly (Doh).
Other:
More sample files added to the unit test suite.
GLSL Shader Shrinker v0.6-alpha
Features:
Improved const variable detection.
Precalculate constant 'abs(...)' and 'sqrt(...)' expressions.
Octal numbers are now supported.
Variable assignment can now be merged with a following 'if' condition, if not used elsewhere.
Extend 'perform arithmetic' to include vector math.
Bug Fixes:
Unnecessary round brackets now removed when passing parameters to functions.
Prevent removing an assignment when the RHS has a function call which (directly or indirectly) modifies a global variable.
GLSL Shader Shrinker v0.5-alpha
Features:
Support variable assignments to a multi-dimensional array.
Support Inlined struct creation of arrays.
Bug Fixes:
Prevent array assignments from from being inlined incorrectly.
Incorrect exponent power when simplifying numbers.
Formatting error caused by braced expression with comment folded onto single line.
GLSL Shader Shrinker v0.4-alpha
Features:
Installer version number auto-updates based on app version.
Consecutive assignments of the same vector component can now be combined.
Fractional floats can now be simplified using the 'e' format.
Simplify floats preceded with unnecessary zeros, and extend to include integers.
Bug Fixes:
Unused variables now removed after joining consecutive assignments.
Extra braces were being added if comment was places immediately after 'for'.
Prevent infinite loop when multiple declarations jostle for position alongside the same assignment.
Other:
Improved 'for' loop formatting.
Add Twitter link to the ReadMe.
Write a more sensible 'shrinkage' message in the output code.
GLSL Shader Shrinker v0.3-alpha
Bug fixes:
Fix: Formatting (Missing space character) between 'highp' and
Fix: Not safe to inline an assignment with use on the next line if the assigned variable is defined in an outer scope.
Fix: Crash when checking to see if 'a[0] = 0' has arithmetic to perform.
GLSL Shader Shrinker v0.2-alpha
Bug fix for vector construction with insufficient components.
GLSL Shader Shrinker v0.1-alpha
First public ALPHA release of the application.