> > Assuming the C code works, here's what you do in D. > > GLuint shader; > shader=glCreateShader(GL_FRAGMENT_SHADER); > char[] file=cast(char[])read(`program.frag`); > char* filep = toStringz(file); > glShaderSource(f, 1, &filep,null); > erm.. ok, thanks :) Thought I tried this already. But, how is filep now an char** ?