I'm trying to load a big terrain texture and only want to load a certain mipmap level to the GPU with Vulkan. When the whole terrain is in sight, the camera is far enough away from it so that only a mipmap of the whole terrain texture would be enough for renderering. So for that I don't want to load the whole texture on the GPU just for mipmap generation. So is it possible to generate the mipmap on CPU first? If so, what techniques are being used for mipmapping or (maybe better) is there already a implementation (library) for generating a mipmap on CPU?