GLSLShaderShrinker
Cross-platform tool to Reformat/Remove Dead Code/Optimise/Analyse GLSL shader code.
File Explorer
Download Latest Version (.zip)- CmdOptions.cs
- GLSLProg.cs
- GLSLProgBase.cs
- GLSLProgConstructor.cs
- GLSLRenderer.csproj
- mat2.cs
- mat3.cs
- mat4.cs
- MatN.cs
- ObjectExtensions.cs
- Program.cs
- vec2.cs
- vec3.cs
- vec4.cs
- VectorBase.cs
- VectorBaseSwizzles.cs
- ED209.png
- Export.png
- Hints.png
- Import.png
- Shadertoy.png
- Shrink.png
- InstallScript.iss
- App.ico
- Icon.icns
- ClipboardCommand.cs
- CommandBase.cs
- FileOpenCommand.cs
- FileSaveCommand.cs
- RelayCommand.cs
- IsEqualConverter.cs
- MarkdownToHtmlConverter.cs
- ApplicationExtensions.cs
- TextEditorExtensions.cs
- CombinedDiff.cs
- DiffCollection.cs
- NameAndFileInfo.cs
- Golf (Experimental)
- Maximum
- Reformat
- Remove Dead Code
- FolderProfile.pubxml
- ShadertoyApi.cs
- ShadertoyImporter.cs
- AppViewModel.cs
- MainWindowViewModel.cs
- PresetsViewModel.cs
- AboutDialog.axaml
- AboutDialog.axaml.cs
- CodeEditor.axaml
- CodeEditor.axaml.cs
- CodeLineControl.axaml
- CodeLineControl.axaml.cs
- HintDialog.axaml
- HintDialog.axaml.cs
- MainWindow.axaml
- MainWindow.axaml.cs
- OptionsDialog.axaml
- OptionsDialog.axaml.cs
- App.axaml
- App.axaml.cs
- app.manifest
- DiffCreator.cs
- GLSL.xshd
- packageMe.sh
- Program.cs
- Shrinker.Avalonia.csproj
- TempFile.cs
- UserSettings.cs
- ViewLocator.cs
- Program.cs
- Shrinker.Cmd.csproj
- AssemblyInfo.cs
- AlphaNumToken.cs
- AssignmentOperatorToken.cs
- BackslashToken.cs
- BracketToken.cs
- CommaToken.cs
- CommentTokenBase.cs
- ConstToken.cs
- DotToken.cs
- EqualityOperatorToken.cs
- FloatToken.cs
- IntToken.cs
- INumberToken.cs
- IToken.cs
- KeywordToken.cs
- Lexer.cs
- LineEndToken.cs
- MiscCharacterToken.cs
- MultiLineCommentToken.cs
- PrecisionToken.cs
- PreprocessorDefineToken.cs
- PreprocessorToken.cs
- QuoteToken.cs
- SemicolonToken.cs
- Shrinker.Lexer.csproj
- SingleLineCommentToken.cs
- StringExtensions.cs
- SymbolOperatorToken.cs
- SyntaxErrorException.cs
- Token.cs
- TokenExtensions.cs
- TypeToken.cs
- UniformToken.cs
- VerbatimToken.cs
- WhitespaceToken.cs
- Hinter.AllCallsToFunctionMadeWithSameParamHint.cs
- Hinter.FunctionCalledWithAllConstParamsHint.cs
- Hinter.FunctionHasUnusedParamHint.cs
- Hinter.FunctionToInlineHint.cs
- Hinter.IntroduceDefineHint.cs
- Hinter.InvalidClampHint.cs
- Hinter.NegativePowHint.cs
- Hinter.NegativeSqrtHint.cs
- Hinter.UnusedFunctionHint.cs
- CombineAssignmentWithReturnExtension.cs
- CombineAssignmentWithSingleUseExtension.cs
- CombineConsecutiveAssignmentsExtension.cs
- DetectConstantsExtension.cs
- GolfExtensions.cs
- GroupVariableDeclarationsExtension.cs
- InlineConstantVariablesExtension.cs
- InlineDefinesExtension.cs
- IntroduceMathOperatorsExtension.cs
- JoinVariableDeclarationsWithAssignmentsExtension.cs
- MoveConstantParametersIntoCalledFunctionsExtension.cs
- PerformArithmeticExtension.cs
- RemoveCommentsExtension.cs
- RemoveDisabledCodeExtension.cs
- RemoveUnreachableCodeExtension.cs
- RemoveUnusedFunctionsExtension.cs
- RemoveUnusedVariablesExtension.cs
- ReplaceFunctionCallsWithResultExtension.cs
- SimplifyArithmeticExtension.cs
- SimplifyBranchingExtension.cs
- SimplifyFunctionDeclarationsExtension.cs
- SimplifyFunctionParamsExtension.cs
- SimplifyNumberFormat.cs
- SimplifyVectorConstructorsExtension.cs
- SimplifyVectorReferencesExtension.cs
- TranspileToCSharpExtension.cs
- AssemblyInfo.cs
- BraceSyntaxNode.cs
- CommentSyntaxNodeBase.cs
- ExternalFunctionCallSyntaxNode.cs
- FileSyntaxNode.cs
- ForSyntaxNode.cs
- FunctionCallSyntaxNode.cs
- FunctionDeclarationSyntaxNode.cs
- FunctionDefinitionSyntaxNode.cs
- FunctionDefinitionSyntaxNodeExtensions.cs
- FunctionSyntaxNodeBase.cs
- GenericSyntaxNode.cs
- GlslFunctionCallSyntaxNode.cs
- GroupSyntaxNode.cs
- IfSyntaxNode.cs
- IRenamable.cs
- IStatementSyntaxNode.cs
- MultiLineCommentSyntaxNode.cs
- PragmaDefineSyntaxNode.cs
- PragmaIfSyntaxNode.cs
- ReturnSyntaxNode.cs
- RoundBracketSyntaxNode.cs
- SingleLineCommentSyntaxNode.cs
- SquareBracketSyntaxNode.cs
- StructDefinitionSyntaxNode.cs
- SwitchSyntaxNode.cs
- SyntaxNode.cs
- SyntaxNodeExtensions.cs
- VariableAssignmentSyntaxNode.cs
- VariableDeclarationSyntaxNode.cs
- VerbatimLineSyntaxNode.cs
- CodeHint.cs
- COutputFormatter.cs
- CustomOptions.cs
- GlslOutputFormatter.cs
- Hinter.cs
- HintPriority.cs
- Parser.cs
- Shrinker.cs
- Shrinker.Parser.csproj
- StringBuilderExtensions.cs
- GLSLProg.template
- CmdOptions.cs
- Program.cs
- Shrinker.Transpile.csproj
- SyntaxNodeExtensions.cs
- AssemblyInfo.cs
- Alien.glsl
- Bonzo.glsl
- ED209.glsl
- Moonscape.glsl
- OceanTreasure.glsl
- OneSmallStep.glsl
- PowerStone.glsl
- Start.glsl
- Subway.glsl
- Temple.glsl
- Alien.glsl
- Bonzo.glsl
- ED209.glsl
- Moonscape.glsl
- OceanTreasure.glsl
- OneSmallStep.glsl
- PowerStone.glsl
- Start.glsl
- Subway.glsl
- Temple.glsl
- Alien.glsl
- Bonzo.glsl
- ED209.glsl
- Moonscape.glsl
- OceanTreasure.glsl
- OneSmallStep.glsl
- PowerStone.glsl
- Start.glsl
- Subway.glsl
- Temple.glsl
- CastingTests.cs
- ConstTests.cs
- DeclarationTests.cs
- DefineTests.cs
- FunctionCallTests.cs
- FunctionDefinitionTests.cs
- GlslFunctionTests.cs
- MainVrTests.cs
- MatrixTests.cs
- StructTests.cs
- TranspiledOutputTests.cs
- VectorTests.cs
- FunctionDefinitionSyntaxNodeTests.cs
- GolfTests.cs
- HinterTests.cs
- LexerTests.cs
- OutputFormatterTests.cs
- ParserTests.cs
- PresetsUpdater.cs
- ProjectTests.cs
- ReadmeBuilder.cs
- RealFileTests.cs
- RoundBracketSyntaxNodeTests.cs
- ShrinkerTests.cs
- UnitTestBase.cs
- UnitTests.csproj
- VectorArithmeticTests.cs
- VersionUpdater.cs
- global.json
- Shrinker.sln
- Shrinker.sln.DotSettings
- .gitignore
- LICENSE
- README.md
# Installation Guide
1. Get the code
git clone https://github.com/deanthecoder/GLSLShaderShrinker
Downloads the entire project code from GitHub to your computer.
cd GLSLShaderShrinker
Moves into the project folder you just downloaded.
2. .NET
Medium RecommendedPrerequisites
cd GLSLRenderer
This project's files live in a subfolder, so move into it first.
dotnet restore
Downloads the packages the project depends on.
dotnet run
Builds the project and runs it immediately.
After dotnet run, check the message or address shown in the terminal.
// repository documentation
Was this content helpful?
(0 ratings)
