今天换了NVIDIA GeForce GTX750(
原来编译用的显卡是Intel HD Graphics 4600
)跑我的毕设程序,竟然Shader编译不过了。。。
一开始以为是显卡驱动的问题,重装驱动之后问题仍然存在、
后来发现是Shader文件的读入出错了, 最后一个字符不接受换行符
输出了一下报错信息:
(0) : error C0000: syntax error, unexpected $end at token "<EOF>"
因为我在读入Shader文件的时候用的是fread()函数,读到最后一行的时候包括了换行符
后来用getline一行一行读并在适当的时候添加”\n”,保证最后一行没有换行符,然后可以编译过了。。。
好坑啊QAQ