create();
if (program != null) create(); else return;
	public void apply() {		if (isSupported()) {			if (isEnabled()) {				//Fragment program not yet loaded				if (programID == -1)					create();				GL11.glEnable(ARBFragmentProgram.GL_FRAGMENT_PROGRAM_ARB);				ARBProgram.glBindProgramARB(						ARBFragmentProgram.GL_FRAGMENT_PROGRAM_ARB, programID);				//load environmental parameters...				//TODO: Reevaluate how this is done.				/*				 * for (int i = 0; i < envparameters.length; i++) if				 * (envparameters[i] != null)				 * ARBFragmentProgram.glProgramEnvParameter4fARB(				 * ARBFragmentProgram.GL_FRAGMENT_PROGRAM_ARB, i,				 * envparameters[i][0], envparameters[i][1],				 * envparameters[i][2], envparameters[i][3]);				 */				//load local parameters...				if (usingParameters) //No sense checking array if we are sure									 // no parameters are used					for (int i = 0; i < parameters.length; i++)						if (parameters[i] != null)							ARBFragmentProgram.glProgramLocalParameter4fARB(									ARBFragmentProgram.GL_FRAGMENT_PROGRAM_ARB,									i, parameters[i][0], parameters[i][1],									parameters[i][2], parameters[i][3]);			} else {				GL11.glDisable(ARBFragmentProgram.GL_FRAGMENT_PROGRAM_ARB);			}		}	}