13 .smooth(Type::VEC4,
"final_color")
14 .smooth(Type::FLOAT,
"clip");
17 .no_perspective(Type::FLOAT,
"smoothline");
20 .define(
"SMOOTH_WIDTH",
"1.0")
21 .push_constant(Type::MAT4,
"ModelViewProjectionMatrix")
22 .push_constant(Type::VEC2,
"viewportSize")
23 .push_constant(Type::FLOAT,
"lineWidth")
24 .push_constant(Type::BOOL,
"lineSmooth")
25 .vertex_in(0, Type::VEC3,
"pos")
26 .vertex_out(gpu_shader_3D_polyline_iface)
27 .vertex_out(gpu_shader_3D_polyline_noperspective_iface)
28 .geometry_layout(PrimitiveIn::LINES, PrimitiveOut::TRIANGLE_STRIP, 4)
29 .geometry_out(gpu_shader_3D_polyline_iface)
30 .geometry_out(gpu_shader_3D_polyline_noperspective_iface)
31 .fragment_out(0, Type::VEC4,
"fragColor")
32 .vertex_source(
"gpu_shader_3D_polyline_vert.glsl")
33 .geometry_source(
"gpu_shader_3D_polyline_geom.glsl")
34 .fragment_source(
"gpu_shader_3D_polyline_frag.glsl")
35 .additional_info(
"gpu_srgb_to_framebuffer_space");
38 .define(
"SMOOTH_WIDTH",
"1.0")
39 .push_constant(Type::MAT4,
"ModelViewProjectionMatrix")
40 .push_constant(Type::VEC2,
"viewportSize")
41 .push_constant(Type::FLOAT,
"lineWidth")
42 .push_constant(Type::BOOL,
"lineSmooth")
43 .vertex_in(0, Type::VEC3,
"pos")
44 .vertex_out(gpu_shader_3D_polyline_iface)
45 .vertex_out(gpu_shader_3D_polyline_noperspective_iface)
46 .fragment_out(0, Type::VEC4,
"fragColor")
47 .vertex_source(
"gpu_shader_3D_polyline_vert_no_geom.glsl")
48 .fragment_source(
"gpu_shader_3D_polyline_frag.glsl")
49 .additional_info(
"gpu_srgb_to_framebuffer_space");
52 .do_static_compilation(
true)
54 .push_constant(Type::VEC4,
"color")
55 .additional_info(
"gpu_shader_3D_polyline");
58 .metal_backend_only(
true)
59 .do_static_compilation(
true)
61 .push_constant(Type::VEC4,
"color")
62 .additional_info(
"gpu_shader_3D_polyline_no_geom");
65 .do_static_compilation(
true)
67 .push_constant(Type::MAT4,
"ModelMatrix")
68 .push_constant(Type::VEC4,
"ClipPlane")
70 .additional_info(
"gpu_shader_3D_polyline_uniform_color");
73 .metal_backend_only(
true)
74 .do_static_compilation(
true)
76 .push_constant(Type::MAT4,
"ModelMatrix")
77 .push_constant(Type::VEC4,
"ClipPlane")
79 .additional_info(
"gpu_shader_3D_polyline_uniform_color_no_geom");
82 .do_static_compilation(
true)
84 .vertex_in(1, Type::VEC4,
"color")
85 .additional_info(
"gpu_shader_3D_polyline");
88 .metal_backend_only(
true)
89 .do_static_compilation(
true)
91 .vertex_in(1, Type::VEC4,
"color")
92 .additional_info(
"gpu_shader_3D_polyline_no_geom");
95 .do_static_compilation(
true)
97 .vertex_in(1, Type::VEC4,
"color")
98 .additional_info(
"gpu_shader_3D_polyline");
101 .metal_backend_only(
true)
102 .do_static_compilation(
true)
104 .vertex_in(1, Type::VEC4,
"color")
105 .additional_info(
"gpu_shader_3D_polyline_no_geom");
#define GPU_SHADER_INTERFACE_INFO(_interface, _inst_name)
#define GPU_SHADER_CREATE_INFO(_info)