Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Dwarf Fortress world rendered in Blender  (Read 3828 times)

sisoteuz

  • Escaped Lunatic
    • View Profile
Dwarf Fortress world rendered in Blender
« on: April 06, 2020, 11:27:55 am »

Hi everyone,

I'm new here so I hope I'm posting in the right section :) As a challenge thrown to myself I decided to create a way to render any Dwarf Fortress worlds in Blender 2.82 based on the various maps that you can export in Legends mode. Example below from the world I play in :



The only geometry in the scene is a subdivided plane, the rest is done through textures and displacement. I created a node group with various tweaks you can play with, although the defaults should give decent results out of the box :

Spoiler (click to show/hide)

As you can see you just need to plug in 3 maps generated in Legends mode: ELW map (elevation respecting water level), VEG (vegetation) and TMP (temperature), add a sun light, a HDRI of your choice and a Glare node set to Fog Glow in the compositor for a morning light effect on the icy mountains and that's it :)

Well.. except the little purple clouds that represents the evil areas. They are rendered using a particle system with the evil map from Legends as a texture and a Principle Volume shader.

You can download the blendfile here to play with and try with your own world.

If there is interest I could share more details on the realization.

Thanks for passing by :)
Logged

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: Dwarf Fortress world rendered in Blender
« Reply #1 on: April 06, 2020, 01:52:37 pm »

that is pretty cool, i was planning to do something like this myself, but it looks like you got to it first. Im currently unable to do anything that requires my GPU to do significant work, but if i ever get my new GPU i will 100% be playing with this. Maybe i'll even try to improve it, if i can.

A thing i wanted it for is to be able to zoom all the way to ground level. The displacement will probably have to be object-scale independent and it'll probably need some extra detail at that distance in the form of some extra tiny perlin noise.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

sisoteuz

  • Escaped Lunatic
    • View Profile
Re: Dwarf Fortress world rendered in Blender
« Reply #2 on: April 06, 2020, 06:58:04 pm »

Thanks for the comment :) I think you could use micro-displacement technique for your idea, with something like adaptive subdivision level.

That’d be awesome if you could play with it and make improvements ! I’m not terribly happy with the resolution of the mountains and there are some dark sharp shadows because of that. However increasing the subdivision level lead to very sharp and edgy mountains which looked horrible. Maybe I’ll try to tackle that if I have some time.

Another idea I was thinking about is to use the economy maps and procedurally generate towns/villages. It requires image manipulation to make them grayscale and usable though and my challenge was to use nodes only :)

By the way I don’t think you need a powerful GPU as the render took like 18 seconds. It’s very lightweight so rendering on CPU would totally work.
Logged

RoseHeart

  • Bay Watcher
  • 🛡️ Shiny Knight
    • View Profile
    • Forum Game Portfolio
Re: Dwarf Fortress world rendered in Blender
« Reply #3 on: December 04, 2020, 09:53:14 am »

Beautiful. Anything new?
Logged
He who knows he has enough is rich. -Lao Tzu
Whenever you've got to make a hard decision, don't become somebody that you don't respect. -Dr. John
Power doesn't corrupt, power reveals. -Robert Caro

Caz

  • Bay Watcher
  • [PREFSTRING:comforting whirs]
    • View Profile
Re: Dwarf Fortress world rendered in Blender
« Reply #4 on: December 19, 2020, 05:08:36 pm »

Looks good!
Logged