Пример #1
0
RigidBody* RigidBody::clone() {
    RigidBody* obj = new RigidBody();
    obj->setPosition(this->position);
    for (std::vector<Object*>::iterator it = this->childs.begin(); it != this->childs.end(); ++it) {
        obj->addChild(*it);
    }
    this->bindVBO();

    obj->setRotation(this->rotation);
    obj->setVAO(this->vao);
    obj->setShader(this->shader);
    obj->setVertexCounter(this->vertexCounter);

    obj->setVertices(this->g_vp);
    obj->setVPVBO(this->vp_vbo);
    obj->setBoundingBox(this->vbo_vertices_bounding_box,
                        this->ibo_elements,
                        this->sizeBoundingBox,
                        this->centerBoundingBox,
                        this->minBoundingBox,
                        this->maxBoundingBox);

    return obj;

}