With the web becoming more powerful, more and more web applications are showing up, with various results. ShaderFrog is a small web tool that lets you create shaders out of some pre-defined shaders.
Basically, you can pull pre-defined shaders from a library, combine or blend them, to fit your needs, and then export the result to be used in the Unity game engine.
When you launch ShaderFrog, you are given the option to create your shader visually, or by using code. Creating your shader with code is exactly what you would expect: you are given an area where you write your code, and you see the result on a panel next to it.
Creating your shader with visual tools is different. If you have used Maya’s Hypershade, or Unity’s Shadergraph, then you know what to expect from this tool. Basically you have to add nodes and drag presets from your library, and combine all of them until you get the result you want.
I have to admit that the tool is somewhat limited in what it allows you to do. Unlike off-line shader creation tools (like, for example, the now discontinued ShaderForge), ShaderFrog only offers a limited set of math nodes that include add, multiply and divide functions, as well as others like duplicate, invert color. Everything else must be done using the content found in the library.
The library offers a wide variety of shaders, though, and that means you can find a lot of different ones that you can use to combine into new looks.
When you select one of the shaders you’ve placed on your grid, the bottom panel shows different parameters that can be modified to change the look of your shader. This nice feature will let you tweak your materials to get different results, and fit your needs.
Apparently, in the near future ShaderFrog will have an online store where artists can sell the shaders they create. I think this is an interesting idea, since it will allow people to get their hands on a (hopefully) wide variety of shaders that they can use for their games.
The tool is free to use, and, if you want to save your shaders (on their servers) all you have to do is create a free account so the shaders are linked to it. If you need the shaders to not be available to anyone else (because they are going to be used in one of your projects, or any other special reason), you can save your shaders as private or unlisted to prevent others from access it.
You can also download the shader as Unity GLSL, or Unity Shaderlab, as well as Three.js or iOS shader (I am not familiar with these last two). However, you are required to have a Pro account to download the exported shader in any format other than UnityGLSL or Three.js. The Pro account costs $9.99 a month.
Unfortunately, I was not able to get the UnityGLSL exporter to export my shader. Every time I tried, I was greeted with a JS file that simply said the export had failed.
ShaderFrog is an interesting tool that has the potential to be really useful. In its current state, though, I think it’s lacking, not only due to the limited amount of node options available (that are compensated with the amount of shader presets found in the library), but also due to the problems with its exporter. However, you should still keep your eye on this tool.
Visit ShaderFrog for more information: https://shaderfrog.com/