more possible errors

This commit is contained in:
Maxime Gimeno 2020-10-06 10:20:05 +02:00
parent 10739ba980
commit e4362c88a7
3 changed files with 47 additions and 47 deletions

View File

@ -1,13 +1,13 @@
varying highp vec4 color;
varying highp vec4 fP;
varying highp vec3 fN;
uniform highp vec4 light_pos;
uniform highp vec4 light_diff;
uniform highp vec4 light_spec;
uniform highp vec4 light_amb;
varying highp vec4 fP;
varying highp vec3 fN;
uniform highp vec4 light_pos;
uniform highp vec4 light_diff;
uniform highp vec4 light_spec;
uniform highp vec4 light_amb;
uniform highp float spec_power ;
uniform int is_two_side;
uniform int is_two_side;
uniform bool is_selected;
uniform highp float near;
uniform highp float far;
@ -32,29 +32,29 @@ void main(void) {
gl_FragColor = vec4(d,d,d,1.0);
else
{
if(color.w<0)
if(color.w<0.)
{
highp vec4 my_color = vec4(color.xyz, 1.);
highp vec3 L = light_pos.xyz - fP.xyz;
highp vec3 V = -fP.xyz;
highp vec3 N;
highp vec3 L = light_pos.xyz - fP.xyz;
highp vec3 V = -fP.xyz;
highp vec3 N;
if(fN == vec3(0.0,0.0,0.0))
{
gl_FragColor = my_color;
return;
}
else
N = normalize(fN);
L = normalize(L);
V = normalize(V);
highp vec3 R = reflect(-L, N);
else
N = normalize(fN);
L = normalize(L);
V = normalize(V);
highp vec3 R = reflect(-L, N);
highp vec4 diffuse;
if(is_two_side == 1)
diffuse = abs(dot(N,L)) * light_diff * my_color;
else
diffuse = max(dot(N,L), 0.0) * light_diff * my_color;
highp vec4 specular = pow(max(dot(R,V), 0.0), spec_power) * light_spec;
if(is_two_side == 1)
diffuse = abs(dot(N,L)) * light_diff * my_color;
else
diffuse = max(dot(N,L), 0.0) * light_diff * my_color;
highp vec4 specular = pow(max(dot(R,V), 0.0), spec_power) * light_spec;
highp vec4 ret_color = vec4((my_color*light_amb).xyz + diffuse.xyz + specular.xyz,1);
if(is_selected)
gl_FragColor = vec4(ret_color.r+70.0/255.0, ret_color.g+70.0/255.0, ret_color.b+70.0/255.0, alpha);

View File

@ -1,4 +1,4 @@
//#version 100
//#version 100
attribute highp vec4 vertex;
attribute highp vec3 normals;
attribute highp vec3 colors;
@ -7,33 +7,33 @@ uniform highp mat4 mvp_matrix;
uniform highp mat4 mv_matrix;
uniform highp vec4 cutplane;
uniform highp float shrink_factor;
varying highp vec4 fP;
varying highp vec3 fN;
varying highp vec4 color;
varying highp vec4 fP;
varying highp vec3 fN;
varying highp vec4 color;
uniform highp float point_size;
void main(void)
{
gl_PointSize = point_size;
color = vec4(colors, vertex.x * cutplane.x + vertex.y * cutplane.y + vertex.z * cutplane.z + cutplane.w);
fP = mv_matrix * vertex;
fP = mv_matrix * vertex;
mat3 mv_matrix_3;
mv_matrix_3[0] = mv_matrix[0].xyz;
mv_matrix_3[1] = mv_matrix[1].xyz;
mv_matrix_3[2] = mv_matrix[2].xyz;
fN = mv_matrix_3* normals;
highp mat4 transOB = mat4(1, 0, 0, 0, // first column
0, 1, 0, 0, // second column
0, 0, 1, 0, // third column
mat3 mv_matrix_3;
mv_matrix_3[0] = mv_matrix[0].xyz;
mv_matrix_3[1] = mv_matrix[1].xyz;
mv_matrix_3[2] = mv_matrix[2].xyz;
fN = mv_matrix_3* normals;
highp mat4 transOB = mat4(1., 0., 0., 0., // first column
0., 1., 0., 0., // second column
0., 0., 1., 0., // third column
center.x, center.y, center.z, 1); // fourth column
highp mat4 transBO = mat4(1, 0, 0, 0, // first column
0, 1, 0, 0, // second column
0, 0, 1, 0, // third column
highp mat4 transBO = mat4(1., 0., 0., 0., // first column
0., 1., 0., 0., // second column
0., 0., 1., 0., // third column
-center.x, -center.y, -center.z, 1); // fourth column
highp mat4 scaling = mat4(shrink_factor, 0, 0, 0,
0, shrink_factor, 0, 0,
0, 0, shrink_factor, 0,
0, 0, 0, 1);
highp mat4 scaling = mat4(shrink_factor, 0., 0., 0.,
0., shrink_factor, 0., 0.,
0., 0., shrink_factor, 0.,
0., 0., 0., 1.);
gl_Position = mvp_matrix *transOB * scaling * transBO * vertex;
}

View File

@ -1,9 +1,9 @@
varying highp vec4 color;
void main(void)
{
if(color.w<0)
gl_FragColor = vec4(0,0,0,1.0);
void main(void)
{
if(color.w<0.)
gl_FragColor = vec4(0.,0.,0.,1.0);
else
discard;
}
}