Hi all,

Is there any limit to the number of functions you can specify within one shader program?

I have written a geometry shader which has numerous functions specified before the main(). For some reason only the first of these functions will work no matter what order I specify them in.

I've written psuedo code below for a n outline of my geometry shader. Hopefully someone can identify what silly thing I'm doing wrong?

#version 330
#extension GL_EXT_geometry_shader4 : enable
precision highp float;

void func1()
{
...
}

void func2
{
...
}

void func3
{
...
}

main()
{
func1();
func2();
func3();
}
As I said, no matter what order the functions are called or which order they are declared, only the first one declared will work.

Also, I have no compilation errors.

Thanks,

Jonathan