Пример #1
0
// Draws sprite with texture passed as parameter
void drawSpriteWithTexture(Sprite * sprite, GLTexture texture) {
    // Binding texture
    glBindBuffer(GL_TEXTURE_2D, texture.id);
    glBindTexture(GL_TEXTURE_2D, texture.id);

    drawVertexes(sprite, 0);

    glBindTexture(GL_TEXTURE_2D, 0);
}
void ObjDrawerPrimitive::drawMesh()
{
    ObjEntity* objMesh = dynamic_cast<ObjEntity*>(mMesh);
    if(objMesh == nullptr)
    {
        printf("error: wrong mesh type in ObjDrawerPrimitive\n");
        return;
    }
    std::vector<Face*>* faceContainer = objMesh->getFaces();
    std::vector<Vertex*>* vertexContainer = objMesh->m_vertexList;
    drawVertexes(vertexContainer);
    for (int i = 0; i < faceContainer->size(); i++)
    {
        Face* face = faceContainer->at(i);
        glBegin(GL_LINE_LOOP);
        for (int vI = 0; vI < face->getVertexNum(); vI++)
        {
            Vertex* ver = vertexContainer->at(face->v.at(vI)-1);
            glVertex3d(ver->x,ver->y,ver->z);
        }
        glEnd();
    }
}
Пример #3
0
void drawSquare(Sprite * sprite, float x, float y, float width, float height, ColorRGBA color) {
    Vec4 uvs = createVec4(0.0f, 0.0f, 1.0f, 1.0f);
    updateSprite(sprite, x, y, width, height, color, &uvs, 0x0);
    drawVertexes(sprite, DRAW_OUTLINE);
}