void MyPrimitive::CompileObject(vector3 a_v3Color) { m_uVertexCount = static_cast<int> (m_lVertexPos.size()); for (uint i = 0; i < m_uVertexCount; i++) { AddVertexColor(a_v3Color); } CompleteTriangleInfo(true); CompileOpenGL3X(); }
void PolygonClass::GeneratePoligon(int a_nSides, float a_fSize) { GLfloat theta = 0; for (int i = 0; i < a_nSides; i++) { theta += static_cast<GLfloat>(2*M_PI/a_nSides); AddVertexPosition(vector3( static_cast<GLfloat>(cos(theta)) * a_fSize, static_cast<GLfloat>(sin(theta)) * a_fSize, 0.0f)); AddVertexColor( 1.0f, 1.0f, 1.0f); AddVertexUV( 0.0f, 0.0f); AddVertexNormal(0.0f, 0.0f, 0.0f); AddVertexTangent(0.0f, 0.0f, 0.0f); } InitGPU(); }