-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Preprocessor support for Godot shader language #17303
Comments
Related to #11691. |
It would help me a lot for allowing users to toggle features of my terrain plugin, at the moment I am forced to either generate the shader entirely from GDScript (unmanageable), copy/paste dozens of times (waste of time) or add if blocks all over the place (inefficient). |
Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine. The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker. If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance! |
At the moment Godot shader language does not support preprocessor directives. This can make configuring and testing shaders cumberstone, especially when adapting existing GLSL shaders to fit into Godot shader language. File include support should also be part of this, although it has its own issue: #11691 Without include support users have to copy and paste code from shader to shader which is again slow and error prone.
The preprocessor could be designed using the GLSL specification as a guideline, but even the basic functionality (include, if, else, define etc.) would help a lot.
The text was updated successfully, but these errors were encountered: