public void setMaterial(Material mat) {
		if (!mat.getAmbient().equals(_materialAmbient)) {
			_materialAmbient = mat.getAmbient();
			gl.glMaterialfv(GL.GL_FRONT, GL.GL_AMBIENT, _materialAmbient
					.toFloatArray(), 0);
		}
		if (!mat.getDiffuse().equals(_materialDiffuse)) {
			_materialDiffuse = mat.getDiffuse();
			gl.glMaterialfv(GL.GL_FRONT, GL.GL_DIFFUSE, _materialDiffuse
					.toFloatArray(), 0);
		}
		if (!mat.getEmissive().equals(_materialEmissive)) {
			_materialEmissive = mat.getEmissive();
			gl.glMaterialfv(GL.GL_FRONT, GL.GL_EMISSION, _materialEmissive
					.toFloatArray(), 0);
		}
		if (!mat.getSpecular().equals(_materialSpecular)) {
			_materialSpecular = mat.getSpecular();
			gl.glMaterialfv(GL.GL_FRONT, GL.GL_SPECULAR, _materialSpecular
					.toFloatArray(), 0);
		}
		if (!(mat.getShininess() == _materialShininess)) {
			_materialShininess = mat.getShininess();
			gl.glMaterialf(GL.GL_FRONT, GL.GL_SHININESS,
					(float) _materialShininess);
		}
	}