My question is not directly related to Unity, but I just bought an HDR asset package from the Unity asset store, there’s one particular skybox that I want to use in my own OpenGL rendering engine. However, it’s not a single equirectangle HDR image file, but consists of 6 HDR files, each corresponds to a face of the cubemap. I don’t understand why it’s useful to split an HDR image into 6? Why would artists want to do this? I tried to contact the author of that package but cannot reach him…
My program currently expects a single equirectangle or panorama HDR image and will process it into a cubemap texture, it doesn’t expect 6… Of course I can write code to handle this but I think such cases are rare. Are there any software or tools that can merge 6 HDR faces into 1? Can I do this in Unity by tweaking the import settings?
I did some google search but the returned pages are flooded with “Adobe Lightroom 6” everywhere… I’m not sure what that is, but I want to merge 6 HDR faces into one HDR equirectangle, not merging photos taken at different exposure level…
A workaround is convert the 6 HDR files into normal image files such as jpg or png, but I would lose all the high dynamic range information. This is visually unacceptable because, after the tone mapping algorithm is applied, all RGB colors in the skybox gets toned down to a greyish look.
Because that’s how the texture is going to be stored in video memory. A panoramic image i distorted at top and bottom, and wastes memory or disk space. The engine preprocesses it and converts into a cubemap which has a separate image for each face. So it makes sense to store it as a cubemap-compatible data in the first place.
In your situation I’d modify the loader to be able to load six images as cubemap faces. Because converting cubemap into panoram only to convert the panoram back into the cubemap sounds like a pointless operation that only increases loading times.