18 static double grow_time; // s
19 static double flyin_time; // s
20 static double flyin_offset; // m
21 static double rotate_speed; // turns/s
31 glm::mat4 getModelMatrix(double, glm::vec3, glm::vec3, glm::vec3, float);
34 Effect(Type, void (*)(void *) = nullptr, void * = nullptr);
35 Effect(const Effect &) = default;
38 Type type = Type::NONE;
40 void (*on_finish)(void *);
45 int vertices_per_texture;
46 glm::vec3 pos, size, rotation_axis;
48 std::vector<Texture> textures;
52 void vertexConfig(const GLvoid *v, GLsizei s);
53 void render(double dtime, ShaderProgram *);
55 void removeFromScene();
56 void runVertexConfig();
61 GLuint VAO = 0, VBO = 0;
63 GLvoid *vertices = NULL;
64 GLsizeiptr vertices_size;
66 bool vertices_changed;