
Unable to find an entry point named 'glCreateShader' in DLL 'opengl32.dll'.
Posted Monday, 11 October, 2010 - 17:19 by tomster1996 inWhen i try to create a shader it seems that a function is missing from the opengl dll file.
When i compile this code:
class Shader { static string vertexSource = System.IO.File.ReadAllText("Resources/Shader/dirLightAmbDiffSpecPix.vert"); static string fragSource = System.IO.File.ReadAllText("Resources/Shader/dirLightAmbDiffSpecPix.frag"); public static void start() { int vert = GL.CreateShader(ShaderType.VertexShader); int frag = GL.CreateShader(ShaderType.FragmentShader); GL.CompileShader(vert); GL.CompileShader(frag); int prog = GL.CreateProgram(); GL.AttachShader(prog, vert); GL.AttachShader(prog, frag); GL.UseProgram(prog); } }
I get this error message:
"Unable to find an entry point named 'glCreateShader' in DLL 'opengl32.dll'."
Whats going on here and how can i fix it?


Comments
Re: Unable to find an entry point named 'glCreateShader' in ...
This means that your video drivers do not support this method. What video card are you using? Try upgrading your drivers, if possible.
(Yes, a better error message would be nice).
Re: Unable to find an entry point named 'glCreateShader' in ...
Ive got a rubbish chipset built into my laptop. This wont support shaders im guessing?
Re: Unable to find an entry point named 'glCreateShader' in ...
It depends, it might just be a matter of installing the correct drivers. All nvidia and ati chips support shaders, as do intel chips starting with X3000 or so. Older intel chips might also support shaders but intel's drivers don't expose that capability on WinXP (but do so on Linux and maybe Vista/Win7). If you have a Sis/Via/etc are usually out of luck.
Try searching the website of your laptop manufacturer for updated drivers. If you can't find anything there, try downloading from intel.com/nvidia.com/ati.com directly.
Alternatively, you might be able to use software rendering via Mesa as a substitute for hardware support (see http://mesa3d.org). It will be very slow but you'll be able to use your laptop for development purposes, which is all that matters.
Re: Unable to find an entry point named 'glCreateShader' in ...
I still get the same problem even when i use mesa 3d. i can tell its using mesa 3d because the program runs at about 1 fps :(
Plus my chipset rivers are up to date.
Re: Unable to find an entry point named 'glCreateShader' in ...
Try using glview to see whether your system supports shaders. You need OpenGL v2.0 or higher.
Re: Unable to find an entry point named 'glCreateShader' in ...
Yeah i have version 1.5
is there a way i can update opengl ?
Re: Unable to find an entry point named 'glCreateShader' in ...
Your best bet is to try http://intel.com and download the latest driver for your OS and display adapter. You can find the model of your adapter through Control Panel -> Device Manager -> Display Adapters.
Chances are, you are using an Intel 945GM or similar chip. (Of course, if the Device Manager lists Nvidia or Ati you should go to their respective websites).
Re: Unable to find an entry point named 'glCreateShader' in ...
Nope no new drivers. My chip is Intel Chipset series 4 family.
Re: Unable to find an entry point named 'glCreateShader' in ...
This says that my graphics card should support shaders, http://www.intel.com/support/graphics/sb/cs-014257.htm.
And spore uses opengl pixel shader and that game works on my computer.
Re: Unable to find an entry point named 'glCreateShader' in ...
If glview reports the version as 1.5 then the drivers do not expose shader programming which was introduced with OpenGL 2.0 (vertex/fragment shaders).
Can you check the date (and possible full version number) of the graphics card drivers?