All Projects → pixeljetstream → glslc

pixeljetstream / glslc

Licence: other
Simple GLSL compilation checker that uses the display driver

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to glslc

DuEngine
An efficient interactive C++ renderer for ShaderToy-alike demos with 2D/3D/CubeMap/Video/Camera/LightField/Volume textures. (Partially used in my I3D 2018 papers)
Stars: ✭ 62 (+158.33%)
Mutual labels:  glsl
TD-Flow-ABS
Real-time Flow-based Image and Video Abstraction in TouchDesigner.
Stars: ✭ 72 (+200%)
Mutual labels:  glsl
three-noise
Simple gradient noise library for use with Three.js. Now with fBm!
Stars: ✭ 31 (+29.17%)
Mutual labels:  glsl
AlizaMS
DICOM Viewer
Stars: ✭ 144 (+500%)
Mutual labels:  glsl
shadertoy-to-video-with-FBO
Render a ShaderToy script directly to a video file. (added FrameBuffers support)
Stars: ✭ 26 (+8.33%)
Mutual labels:  glsl
cellular-automata-explorer
(WIP) An interactive web app for exploring cellular automata.
Stars: ✭ 18 (-25%)
Mutual labels:  glsl
glsl-cos-palette
glsl function for making cosine palettes
Stars: ✭ 26 (+8.33%)
Mutual labels:  glsl
shaderview
A GLSL shader development tool for the LÖVE game framework.
Stars: ✭ 22 (-8.33%)
Mutual labels:  glsl
linter-glsl
Atom package that lints GLSL shaders on the fly.
Stars: ✭ 15 (-37.5%)
Mutual labels:  glsl
hwoa-rang-gl
WebGL Library
Stars: ✭ 21 (-12.5%)
Mutual labels:  glsl
glsl-layout
No description or website provided.
Stars: ✭ 24 (+0%)
Mutual labels:  glsl
3D interactive graphics rendering engine
Develop a 3D interactive graphics rendering engine
Stars: ✭ 31 (+29.17%)
Mutual labels:  glsl
ShaderWriter
Library used to write shaders from C++, and export them in either GLSL, HLSL or SPIR-V.
Stars: ✭ 171 (+612.5%)
Mutual labels:  glsl
GLSL-howto
random code that I use/write
Stars: ✭ 18 (-25%)
Mutual labels:  glsl
minimal gl
PC 4K Intro Editor
Stars: ✭ 36 (+50%)
Mutual labels:  glsl
minigdx
Minimalist Game Framework using Kotlin Multiplatform
Stars: ✭ 136 (+466.67%)
Mutual labels:  glsl
radar
OpenGL 4 PBR engine
Stars: ✭ 25 (+4.17%)
Mutual labels:  glsl
WaterColor
openframeworks parametric shader effect watercolor
Stars: ✭ 54 (+125%)
Mutual labels:  glsl
ada
A general porpose OpenGL app library
Stars: ✭ 105 (+337.5%)
Mutual labels:  glsl
GLGrassRenderer
OpenGL Grass Renderer
Stars: ✭ 63 (+162.5%)
Mutual labels:  glsl

glslc

Simple GLSL compilation checker (uses display driver)

(c) 2013-2015 Christoph Kubisch: [email protected] http://glslc.luxinia.de

  • Basic commandline compiler for GLSL
  • Creates an invisible dummy window and evokes the GL driver for compiling.
  • Can dump pseudo assembly files for NVIDIA
  • Basic #include handling independent of GL_ARB_shading_language_include support
  • Best used with GLSL editing capabilites of the https://github.com/pkulchenko/ZeroBraneStudio/ IDE
  • Install the zbstudio-graphicscodepack
  • Set the GLSLC_BIN_PATH environment variable to where your glslc.exe is located (excluding the exe name). Alternatively add "path.glslcbin = [[path to glslc.exe]] " to your "cfg/user.lua" file. Upon restart of zbstudio, you should now see the GLSL top menu.
  • 'Compile from .ext' derives the shader profile type from the filename, for example a ".v" within the filename causes the file to be compiled as vertex shader. The tool tests in following order: ".v",".f",".g",".t * c",".t * e",".c".
  • 'Link multiple .ext' will try to compile and link multiple shader files that only differ in their file extension.

glslc inside zbstudio

Examples

glslc -o output.txt -profile vertex myvertex.vs

glslc -glslversion "430 core" -o output.txt -DFOO -vertex myvertex.vs -fragment myfrag.fs

glslc -glslversion "430 core" -o output.txt -DFOO -SD_VERTEX_ -vertex myprogram.glsl -SD_FRAGMENT_ -fragment myprogram.glsl

Usage

glslc [options] filename

Mandatory options

-profilename

or

-profile profilename

Profilename can be: vertex, fragment, geometry, tessevaluation, tesscontrol, compute and must be specified prior each file name.

Other options:

-glslversion "string"

Prepends "#version string\n" prior macros and shader and puts // in front of #version find in shaderfile.

-separable

Will mark the program separable (default is false) prior attaching and linking, if GL_ARB_separate_shader_objects is supported.

-o outputfilename

NVIDIA drivers can output pseudo assembly file based on NV_program

-P preprocessfilename

stores the pre-processed file for the next specified shader

-E

Pre-processes files only, no GL context creation. Outputs to stdout unless -P was specified.

-DMACRO[=VALUE]

Prepends '#define MACRO VALUE' to all shaders. If VALUE is not specified it defaults to 1.

-SDMACRO[=VALUE]

Prepends '#define MACRO VALUE' to next shader. If VALUE is not specified it defaults to 1. All shader defines are cleared with each shader file.

Building

Currently Windows and Linux are supported. For Visual Studio 2008 a solution exists in /buildvc9. The project is just the src/glsl.cpp compiled as console application.

Thanks to Alan Chambers for Linux support.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].