public void setVector4InArray(float x, float y, float z, float w, int index){
        if (location == -1) {
            return;
        }

        if (varType != null && varType != VarType.Vector4Array) {
            throw new IllegalArgumentException("Expected a " + varType.name() + " value!");
        }

        multiData.position(index * 4);
        multiData.put(x).put(y).put(z).put(w);
        multiData.rewind();
        updateNeeded = true;
        setByCurrentMaterial = true;
    }
Used to track which uniforms to clear to avoid
values leaking from other materials that use that shader.
jme3-core/src/main/java/com/jme3/shader/Uniform.java