Everything on this page was rendered by Heimdall3D from the original files.

NEW IN 1.1.0

Rig, animate, light and print

Version 1.1.0 adds rigging, motion capture, animation, splat captures, lighting, volumes, print checks and scripts.

A rigged figure with its skeleton drawn over it and the time dock full of keys below

01 · FIGURES

Rigging in seconds

Rig a character in seconds.

A character without a skeleton gets one automatically, with skin weights and finger bones. 103 of Mixamo's 108 characters rig this way. Drag the joints, pose by hand and paint weights.

Motion capture library

Motion capture from CMU and Quaternius on your own characters.

Feet stay on the ground. Repair motion fixes spikes and bent-back knees. Several actors play at once, each on its own clock.

The viewer window with a flight helmet, the toolbar, the time dock and the scene list

02 · ANIMATION

A time dock for animation

Range, transport, named rows and a graph editor along the bottom of the window.

Key objects, cameras, lights and card settings. Cut between cameras. Export .glb or .fbx with skeleton, weights and clips.

Standing in a narrow stone street of Trogir, a captured town

03 · CAPTURED PLACES

Gaussian splat captures

Open captures of any size. They stream from disk while you look.

Walk inside a capture with keys or an Xbox controller. Jump between named places.

Download a capture from SuperSplat (superspl.at) and open it. Heimdall3D reads .ply, .splat, .ksplat, .spz, .sog and the streamed .ssog.

  • Trogir on SuperSplat: the alleys of a Croatian town, by Paolo Tosolini, captured with an XGRIDS PortalCam. It opens with you standing inside.
  • Double Arch on SuperSplat: the rock formation in Arches National Park, Utah, by AJ Creek.

Both captures are licensed CC BY 4.0. Authors: Paolo Tosolini and AJ Creek.

A tavern table at night lit by its own candles and lantern A cloud in the shape of a rabbit under a blue sky

04 · LIGHT AND AIR

Lights placed with a press

Up to 4096 lights in a scene.

Press on the model to add a Point, Spot, Sun or Area light. Up to 16 cast shadows.

Clouds and fire

OpenVDB and NanoVDB volumes show clouds lit by sun and sky, and fire that glows by its temperature.

Volume sequences play on the timeline.

A wooden chest in the viewer with its eight sides drawn as a sprite sheet above it

05 · 2D AND GAME ART

From 3D model to sprite sheet

Turn any model into a sprite sheet with 4, 8 or 16 directions.

Every cell shows in the pane, lit by your scene. Export for Godot, TexturePacker, GameMaker and Aseprite, with normal, depth, occlusion and ID maps beside the colour. Directions and clips become named animations. The pixel look sets 16 to 256 rows, 2 to 64 colours, dither and outline. Aseprite, Tiled and LDtk files open directly.

A goblet over the Bambu Lab X1E build volume, the Build volume card open with Fit A scanned statue fitted to a Prusa MK4S, its build volume drawn around it with the sizes in millimetres

06 · PRINTING

Checks for 3D printing

See a model's size in millimetres and whether it fits one of 63 printers.

Fit it to a printer, show overhangs, check Health and Volume, lay it flat, cut Layers and colour thin walls.

A mountain valley made by a script, with the notebook showing its lines

07 · SCRIPTS

Every scene is also a script

Save any scene as a text script, a .h3ds file, and run it to build the scene again. The language is made for AI assistants.

A script can add models, lights and cameras, key animation and set any card's controls. Undo takes back a whole script in one step. Templates like three-point lighting, a product shot and a turntable run in one line.

An AI assistant can drive Heimdall3D from a shell or over MCP, in the window you have open. The Activity window shows what it did.

Name a piece from the model library as library:<author>/<collection>/<piece>, for example library:kenney/castle/wall. Heimdall3D downloads it once. The same script builds the same scene on any computer. Gulltopp, Heimdall3D's tray companion app, uploads your models to heimdall3d.com. Skirnir shows them in the browser.

