public ColorRGBA getPixel(Vector3f vector, float mipLevel, ColorRGBA store) {
        if (mipMapRaster == null) {
            throw new IllegalArgumentException("This cube map has no mip maps");
        }
        if (store == null) {
            store = new ColorRGBA();
        }

        int lowerMipLevel = (int) mipLevel;
        int higherMipLevel = (int) FastMath.ceil(mipLevel);
        float ratio = mipLevel - lowerMipLevel;

        int face = EnvMapUtils.getCubemapFaceTexCoordFromVector(vector, sizes[lowerMipLevel], uvs, EnvMapUtils.FixSeamsMethod.Stretch);
        mipMapRaster.setSlice(face);
        mipMapRaster.setMipLevel(lowerMipLevel);
        mipMapRaster.getPixel((int) uvs.x, (int) uvs.y, store);

        face = EnvMapUtils.getCubemapFaceTexCoordFromVector(vector, sizes[higherMipLevel], uvs, EnvMapUtils.FixSeamsMethod.Stretch);
        mipMapRaster.setSlice(face);
        mipMapRaster.setMipLevel(higherMipLevel);
        mipMapRaster.getPixel((int) uvs.x, (int) uvs.y, tmpColor);

        store.r = FastMath.interpolateLinear(ratio, store.r, tmpColor.r);
        store.g = FastMath.interpolateLinear(ratio, store.g, tmpColor.g);
        store.b = FastMath.interpolateLinear(ratio, store.b, tmpColor.b);
        store.a = FastMath.interpolateLinear(ratio, store.a, tmpColor.a);

        return store;
    }
Reads a pixel from the cube map given the coordinate vector
@param vector the direction vector to fetch the texel
@param mipLevel the mip level to read from
@param store the color in which to store the pixel color read.
@return the color of the pixel read.
jme3-core/src/main/java/com/jme3/environment/util/CubeMapWrapper.java