implemented overlays and text, need depth configuration

This commit is contained in:
devZoGok
2021-10-18 19:05:04 +03:00
parent d1f2f9b152
commit 7a8a178a74
26 changed files with 544 additions and 73 deletions
+49 -27
View File
@@ -1,35 +1,58 @@
#include"quad.h"
namespace vb01{
Quad::Quad(Vector3 size) : Mesh(){
Vertex v1,v2,v3,v4,v5,v6;
v1.pos=Vector3(size.x/2,size.y/2,0);
v1.norm=Vector3(0,0,-1);
v1.texCoords=Vector2(1,1);
v2.pos=Vector3(-size.x/2,size.y/2,0);
v2.norm=Vector3(0,0,-1);
v2.texCoords=Vector2(0,1);
v3.pos=Vector3(-size.x/2,-size.y/2,0);
v3.norm=Vector3(0,0,-1);
v3.texCoords=Vector2(0,0);
v4.pos=Vector3(-size.x/2,-size.y/2,0);
v4.norm=Vector3(0,0,-1);
v4.texCoords=Vector2(0,0);
v5.pos=Vector3(size.x/2,-size.y/2,0);
v5.norm=Vector3(0,0,-1);
v5.texCoords=Vector2(1,0);
v6.pos=Vector3(size.x/2,size.y/2,0);
v6.norm=Vector3(0,0,-1);
v6.texCoords=Vector2(1,1);
Quad::Quad(Vector3 size,bool spatial) : Mesh(){
this->spatial=spatial;
this->staticVerts=false;
int numPolyVerts=3;
numTris=2;
indices=new unsigned int[numTris*numPolyVerts];
vertices=new Vertex[numTris*numPolyVerts];
setSize(size);
Mesh::construct();
}
void Quad::setSize(Vector3 size){
this->size=size;
Vertex v1,v2,v3,v4,v5,v6;
if(spatial){
v1.pos=Vector3(size.x/2,size.y/2,0);
v2.pos=Vector3(-size.x/2,size.y/2,0);
v3.pos=Vector3(-size.x/2,-size.y/2,0);
v4.pos=Vector3(-size.x/2,-size.y/2,0);
v5.pos=Vector3(size.x/2,-size.y/2,0);
v6.pos=Vector3(size.x/2,size.y/2,0);
}
else{
v1.pos=Vector3(size.x,0,0);
v2.pos=Vector3(0,0,0);
v3.pos=Vector3(0,size.y,0);
v4.pos=Vector3(0,size.y,0);
v5.pos=Vector3(size.x,size.y,0);
v6.pos=Vector3(size.x,0,0);
}
v1.norm=Vector3(0,0,-1);
v1.texCoords=Vector2(1,1);
v2.norm=Vector3(0,0,-1);
v2.texCoords=Vector2(0,1);
v3.norm=Vector3(0,0,-1);
v3.texCoords=Vector2(0,0);
v4.norm=Vector3(0,0,-1);
v4.texCoords=Vector2(0,0);
v5.norm=Vector3(0,0,-1);
v5.texCoords=Vector2(1,0);
v6.norm=Vector3(0,0,-1);
v6.texCoords=Vector2(1,1);
indices[0]=0;
indices[1]=1;
indices[2]=2;
@@ -37,13 +60,12 @@ namespace vb01{
indices[4]=4;
indices[5]=5;
vertices=new Vertex[numTris*numPolyVerts];
vertices[0]=v1;
vertices[1]=v2;
vertices[2]=v3;
vertices[3]=v4;
vertices[4]=v5;
vertices[5]=v6;
Mesh::construct();
}
}