我应该有Glew和Glut的最新版本,所以不应该是问题.一切都应该链接,我正在使用MS visual studio 2010.我的程序编译但是当我到glCreateShader(GL_FRAGMENT_SHADER)它显示错误:"0xC0000005:访问冲突."
我的节目:
#include <GL\glew.h>
#include <GL\glut.h>
#include <stdio.h>
#include <stdlib.h>
GLuint program;
static char* readShaderSource(const char * shaderFile)
{
FILE* fp = fopen(shaderFile, "r");
char* buf;
long size;
if (fp == NULL) return NULL;
fseek(fp, 0L, SEEK_END);//go to end
size = ftell(fp); //get size
fseek(fp, 0L, SEEK_SET);//go to begining
buf = (char*) malloc((size +1) * sizeof(char));
fread(buf, 1, size, fp);
buf[size] = NULL;
fclose(fp);
return buf;
}
static void initShader(const GLchar * fsFile)
{
GLint status;
GLchar …Run Code Online (Sandbox Code Playgroud) 我所试图做的是从我的程序获得一对夫妇纹理和渲染他们进入一个纹理并将其发回,但我只希望它使他们当我告诉它.是否有某种方式来摆脱OpenGL的主循环,这样我就可以呈现时,我想它,或者我可以暂停主循环,直到我想要呈现下一个质地?
编辑:我现在正在使用Glut和Glew.