rj-action-library/Runtime/Shading/Library/Light.gdshaderinc

24 lines
788 B
Plaintext
Raw Normal View History

2025-05-18 17:11:31 +00:00
// #include "res://addons/rokojori_action_library/Runtime/Shading/Library/Light.gdshaderinc"
2025-09-17 08:25:03 +00:00
float fresnel( vec3 normal, vec3 view, float powerAmount )
2025-01-03 12:09:23 +00:00
{
2025-09-17 08:25:03 +00:00
return pow( ( 1.0 - clamp( dot( normalize( normal ), normalize( view ) ), 0.0, 1.0 ) ), powerAmount );
2025-01-03 12:09:23 +00:00
}
2025-09-17 08:25:03 +00:00
float fresnelNormalized( vec3 normal, vec3 view, float powerAmount )
2025-01-03 12:09:23 +00:00
{
2025-09-17 08:25:03 +00:00
return pow( ( 1.0 - clamp( dot( normal, view ), 0.0, 1.0 ) ), powerAmount);
}
float fresnelNormalizedFromView( vec3 viewNormal, float powerAmount )
{
return pow( 1.0 - max( viewNormal.z, 0.0 ), powerAmount );
}
float fresnelNormalizedFromViewAdvanced( vec3 viewNormal, float zOffset, float powerAmount, float postScale, float postOffset )
{
return pow( 1.0 - clamp( viewNormal.z + zOffset, 0.0, 1.0 ), powerAmount ) * postScale + postOffset;
2025-01-03 12:09:23 +00:00
}