Read the language reference (PDF)

THE COMMAND LINE

Drive Heimdall3D from a shell

Turn on Take commands on the Configure page and these reach the open window.

heimdall3d_view.exe --call script run castle.h3dsRuns the script in the open window and waits for it to finish.
heimdall3d_view.exe --call run "Three-point lighting" #154Adds a key, a fill and a rim light aimed at node #154.
heimdall3d_view.exe --call look --size 1280x720 --out castle.jpgSaves a picture of the view.

For an AI assistant that speaks MCP, point it at heimdall3d_view.exe --mcp.

Open Skirnir

The castle from the script. Press it to turn it.

A CASTLE FROM ONE SCRIPT

A castle from one script

One 136-line script builds this castle from Kenney's Castle Kit (CC0). A wall 21 metres a side with eight towers, a gatehouse, a keep, siege engines and a wood.

Loops lay each run of wall. One loop turns every wall named "Side wall".

Open Skirnir   castle.h3ds

THE CASTLE IN SEVEN SCRIPTS

It ends by setting the sky, a grass floor and the scene's camera.

A run of wall
01. A run of wallA run of nine wall pieces, laid by a loop. 01-a-run-of-wall.h3ds
A corner tower
02. A corner towerA hexagonal base, three storeys, a roof and a flag. A loop stacks the storeys 0.46 metres apart. 02-a-corner-tower.h3ds
Walls that turn
03. Walls that turnFour corner towers and four runs of wall, each with a name. A loop turns every wall with one name. 03-walls-that-turn.h3ds
The gatehouse
04. The gatehouseSquare towers either side of the gate, and an arch over it. The gate is turned toward the road by its name, $gate. 04-the-gatehouse.h3ds
The keep
05. The keepFour towers of three storeys, with battlements, pointed roofs and two banners. Each tower has its own loop that stacks its storeys 1.01 metres apart. 05-the-keep.h3ds
A wood
06. A wood60 trees, 40 small trees and 10 rocks scattered over an area from a seed. Each is turned and sized at random within a range, and the wood is the same on every run. 06-a-wood.h3ds
The siege
07. The siegeA trebuchet, a catapult, a ram and a siege tower, each placed by name and turned toward a wall. 07-the-siege.h3ds

NEW FORMATS

Formats added since 1.0

Six groups of files that 1.0 could not open.

Gaussian splats.ssog.sog.ply.splat.ksplat.spz
Scenes.usd.usda.usdc.usdz.abc.wrl.vrml
3D printing.amf.gcode.gco.bgcode.ctb.cbddlp.photon.goo
Voxels and volumes.vox.qb.binvox.raw.dat.nrrd.nhdr.bt.ot.vdb.nvdb
Molecules and distance fields.sdf.mol
2D and game art.aseprite.ase.tmx.ldtk

A folder of models shows the models

Every 3D file and HDR image in a folder gets its own thumbnail. Select a model and it opens in the preview pane, where you can orbit it and play its animation. HDR images keep their full range, with exposure controls and live pixel values.

Version 1.1.2 is available for Windows 10 and 11.

The free version includes thumbnails, the preview pane, the viewer window, and every supported format. It requires no account or licence key, has no watermarks, and does not expire.

If you want to save or export your work, you can buy the full version. It adds eight paid actions: saving an image, copying a frame to the clipboard, writing a sprite sheet, recording a turntable or animation clip, running a shot destination, automatic rigging, putting motion capture onto a character, and exporting a model as GLB or FBX with skeleton, skin weights and clips.

Heimdall3D is developed by one person, and licence sales fund the work.

If a file does not render right, or you want another format or feature, tell me. Your requests decide what gets added next.

Directory Opus with a carved wooden cabinet open in the preview pane, its file
              listed in the folder beside it.
The preview pane in Directory Opus, showing the selected glTF cabinet.

Not a wrapper

Heimdall3D draws your models itself, with its own renderer.

