opengl vert frag glUniform 初始代码参考

来源:互联网 发布:送女生礼物排行榜 知乎 编辑:程序博客网 时间:2024/05/29 18:57
char *vs = NULL,*fs = NULL;


            vert = glCreateShader(GL_VERTEX_SHADER);
            frag = glCreateShader(GL_FRAGMENT_SHADER);


            vs = textFileRead(vertFile);
            fs = textFileRead(fragFile);
            const char * ff = fs;
            const char * vv = vs;


            glShaderSource(vert, 1, &vv, NULL);
            glShaderSource(frag, 1, &ff, NULL);


            free(vs); free(fs);


            glCompileShader(vert);
            glCompileShader(frag);


            program = glCreateProgram();
            glAttachShader(program, frag);
            glAttachShader(program, vert);


            glLinkProgram(program);
            glUseProgram(program);


        LoadCubeTexture(filename, compressedTexture);


        GLint location = glGetUniformLocation(program, "tex");
        glUniform1i(location, 0);
        glActiveTexture(GL_TEXTURE0);


        EyePos = glGetUniformLocation(program, "EyePosition");


        glUniform4f(EyePos, EyePosition.X(),EyePosition.Y(), 
                                    EyePosition.Z(), 1.0);          
        DWORD bob = glGetError();
        //All is fine here
        glEnable(GL_DEPTH_TEST);
原创粉丝点击