A few questions on gl shaders

First question:
If you have installed a fragment shader, must you also supply a vertex shader or will you still be able to use openGL’s fixed functionality for that portion of the pipeline?
Second question:
If you are using matrix palette’s and vertex blending, but then switch to a vertex shader, must you calculate the final vertex yourself from the weights and palette or will open gl still do that for you?

You can still use the OpenGL fixed function pipeline for the vertex transformation portion.

This I don’t know for sure but I strongly suspect you would have to calculate the final vertex yourself. However you should be able to find examples of matrix palette skinning in GLSL; check out either the OpenGL SDK or NVidia’s SDK.

if you are mixing shaders and ffp remember using

gl_Position = ftransform();

instead of

gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;

to gain transform invariance. otherwise you will get artefacts…

I will keep this in mind, but what is the exact technical difference between the two?

There actually shouldn’t be any difference on most shader capable GPUs since they no longer physically implement the fixed function pipeline.