void Shader::LinkShaders() { GLuint program_object_id = glCreateProgram(); GLint link_status; assert(program_object_id != 0); glAttachShader(program_object_id, this->vertex); glAttachShader(program_object_id, this->fragment); glLinkProgram(program_object_id); glGetProgramiv(program_object_id, GL_LINK_STATUS, &link_status); if (LOGGING_ON) { DEBUG_LOG_WRITE_D(TAG, "Results of linking program:"); log_program_info_log(program_object_id); } assert(link_status != 0); DEBUG_LOG_PRINT_D(TAG, "Results of linking program: %d %d", program_object_id ,this->GetProgram()); validate_program(program_object_id); this->SetProgram(program_object_id); //this->SetProgram(1000); //this->program = program_object_id; //this->program = 0; }
void on_touch_press(float x, float y) { DEBUG_LOG_PRINT_D("gl_api", "on_touch_press %f,%f count=%d", x, y, s_emitters.size()); EmitterObject* emitter = new EmitterObject(); Vector2f position(x, y); emitter->Init("textures/texture_64.png", position); s_emitters.push_back(emitter); }
GLint validate_program(const GLuint program) { //if (LOGGING_ON) { int validate_status; glValidateProgram(program); glGetProgramiv(program, GL_VALIDATE_STATUS, &validate_status); DEBUG_LOG_PRINT_D(TAG, "Results of validating program: %d", validate_status); log_program_info_log(program); return validate_status; //} return 0; }
void on_long_press(float x, float y) { DEBUG_LOG_PRINT_D("gl_api", "on_long_press %f,%f count=%d", x, y, s_emitters.size()); }