Materials, textures, skinning, shadows, lighting and tone mapping all run on your graphics card through Vulkan.

Everything ships in one binary, with no runtime dependencies.

Directory Opus can also ask Windows to preview some 3D formats through Microsoft's Mixed Reality Viewer. Windows 11 no longer includes it, and animation that once worked there stopped after an update.

Heimdall3D does not use Mixed Reality Viewer. It opens your files whatever Microsoft does with that component.

A brass chandelier with fabric shades and an opal glass stem, lit from within.
One object, four materials: polished brass, woven fabric, opal glass and cut glass drops.

Motion capture plays in Directory Opus

FBX and BVH clips play on a mannequin at their own frame rate. Node animation plays too.

Many motion capture files have no mesh. Heimdall3D puts the clip on a mannequin so you can see the motion.

The clip keeps playing while you change the look. Cartoon shading, outlines and depth of field work live. Your file is never changed.

Depth of field focuses on what the camera points at. Move the focus nearer or further to choose what is sharp.

Cartoon shading and outlines.
Depth of field close to the camera.

Models, HDR images and animation in one viewer

One viewer for 3D models, HDR images and motion capture.

Light a model with an HDR environment map. Metals reflect it, glass filters the light through it, and anisotropic materials stretch their highlights along the grain.

A brushed copper barn lamp, its highlight stretched along the grain of the metal.
Brushed copper. The highlight follows the grain.

Lighting built around the model

An HDR environment map gives the model its light, colour and reflections. Change the map and the metal and glass change with it.

Move three studio lights (key, fill and rim) around the model. Each has its own colour or Kelvin temperature, and its size sets how soft the shadows are.

Also:

  • Gobos, to project shapes through a light
  • Light beams you can see in the air
  • One bounce indirect lighting
  • Colour bleeding from nearby surfaces
  • Light through coloured glass
A brass vase on a stone floor, the room behind it visible in the polished metal.
The metal shows the room around it. Another map, another room.
A mosquito inside a nugget of amber, lit from behind so the insect shows through.
Light bends and is absorbed in the amber, which is what shows the insect.
A lantern chandelier with a coloured checker applied in place of its materials.
The UV checker replaces every material with one checker. Stretched, sheared or uneven squares show where the UVs are wrong.

The UV checker swaps every material for one checker, so you can check a file for distorted or overlapping UVs.

Thumbnails rendered from the file

Models show from a good camera angle. Motion capture files show the mannequin in a typical pose. HDR images show the image.

On the test system a model with 350,000 triangles takes about 1.2 seconds to render. The thumbnail is cached, so it is not drawn again each time you open the folder.

HDR, EXR and DDS files show their pixel size in the file list. The preview pane shows the exposure in EV and the RGBA value under the pointer.

A folder of HDR, EXR and DDS files in Directory Opus, each with a thumbnail,
                and one of them open in the preview pane.
Each file has its own thumbnail. The selected one is open in the pane.

Supported formats

A format is listed only when its materials, textures, skeletons and animation load too, where the format has them.

Models and motion capture

FormatExtensionsWhat Heimdall3D loads
glTF.gltf .glb Geometry, materials, textures and animation, with WebP and Basis textures and Draco or meshopt meshes
FBX.fbx Geometry, skeletons and animation
VRM.vrm Avatars: geometry, materials, textures and animation
OBJ.obj Geometry and its .mtl materials
PLY.ply Geometry, texture coordinates and the texture the file names. ASCII and binary, either byte order
COLLADA.dae Geometry, materials, textures and the scene graph
3DS.3ds Geometry, materials and bump maps
3MF.3mf Geometry, colours, materials, textures and the printing units
STL.stl Geometry
BVH.bvh Skeleton and animation, played on the mannequin

A glTF with WebP textures (EXT_texture_webp) loads, lossy or lossless, through a WebP decoder we wrote. An animated WebP shows its first frame.

HDR images and textures

