You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In game engines there's always complex shader system with includes. I've found two issues that make it hard to use this awesome extension:
Extension compiles shader somewhere in the temp directory and sets working directory to temp directory so shader compiler doesn't see local includes
Extension settings are global which make it hard to use extension with multiple solutions because the only way to specify additional include directories is to pass them via compiler arguments.
Consider the following example: we have a game project which contains a game engine submodule which has a plugin\extension system. Game engine, game itself and engine extensions can have their own shaders. Game engine, game and extensions have their own solutions. I use relative paths starting woth $(SolutionDir). I have to provide external include directories paths for each solution (e.g. path to some engine global includes) and for each folder which contains shader includes (e.g. we usually have ShaderShared.h include file which cotains uniforms). That's a lot of arguments for compiler.
I suggest to set working directory to the directory where shader is located. That should solve the first issue.
Besides that I suggest to make extension settings per solution or at least to give a way to override settings on solution level.
The text was updated successfully, but these errors were encountered:
Installed product versions
Description
In game engines there's always complex shader system with includes. I've found two issues that make it hard to use this awesome extension:
Consider the following example: we have a game project which contains a game engine submodule which has a plugin\extension system. Game engine, game itself and engine extensions can have their own shaders. Game engine, game and extensions have their own solutions. I use relative paths starting woth $(SolutionDir). I have to provide external include directories paths for each solution (e.g. path to some engine global includes) and for each folder which contains shader includes (e.g. we usually have ShaderShared.h include file which cotains uniforms). That's a lot of arguments for compiler.
I suggest to set working directory to the directory where shader is located. That should solve the first issue.
Besides that I suggest to make extension settings per solution or at least to give a way to override settings on solution level.
The text was updated successfully, but these errors were encountered: