The short answer
Godot 4 takes the equirectangular HDR directly. The sky lives in a Sky resource whose material is a PanoramaSkyMaterial, and that material's one meaningful property is your .hdr or .exr panorama. You do not split faces or convert the file. The engine projects the panorama, and two more dropdowns light the scene from it. Godot also supports six-face cubemaps; the last section covers them.
Step by step: WorldEnvironment
- Drop the
.hdror.exrfile into the FileSystem dock so Godot imports it. - Add a WorldEnvironment node to the scene and give its Environment property a New Environment.
- In the Environment, set Background > Mode to Sky.
- Under Sky, create a New Sky, then set its Sky Material to New PanoramaSkyMaterial.
- Open the material and drag the imported panorama into its Panorama slot.
The viewport shows the sky immediately. The rest of this page covers tuning.
Lighting from the sky
In the same Environment resource, set Ambient Light > Source to Sky so the panorama provides the diffuse ambient light. Set Reflected Light > Source to Sky so the panorama also provides reflections. Both sources default to Background, which follows the sky, so this often works without a change. Energy multipliers on the sky and ambient blocks scale brightness without editing the file.
An HDRI gives soft, directionless light. For crisp shadows, add a DirectionalLight3D and rotate it until its shadows agree with the sun position in the panorama. That is the standard pairing in every engine, Godot included. Local ReflectionProbe nodes sharpen indoor reflections where the sky alone is wrong.
Rotating the sky
The Environment's Sky block has a Rotation property, so you do not need a node graph. Change the Y component to move the sun along the horizon. X and Z tilt the horizon and are best left at zero. Lighting and reflections follow the rotation automatically.
If you export the sky from the converter instead of rotating it in Godot, the converter's SKY YAW slider applies the same rotation to the export.
Cubemaps in Godot: when and how
Godot's six-face path is the Cubemap resource. Custom sky shaders (samplerCube in a ShaderMaterial sky) and other shaders consume it. Godot has no built-in six-image sky material like the one Unity ships. The importer expects the six faces packed into one image in a 1×6, 6×1, 2×3, or 3×2layout, set under the texture's import type. It does not accept six separate files.
For an ordinary Godot skybox, keep the equirectangular panorama: that path is shorter and loses nothing. Use cube faces when a custom sky shader needs the hardware cube sampler, or when the same environment also targets a six-face engine. The Cubemap or equirectangular? guide lists those targets engine by engine.
Import settings and pitfalls
- Keep the source HDR. An 8-bit panorama bands visibly once the Environment's tonemap (Filmic, ACES) stretches it;
.hdrand.exrsources do not. - On the texture's Import dock, keep HDR as sRGB off for true HDR files. Turn Mipmaps > Generate on to keep the sky clean at glancing angles.
- VRAM Compressed trades sky gradient quality for memory. For a hero sky, start with Lossless and compress only if memory runs short.
- If the sky looks washed out, the Environment's tonemap and exposure are affecting it. Adjust Tonemap > Exposure instead of brightening the source file.
If you render your own panorama instead of downloading one, the Blender guide covers producing the equirectangular HDR this setup starts from.