Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
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);
}
Ejemplo n.º 3
0
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;
}
Ejemplo n.º 4
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());
}