rendering classes refactoring

This commit is contained in:
devZoGok
2021-10-19 19:06:41 +03:00
parent 217061e67b
commit 8f49bd1125
25 changed files with 1028 additions and 951 deletions
+15 -19
View File
@@ -1,8 +1,8 @@
#version 330 core
layout (location=0) in vec3 aPos;
layout (location=1) in vec2 aTexCoords;
layout (location=2) in mat4 aInstancedModel;
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec2 aTexCoords;
layout (location = 2) in mat4 aInstancedModel;
out vec2 texCoords;
@@ -10,27 +10,23 @@ flat out int id;
uniform mat4 proj;
uniform mat4 view;
//uniform mat4 model[4];
uniform float lifePercentage[500];
uniform vec3 trans[500];
//uniform vec2 size[500];
uniform vec2 startSize;
uniform vec2 endSize;
void main(){
vec3 camLeft=vec3(view[0][0],view[1][0],view[2][0]);
vec3 camUp=vec3(view[0][1],view[1][1],view[2][1]);
vec3 camLeft = vec3(view[0][0], view[1][0], view[2][0]);
vec3 camUp = vec3(view[0][1], view[1][1], view[2][1]);
id=gl_InstanceID;
vec2 s=startSize+(endSize-startSize)*lifePercentage[id];
vec3 v=camLeft*s.x*aPos.x+camUp*s.y*aPos.y;
mat4 model=aInstancedModel;
model[3][0]=trans[gl_InstanceID].x;
model[3][1]=trans[gl_InstanceID].y;
model[3][2]=trans[gl_InstanceID].z;
/*
*/
gl_Position=proj*view*model*vec4(v,1);
//gl_Position=proj*view*model[gl_InstanceID]*vec4(s.x*aPos.x,s.y*aPos.y,aPos.z,1);
texCoords=aTexCoords;
id = gl_InstanceID;
vec2 s = startSize + (endSize - startSize) * lifePercentage[id];
vec3 v = camLeft * s.x * aPos.x+camUp * s.y * aPos.y;
mat4 model = aInstancedModel;
model[3][0] = trans[gl_InstanceID].x;
model[3][1] = trans[gl_InstanceID].y;
model[3][2] = trans[gl_InstanceID].z;
gl_Position = proj * view * model * vec4(v, 1);
texCoords = aTexCoords;
}