Easy peasy...that's just Anisotropic glossiness. Just set Anisotropic to 1.0, and then play with the Roughness value to get the look you want. No tutorial needed!
Use a Tangent node to control the axis of the anisotropy:
This is actually quite easy to do:
You can set up the .blend file that Blender default opens.
If I wanted to set up default shaders, I would simply go to the shaders tab, and select the shader I want to be the preset.
Same goes for the textures: go to the textures tab, and select the default Blender texture I would want to be the preset.
Now comes the ...
There are a few methods you could use to achieve this.
The most practical ones are:
Material with a light path node
for a simple scene like yours, I'd recommend the material option as you just need to add 3 nodes to your material setup and you can see the result in the viewport.
In my case the sphere is the refractive object, and the cube is ...
This is trivial to achieve using normal based effects like Fresnel.
You can use it both for the color gradient, and the shader transition from glossy to emission shader.
A layer Weight Node should give you both the Facing socket for the colors and a Fresnel socket for the shaders.
Drive it through a Color Ramp node to control the color progression ...
Somehow, I figured out myself, this is quite a newbie mistake. The generated image should be created with float_buffer.
bpy.data.images.new(IMAGE_NAME, WIDTH, HEIGHT)
bpy.data.images.new(IMAGE_NAME, WIDTH, HEIGHT, alpha=True, float_buffer=True)
One more thing is that the alpha value should be 1.0 since it will be used as masks for other. Ref ...
In comparison to bump maps were black and white are 0% and 100% influence, normal maps work from a blueish base tone.
rgb (128,128,256): is 0% normal map influence
you can use your bw-mask as a factorial in the color-mix-node while using your normal map as one input and the rgb color(128,128,256) as a second input.
Assuming you are using the Eevee renderer.
Go to Properties Editor > Render Properties tab and check Screen Space Reflections as well as Refraction. It brings a glass look to your material.
With Glass object selected go to Shader Editor > Properties panel N switch to Options tab and check Screen Space Refraction.
This enables other objects visible behind ...
Personally, I would create a 'Sea Level' object and extract the Z of its Object Space like this:
Now the Z output is a number; the height above/below sea level in Blender units. You can scale that number, map it to another range, put it through curves or a color ramp.. whatever you need. If you put this pair of nodes into a little group, you can quickly ...
Add a "Texture coordinate" node, and plug the "Generated" output into a "Separate XYZ" node.
The "Z" output will take values between 0 for the lowest point to 1 for the highest point.
Plug it into a "color ramp" or a "Map range" in order to fine-tune the output value.
Unless you have special reasons to use Cycles, I would consider using EEVEE for, at least, the main passes of your work, because of the Shader to RGB node.
The Shader to RGB node, which really can't be implemented in a path-tracer like Cycles without calling the whole renderer twice, allows you to take the actual light-response of a surface, capture that ...
You will have to mix the final shader with a transparent shader and use fresnel node as factor(fac) value, then you can use fresnel's ior value or a color ramp for controlling smoothness and area to be cut.(Switch color ramp to B-spline for smoothest transition you can have.)