Beispiel #1
0
// load Shaders
// XXX: NEEDS TO BE IMPLEMENTED
void Common::loadShaders(){
  // XXX

	normQuadShader.loadVertexShader("shaders/quad.vert");
	normQuadShader.loadFragmentShader("shaders/quad.frag");
	normQuadShader.bindVertexAttrib("position", TriMesh::attribVertex);
	normQuadShader.link();

	quadShader.loadVertexShader("shaders/quadShader.vert");
	quadShader.loadFragmentShader("shaders/quadShader.frag");
	quadShader.loadFragmentShader("shaders/blinnPhongReflection");
	quadShader.bindVertexAttrib("position", TriMesh::attribVertex);
	quadShader.link();

	sphereMapShader.loadVertexShader("shaders/sphere.vert");
	sphereMapShader.loadFragmentShader("shaders/sphere.frag");
	sphereMapShader.loadFragmentShader("shaders/blinnPhongReflection");
	sphereMapShader.bindVertexAttrib("position", TriMesh::attribVertex);
	sphereMapShader.bindVertexAttrib("normal", TriMesh::attribNormal);
	sphereMapShader.bindVertexAttrib("texCoord", TriMesh::attribTexCoord);
	sphereMapShader.link();

	texturingShader.loadVertexShader("shaders/textur.vert");
	texturingShader.loadFragmentShader("shaders/textur.frag");
	texturingShader.loadFragmentShader("shaders/blinnPhongReflection");
	texturingShader.bindVertexAttrib("position", TriMesh::attribVertex);
	texturingShader.bindVertexAttrib("normal", TriMesh::attribNormal);
	texturingShader.bindVertexAttrib("texCoord", TriMesh::attribTexCoord);
	texturingShader.link();

	silhouetteShader.loadVertexShader("shaders/silhouette.vert");
	silhouetteShader.loadFragmentShader("shaders/silhouette.frag");
	silhouetteShader.bindVertexAttrib("position", TriMesh::attribVertex);
	silhouetteShader.bindVertexAttrib("normal", TriMesh::attribNormal);
	silhouetteShader.link();
  // END XXX
}