Idea: Iridescent shader

Published April 30, 2018
Advertisement

In our brainstorming, we had the idea of a type of item dropped by enemies that will have a very particular look: it will reproduce bismuth and, in particular, its iridescence.

What is Iridescence?

Remember CD? The under side of CDs had some trippy colors that changed based on which angle you're looking at.

CD

That type of effect is called iridescence.

Many other things has that kind of effect. Things like bubbles, some metals and even some bugs (especially beetles).

Wikipedia defines iridescence as:

Quote

Iridescence (also known as goniochromism) is the phenomenon of certain surfaces that appear to gradually change colour as the angle of view or the angle of illumination changes. Examples of iridescence include soap bubbles, butterfly wings and seashells, as well as certain minerals. It is often created by structural coloration (microstructures that interfere with light).

In order to reproduce the visual qualities of bismuth, we must find how to recreate this effect in a shader.

One of my hypotheses is that we could do it with the normals and the viewing angle. I'm not an expert in shader writing but I'm sure that's possible ...

Previous Entry Dynamic color palettes
Next Entry GUI Mockup 2
0 likes 4 comments

Comments

swiftcoder

There's a great shader tutorial series on iridescence, if you are looking for inspiration. I'll link you right to the one on CD-ROMS.

April 30, 2018 04:45 PM
StarjumpDev

I've done it in Blender. You can also do it in UE4, but it's not great. Substance Designer might have a solution. I think I saw someone doing it in Unity.

Search online and you'll also find solutions for both GLSL and HLSL.

May 02, 2018 02:09 AM
jb-dev
On 4/30/2018 at 12:45 PM, swiftcoder said:

There's a great shader tutorial series on iridescence, if you are looking for inspiration. I'll link you right to the one on CD-ROMS.

I've tried the link and tried to translate the Unity shader into GLSL and it did this:
iridescent.png.ad7b35270d5ca40fd4e7d9d4c852d6ee.png It sure looks pretty...

May 02, 2018 09:44 PM
bdubreuil

You forgot to mention that it should be a vertex shader, not a fragment shader.

Also, I love doing shaders ;)  wink wink Let me do some shaders too.

May 03, 2018 02:34 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement