GPencil: Use common_view_lib.glsl
This commit is contained in:
parent
0d8ab0eac6
commit
7f87e6e18f
|
@ -61,6 +61,8 @@ extern char datatoc_gpencil_edit_point_geom_glsl[];
|
|||
extern char datatoc_gpencil_edit_point_frag_glsl[];
|
||||
extern char datatoc_gpencil_blend_frag_glsl[];
|
||||
|
||||
extern char datatoc_common_view_lib_glsl[];
|
||||
|
||||
/* *********** STATIC *********** */
|
||||
static GPENCIL_e_data e_data = {NULL}; /* Engine data */
|
||||
|
||||
|
@ -167,31 +169,37 @@ static void GPENCIL_create_shaders(void)
|
|||
{
|
||||
/* normal fill shader */
|
||||
if (!e_data.gpencil_fill_sh) {
|
||||
e_data.gpencil_fill_sh = DRW_shader_create(
|
||||
datatoc_gpencil_fill_vert_glsl, NULL, datatoc_gpencil_fill_frag_glsl, NULL);
|
||||
e_data.gpencil_fill_sh = DRW_shader_create_with_lib(datatoc_gpencil_fill_vert_glsl,
|
||||
NULL,
|
||||
datatoc_gpencil_fill_frag_glsl,
|
||||
datatoc_common_view_lib_glsl,
|
||||
NULL);
|
||||
}
|
||||
|
||||
/* normal stroke shader using geometry to display lines (line mode) */
|
||||
if (!e_data.gpencil_stroke_sh) {
|
||||
e_data.gpencil_stroke_sh = DRW_shader_create(datatoc_gpencil_stroke_vert_glsl,
|
||||
datatoc_gpencil_stroke_geom_glsl,
|
||||
datatoc_gpencil_stroke_frag_glsl,
|
||||
NULL);
|
||||
e_data.gpencil_stroke_sh = DRW_shader_create_with_lib(datatoc_gpencil_stroke_vert_glsl,
|
||||
datatoc_gpencil_stroke_geom_glsl,
|
||||
datatoc_gpencil_stroke_frag_glsl,
|
||||
datatoc_common_view_lib_glsl,
|
||||
NULL);
|
||||
}
|
||||
|
||||
/* dot/rectangle mode for normal strokes using geometry */
|
||||
if (!e_data.gpencil_point_sh) {
|
||||
e_data.gpencil_point_sh = DRW_shader_create(datatoc_gpencil_point_vert_glsl,
|
||||
datatoc_gpencil_point_geom_glsl,
|
||||
datatoc_gpencil_point_frag_glsl,
|
||||
NULL);
|
||||
e_data.gpencil_point_sh = DRW_shader_create_with_lib(datatoc_gpencil_point_vert_glsl,
|
||||
datatoc_gpencil_point_geom_glsl,
|
||||
datatoc_gpencil_point_frag_glsl,
|
||||
datatoc_common_view_lib_glsl,
|
||||
NULL);
|
||||
}
|
||||
/* used for edit points or strokes with one point only */
|
||||
if (!e_data.gpencil_edit_point_sh) {
|
||||
e_data.gpencil_edit_point_sh = DRW_shader_create(datatoc_gpencil_edit_point_vert_glsl,
|
||||
datatoc_gpencil_edit_point_geom_glsl,
|
||||
datatoc_gpencil_edit_point_frag_glsl,
|
||||
NULL);
|
||||
e_data.gpencil_edit_point_sh = DRW_shader_create_with_lib(datatoc_gpencil_edit_point_vert_glsl,
|
||||
datatoc_gpencil_edit_point_geom_glsl,
|
||||
datatoc_gpencil_edit_point_frag_glsl,
|
||||
datatoc_common_view_lib_glsl,
|
||||
NULL);
|
||||
}
|
||||
|
||||
/* used for edit lines for edit modes */
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform vec2 Viewport;
|
||||
|
||||
layout(points) in;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform mat4 ModelMatrix;
|
||||
|
||||
in vec3 pos;
|
||||
in vec4 color;
|
||||
|
@ -9,7 +9,7 @@ out float finalThickness;
|
|||
|
||||
void main()
|
||||
{
|
||||
gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
|
||||
gl_Position = point_object_to_ndc(pos);
|
||||
finalColor = color;
|
||||
finalThickness = size;
|
||||
}
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform mat4 ModelMatrix;
|
||||
|
||||
in vec3 pos;
|
||||
in vec4 color;
|
||||
in vec2 texCoord;
|
||||
|
||||
out vec4 finalColor;
|
||||
out vec2 texCoord_interp;
|
||||
|
||||
void main(void)
|
||||
{
|
||||
gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
|
||||
gl_Position = point_object_to_ndc(pos);
|
||||
finalColor = color;
|
||||
texCoord_interp = texCoord;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform vec2 Viewport;
|
||||
uniform int xraymode;
|
||||
uniform int use_follow_path;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform mat4 ProjectionMatrix;
|
||||
|
||||
uniform mat4 ModelMatrix;
|
||||
|
||||
uniform float pixsize; /* rv3d->pixsize */
|
||||
uniform int keep_size;
|
||||
|
@ -32,8 +32,8 @@ float defaultpixsize = pixsize * (1000.0 / pixfactor);
|
|||
|
||||
void main()
|
||||
{
|
||||
gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
|
||||
finalprev_pos = ModelViewProjectionMatrix * vec4(prev_pos, 1.0);
|
||||
gl_Position = point_object_to_ndc(pos);
|
||||
finalprev_pos = point_object_to_ndc(prev_pos);
|
||||
finalColor = color;
|
||||
|
||||
if (keep_size == TRUE) {
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform vec2 Viewport;
|
||||
uniform int xraymode;
|
||||
uniform int color_type;
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
uniform mat4 ModelViewProjectionMatrix;
|
||||
uniform mat4 ProjectionMatrix;
|
||||
uniform mat4 ModelMatrix;
|
||||
|
||||
uniform float pixsize; /* rv3d->pixsize */
|
||||
uniform int keep_size;
|
||||
|
@ -30,7 +29,7 @@ float defaultpixsize = pixsize * (1000.0 / pixfactor);
|
|||
|
||||
void main(void)
|
||||
{
|
||||
gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
|
||||
gl_Position = point_object_to_ndc(pos);
|
||||
finalColor = color;
|
||||
|
||||
if (keep_size == TRUE) {
|
||||
|
|
Loading…
Reference in New Issue