NWN uses one of two paths: EXT_vertex_shader + ATI_fragment_shader NV_vertex_program + NV_register_combiners or something else if you don't have those.