2020-06-04 15:41:20 -07:00
|
|
|
#version 330
|
|
|
|
|
2021-01-18 16:39:29 -08:00
|
|
|
#INSERT camera_uniform_declarations.glsl
|
2020-06-04 15:41:20 -07:00
|
|
|
|
2023-01-13 21:04:36 -08:00
|
|
|
uniform vec3 light_source_position;
|
|
|
|
uniform vec3 camera_position;
|
|
|
|
uniform float reflectiveness;
|
|
|
|
uniform float gloss;
|
|
|
|
uniform float shadow;
|
|
|
|
|
2020-06-04 15:41:20 -07:00
|
|
|
in vec3 point;
|
2020-06-05 11:12:52 -07:00
|
|
|
in vec3 du_point;
|
|
|
|
in vec3 dv_point;
|
2020-06-04 15:41:20 -07:00
|
|
|
in vec4 color;
|
|
|
|
|
2020-06-05 11:12:52 -07:00
|
|
|
out vec3 xyz_coords;
|
|
|
|
out vec3 v_normal;
|
2020-06-04 15:41:20 -07:00
|
|
|
out vec4 v_color;
|
|
|
|
|
|
|
|
#INSERT position_point_into_frame.glsl
|
|
|
|
#INSERT get_gl_Position.glsl
|
2020-06-05 11:12:52 -07:00
|
|
|
#INSERT get_rotated_surface_unit_normal_vector.glsl
|
2023-01-13 21:04:36 -08:00
|
|
|
#INSERT finalize_color.glsl
|
2020-06-04 15:41:20 -07:00
|
|
|
|
|
|
|
void main(){
|
2020-06-05 11:12:52 -07:00
|
|
|
xyz_coords = position_point_into_frame(point);
|
|
|
|
v_normal = get_rotated_surface_unit_normal_vector(point, du_point, dv_point);
|
|
|
|
v_color = color;
|
2020-06-04 15:41:20 -07:00
|
|
|
gl_Position = get_gl_Position(xyz_coords);
|
2023-01-13 21:04:36 -08:00
|
|
|
|
|
|
|
v_color = finalize_color(
|
|
|
|
color,
|
|
|
|
xyz_coords,
|
|
|
|
v_normal,
|
|
|
|
light_source_position,
|
|
|
|
camera_position,
|
|
|
|
reflectiveness,
|
|
|
|
gloss,
|
|
|
|
shadow
|
|
|
|
);
|
2020-06-04 15:41:20 -07:00
|
|
|
}
|