FormatExtensionsWhat Heimdall3D loads
Radiance.hdr .pic Floating point images opened at full range
OpenEXR.exr Floating point images, including single channel files
PFM.pfm Floating point images
DDS.dds Block compressed and uncompressed game textures
KTX2.ktx2 .basis Basis Universal textures
TIFF.tif .tiff 8, 16 and 32 bit images, both byte orders, strips and tiles

It also decodes .png, .jpg, .webp and .tga, but leaves them to Directory Opus, which already handles them well.

The decoders and the renderer ship inside Heimdall3D and change only when it does.

If a format you use is missing, tell me which one. Requests decide what gets added next.

Download Heimdall3D 1.1.2

Heimdall3D 1.1.2 is available for Windows 10 and 11.

The free version includes thumbnails, the preview pane, the viewer window, and every supported format. It requires no account or licence key, has no watermarks, and does not expire.

The full version adds eight paid actions: saving an image, copying a frame to the clipboard, writing a sprite sheet, recording a turntable or animation clip, running a shot destination, automatic rigging, putting motion capture onto a character, and exporting a model as GLB or FBX with skeleton, skin weights and clips.

The controls stay visible in the free version. Press one and Heimdall3D says it needs a licence and links to this page.

A licence is one payment of €49, including VAT, and covers the 1.x line with updates included.

What the price covers.

Download the Installer, 162 MB Download the ZIP, 186 MB

Which download should I use?

Use the installer unless you want a manual installation.

The installer closes Directory Opus, removes any previous version and installs the new build.

The ZIP has the same plugin. You install, replace and remove it yourself.

Verify the download

Check the SHA-256 hash to confirm your download matches the original build.

Heimdall3D-1.1.2-setup.exe · 162 MB

36ca460f821049680ed749be7847fd8119420b8c0aa51101d07d4aa220b47a8b

Heimdall3D-1.1.2.zip · 186 MB

2889e7b622ca0cfe1a3b45667c8c538799fc158647e05e9c44c04a49e8776d90

Run this command in PowerShell:

Get-FileHash <file> -Algorithm SHA256

The result must match the hash shown above. Do not run the file if it does not.

Report a file that renders incorrectly

Send the file, or a screenshot and what it should look like.

Send a report

Heimdall3D on the Microsoft Store

Get the Directory Opus plugin from the installer on this site. The price page says why.

Microsoft Store

Built for NVIDIA, AMD and Intel

Heimdall3D uses Vulkan and works with NVIDIA, AMD and Intel graphics.

Vulkan 1.2 is enough. Ray tracing is used when your card supports it.

With no usable Vulkan device, files keep their normal icons, and the preview pane and viewer say why nothing was drawn.

A rendering crash cannot take Directory Opus down

A crash in the renderer never takes Directory Opus down. That one render is skipped and the next file draws as usual.

If it keeps failing, GPU rendering switches off until you restart Opus. Your files keep their normal icons.

Thank you, Directory Opus

I have used Directory Opus since the Amiga days. It is still the program I keep open all day.

Thank you to GP Software for continuing to develop and maintain it.

Heimdall3D is an independent plugin. It is not affiliated with, approved by, or endorsed by GP Software. Directory Opus is their product; Heimdall3D is mine.

Please report Heimdall3D problems through the form above or by email rather than contacting Directory Opus support.

Credits

Every picture on this page is a render of somebody else's model. Three of them are licensed under Creative Commons Attribution, where the credit is a condition of use.

  • “Stained Glass Lamp” © 2021 Wayfair (Eric Chadwick), CC BY 4.0.
  • “Anisotropy Barn Lamp” © 2023 Wayfair, LLC (Eric Chadwick), CC BY 4.0.
  • “Mosquito In Amber” © 2018 Loic Norgeot / Sketchfab, real-time refraction © 2019 Sketchfab, CC BY 4.0.

