void cube::set_pl_uniforms() const { int i = 0; auto&& point_lights = get_current_scene().get_point_lights(); glUniform1i(cube_uniforms.num_point_lights, static_cast<int>(point_lights.size())); for (auto & pl : point_lights) { pl->bind(cube_shader.get(), i); ++i; } }
int main(int argc, char **argv) { int ixs=832, iys=624; int player_number = 1; scene *current_scene = NULL; srand(time(NULL)); if(argc == 2 && (!strcmp(argv[1], "--fullscreen"))) { fullscreen_mode = 1; ixs = 1024; iys = 768; } if(!init_renderer(ixs, iys)) { fprintf(stderr, "Renderer failed to initialize!\n"); exit(1); } init_scenes(); while(!user_quit) { current_scene = get_current_scene(); if(!render_scene(current_scene, player_number)) { fprintf(stderr, "Render of scene failed!\n"); exit(1); } if(!input_process(current_scene, player_number)) { fprintf(stderr, "Input processing failed!\n"); exit(1); } } exit(0); return 0; }