public void updateUniforms(Transform transform, Material material)
    {
        super.updateUniforms(transform,material);
        Matrix4f worldMatrix = transform.getTransformation();
        Matrix4f projectedMatrix = getRenderingEngine().getMainCamera().getViewProjection().mul(worldMatrix);

        setUniformi("diffuse", 0);
        setUniformi("bump",1);

        setUniform("model", worldMatrix);
        setUniform("MVP", projectedMatrix);

        setUniformf("specularIntensity", material.getSpecularIntensity());
        setUniformf("specularPower", material.getSpecularExponent());

        setUniform("eyePos", getRenderingEngine().getMainCamera().getPos());
        setUniformPointLight("pointLight", (PointLight)getRenderingEngine().getActiveLight());


        GL13.glActiveTexture(GL13.GL_TEXTURE0);
        material.getTexture().bind();

        if(material.hasBumpTexture()){
            GL13.glActiveTexture(GL13.GL_TEXTURE1);
            material.getBumpTexture().bind();

        }

    }