The rest are CC0 and require no credit. They are named because the people who made them did the work: the brass goblets and the bronze whale by Tina, the gothic cabinet and both chandeliers by Kirill Sannikov, and the brass vase by Rico Cilliers, all from Poly Haven. The sci-fi helmet and the teacup come from the Khronos glTF Sample Assets.

The light in every render is a Poly Haven HDRI, and the floors are from Poly Haven and ambientCG. The mannequin that plays a motion capture clip is Quaternius's Universal Animation Library 2. The toolbar glyphs are Tabler Icons, MIT.

Full credits, with the source and the licence for each.

The mailing list

One message goes out when a new build is released.

There are no newsletters, promotions or unrelated messages, and your address is not shared with anyone else.

We send a confirmation email first. You are not on the list until you open the link in it.

Every message has an unsubscribe link. One press removes you from the list.

Questions

Can Directory Opus preview EXR files?

Yes. With Heimdall3D, EXR files get real thumbnails and open directly in the Directory Opus preview pane. They are decoded in floating point and displayed with exposure control in EV stops, tone-mapping options, channel isolation, and live RGBA values beneath the pointer. Single-channel EXR files are supported too. Without Heimdall3D, Directory Opus has no built-in OpenEXR support and normally shows these files as generic icons.

Can I preview 3D models in Directory Opus?

Yes. Heimdall3D adds rendered thumbnails and interactive previews for glTF, GLB, FBX, VRM, OBJ, PLY, COLLADA, 3DS, 3MF, STL, BVH, USD, Alembic, VRML97 and AMF files. Select a model to inspect it in the preview pane. You can orbit the camera, change the lighting, switch environment maps, and adjust how the model is rendered. Heimdall3D uses its own renderer, so it does not depend on Microsoft's Mixed Reality Viewer.

Can Heimdall3D play motion capture files?

Yes. A model that carries its own skeleton plays with it: glTF and FBX bring their bones, their bind pose and every animation clip, and the skinned mesh deforms as it was authored. A file that has a skeleton and animation but no mesh, which is what most BVH and many FBX clips are, is retargeted onto a rigged mannequin instead, so there is something to watch. Their thumbnails show a pose rather than a generic icon, which makes clips far easier to pick out of a folder. Cartoon shading, outlines and depth of field stay active while the animation plays.

Can Heimdall3D create thumbnails for 3D models?

Yes. Every supported model and motion capture file gets a rendered thumbnail in the Directory Opus file list. The thumbnail is cached after it has been generated. On the test system, a model containing 350,000 triangles takes about 1.2 seconds to render for the first time.

Can it display HDR images and game textures?

Yes. Heimdall3D supports OpenEXR, Radiance HDR, PIC, PFM, DDS, KTX2, Basis and TIFF files. HDR images retain their floating-point range and can be viewed with exposure and tone-mapping controls. DDS support includes the block-compressed texture formats commonly produced by game-asset pipelines, and KTX2 and Basis textures are transcoded as they load.

What language was Heimdall3D written in?

Two languages, split along the process boundary. The Directory Opus plugin is C++, covering the Opus integration, the file decoders, the preview pane and its widget toolkit. The renderer is a separate program, heimdall3d_render.exe, written in Odin, which drives Vulkan directly. The shaders are GLSL. Odin was chosen for the renderer because that code is mostly arrays of plain data being pushed at a GPU, which is what the language is built for. It also let the renderer start without the habits the C++ side had accumulated. A rendering crash cannot take Directory Opus down. The two processes talk over a wire protocol, and the plugin outlives the helper.

What does Heimdall3D offer beyond a codec pack?

Heimdall3D gives you an interactive viewer inside Directory Opus, not just a static thumbnail. You can inspect 3D models, play animation, adjust HDR exposure, isolate image channels, read floating-point pixel values, change environment maps, and control the lighting. A codec pack normally gives Windows one fixed, already tone-mapped bitmap. Heimdall3D controls the preview pane itself, so the file remains interactive.