veka0 / lazurite

Unofficial shader development tool for Minecraft: Bedrock Edition with RenderDragon graphics engine
https://veka0.github.io/lazurite/
GNU General Public License v3.0
19 stars 3 forks source link

All platforms from source material are included during compilation if at least one material platform matches one of target platforms from project config #3

Closed veka0 closed 1 month ago

veka0 commented 2 months ago

Because of this there can be a situation where, for example, if source material includes shaders for both ESSL_100 and 310, and you'd want to target just ESSL_100, compiled materials will also include vanilla ESSL_310 shaders, and therefore if device supports 310, it will choose the latest version (310) and have just vanilla graphics.

This was intentional as to not cause any crashes and fallback to vanilla graphics if e.g. you only target 310, but the device doesn't support it, however I didn't consider the fact that there is any benefit to only targeting older platforms (which apparently there is, as ESSL_100 is more performant and doesn't stutter as much as 310 does).

This behavior will be changed in future updates to include in compiled materials only those platforms that were specified in project config.

veka0 commented 1 month ago

Implemented in 0.3.0