问题
在使用C++编写图形学程序的时候往往会碰到需要将着色器代码变为字符串嵌入代码的情况。如何将着色器代码更简便快捷的用字符串表示出来便成为了一个问题。
解决方案
- 使用双引号
缺点:需要每行都写‘\n’。更改后如果一行过长还须拆分成两行,比较麻烦。string testShader = "uniform mat4 g_mvpMatrix; \n" "attribute vec3 position;\n" "void main ()\n" "{\n" "gl_Position = g_mvpMatrix * vec4(position.x, position.y, position.z, 1.0);\n" "}\n";
- 在字符串换行处加一个反斜杠’\’
string testShader = "unif