2014-02-19 51 views
0

運行,只有當我使用的代碼GLSL編譯錯誤......通過gDEBugger

std::string progSource; 
std::ifstream infile; 
infile.open(shaderPath); 
std::string line; 
while(std::getline(infile,line)) 
    progSource+=line+'\n'; 
int fileSize = progSource.size(); 
const char* s = progSource.c_str(); 
glShaderSource(ShaderObj, 1, &s, NULL); 

正在加載一些着色器和能正常工作(我加載頂點,幾何和片段着色器)。然後我嘗試加載鑲嵌着色器,並在MSVC++中運行該exe文件時,它非常高興。但是,當我通過gDEBugger運行它時,它會以非常有幫助的error C0000: syntax error, unexpected $end at token "(EOF)"錯誤崩潰。

任何想法是什麼造成這種情況?也許gDEBugger不支持鑲嵌着色器?如果是這樣,任何人都可以提出一個不錯的選擇?

回答

3

GDebugger不再被維護,並且支持OpenGL 3.1,它沒有鑲嵌細化着色器。