rokojori_action_library/Runtime/VFX/ParticleVFX/Embers/Ember Circle.gdshader

40 lines
951 B
Plaintext

// NOTE: Shader automatically converted from Godot Engine 4.7.stable.mono's StandardMaterial3D.
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_disabled, diffuse_burley, specular_schlick_ggx, unshaded;
uniform float meshScale = 1.0;
void vertex()
{
MODELVIEW_MATRIX = VIEW_MATRIX * mat4(
MAIN_CAM_INV_VIEW_MATRIX[0],
MAIN_CAM_INV_VIEW_MATRIX[1],
MAIN_CAM_INV_VIEW_MATRIX[2],
MODEL_MATRIX[3]);
MODELVIEW_MATRIX = MODELVIEW_MATRIX * mat4(
vec4(length(MODEL_MATRIX[0].xyz) * meshScale, 0.0, 0.0, 0.0),
vec4(0.0, length(MODEL_MATRIX[1].xyz) * meshScale, 0.0, 0.0),
vec4(0.0, 0.0, length(MODEL_MATRIX[2].xyz) * meshScale, 0.0),
vec4(0.0, 0.0, 0.0, 1.0));
MODELVIEW_NORMAL_MATRIX = mat3(MODELVIEW_MATRIX);
}
void fragment()
{
float d = distance( UV, vec2(0.5) );
float a = 1.0 - clamp( d / 0.5, 0.0, 1.0);
ALBEDO = COLOR.rgb;
ALPHA *= a * COLOR.a;
ALPHA_SCISSOR_THRESHOLD = 0.01;
}