Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3 ... 18

Author Topic: Lifevis - A realtime 3D interface for DF - Now with more Speed!  (Read 79430 times)

Mithaldu

  • Bay Watcher
    • View Profile

Lifevis is a realtime 3D interface for Dwarf Fortress. What does this mean? It is a program that will connect to the DF process and continually read its memory contents, then render them in OpenGL, and will continually read the contents. Thus you can watch the 3D model of your map update as you play, while being able to fully move around in it and view it from any angle. It will also send whatever keyboard input you perform on to Dwarf Fortress, so you can play the game inside the 3D view without having to switch back and forth all the time. Lastly, it allows you to control the view of your map, by allowing you to configure the horizontal range it will scan around the cursor position, as well as the ceiling and floor of the view, so you can slice into mountains.

Lifevis has been updated work with v0.34.07, v0.34.10, v0.34.11. The current version is very alpha and still very borken, but it can be downloaded on github:

https://github.com/wchristian/lifevis/downloads

And if you have problems, ideas or suggestions, please report them here: https://github.com/wchristian/lifevis/issues

Newer screenshots:




Old OPs:
Spoiler (click to show/hide)
« Last Edit: June 29, 2012, 07:27:55 am by Mithaldu »
Logged

Mr.Person

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #1 on: July 31, 2008, 04:33:18 am »

Here I was thinking the hard part would be making models and textures. Silly me  ;)
Logged
Youtube video of the year, all years.
Hmm...I've never been a big fan of CCGs - I mean, I did and still do collect Pokemon cards, but I never got heavily into the battling and trading thing.

By definition that makes you a fan since you still buy them.

Mithaldu

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #2 on: July 31, 2008, 07:39:58 am »

For people getting errors on the .bat, i updated it and it works now. :)
Logged

Ioric Kittencuddler

  • Bay Watcher
  • Multiclass Bard/Kitten trainer
    • View Profile
Re: 3Dwarf beautification project
« Reply #3 on: July 31, 2008, 08:14:22 am »

I'd like to help but I'm not quite sure about the instructions.  I need to run this when?  When I'm using k view and I put my cursor over a tile?  Then I write a description of it which appears in the log.txt?  Then I put it on the wiki?
Logged
Come see the MOST interesting Twitter account on the internet!  Mine!

Don't worry!  Be happy!  It's the law!

Mithaldu

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #4 on: July 31, 2008, 08:18:50 am »

Pretty much exactly that. :)

The output is:
Code: [Select]
type -------designation-flags-------- -------occupation-flags---------
So you just check the relevant wiki pages i linked above. The log.txt is for convenience so you don't need to copy from the dos window.

Maybe i should create a new wiki page where people can simply dump the log.txt content in?
Logged

Ioric Kittencuddler

  • Bay Watcher
  • Multiclass Bard/Kitten trainer
    • View Profile
Re: 3Dwarf beautification project
« Reply #5 on: July 31, 2008, 08:54:20 am »

Hm, looking at those wiki pages I'm even more confused.  It's... binary...
Logged
Come see the MOST interesting Twitter account on the internet!  Mine!

Don't worry!  Be happy!  It's the law!

Christes

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #6 on: July 31, 2008, 01:54:49 pm »

That's ... really awesome.  I'll get right on it.
Logged

Mithaldu

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #7 on: August 01, 2008, 03:03:41 am »

Ioric: I updated the OP, maybe it helps you a bit? =)
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3Dwarf beautification project
« Reply #8 on: August 01, 2008, 03:57:18 am »

I think I gave this to somebody before.  I don't remember if it was for the wiki or just some utility, but if it has been lost, here it is again.  You don't need to look if you want to use the new tile reader thingy instead.

Tile Types:
Spoiler (click to show/hide)

Designations:
Spoiler (click to show/hide)

Occupancy:
Spoiler (click to show/hide)
« Last Edit: August 01, 2008, 03:59:53 am by Toady One »
Logged
The Toad, a Natural Resource:  Preserve yours today!

MaxVance

  • Bay Watcher
  • Legendary Internet User
    • View Profile
Re: 3Dwarf beautification project
« Reply #9 on: August 01, 2008, 04:06:06 am »

This seems as good a place as any to ask, so here goes: What about moss? The wiki mentions it but has very little information. Wouldn't tiles with moss need their own texture, or does moss even still exist? (The tile list didn't seem to list it, but I may have missed it or misinterpreted the list.) Never mind, it's in the designation list.
« Last Edit: August 01, 2008, 04:09:25 am by MaxVance »
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3Dwarf beautification project
« Reply #10 on: August 01, 2008, 04:10:33 am »

It's designation bit 29.  I don't know if it's used that often anymore, since it'll only come by if you stay away from and then revisit a site after a while in the right biome...  maybe even then it's not appearing.  Used to.  Haven't checked for a long time.
Logged
The Toad, a Natural Resource:  Preserve yours today!

Mithaldu

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #11 on: August 01, 2008, 04:50:07 am »

Aw, finding all that stuff out was half the adventure. :D

In any case, many many thanks Toady. That stuff helps out a massive ton! :)



Tile reader analysis will still be necessary, as some of the flags are a bit vague. Some of the adventure is left! :D
« Last Edit: August 01, 2008, 05:06:38 am by Mithaldu »
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3Dwarf beautification project
« Reply #12 on: August 01, 2008, 05:17:29 am »

The glass/metal wall stuff isn't stored in the type+occ+des if that's what you mean by vague flags.  I don't know anything about 3Dwarf's inner workings, so I'm not sure if it's looking at the 16x16x1 block's information, but you need to go there to get at specific mineral vein mats.  Also, I'm not sure if it's already doing this, but for construction materials, there are construction information objects stored in lexicographical order (if I remember) by coordinate off somewhere that it gets at from the coordinates once it knows there is a construction tile present.  This is done so it can store the specific item used as well as builder information and so on, without a per-tile cost everywhere (though there's a minor speed hit on print and other interactions).
Logged
The Toad, a Natural Resource:  Preserve yours today!

Mithaldu

  • Bay Watcher
    • View Profile
Re: 3Dwarf beautification project
« Reply #13 on: August 01, 2008, 05:38:30 am »

So far it's only using the info here, sans the vein data:

http://www.dwarffortresswiki.net/index.php/User:Rick/Memory_research#Tile_Block

And from that only the type/des/occ data. Right now we're looking at metal/glass wall stuff mostly because that's the most requested. I doubt Sinoth will want to make textures for ALL kinds of materials nor that he can get that into 3dwarf without a severe performance hit. The other thing i wanted the data for, mostly the occupancy stuff, is that it should tell sinoth where to render bridges, doors and generic "here's a building" blocks.

The vague part comes in here mostly, figuring out what kind of building has what kind of occupancy flags, so we can get good generalized representations working. (Partly also because we don't know yet where building locations or creature locations are. (Although i have a hunch about the creature stuff, since there's some wiki pages i haven't looked at yet.)) Of course we could ask you for that, but I'm leery of that, because i don't want you to feel pressured or obligated to spend time on this. :)

As for the veins, i just looked at Rick's page again and thanks to Azure have a good idea of what's going on there. I think i'll be able to grab and export that in a sensible manner.

Finally, thanks again. :)

Edit:

Right now we're going with these representations for the occupancy flags:

OCCUPANCY_BUILDING_
BIT2 = floor covered
BIT1 + BIT3 = floor covered
BIT1 + BIT2 = half-height blocking object
BIT1 + BIT2 + BIT3 = full height blocking object
« Last Edit: August 01, 2008, 05:52:35 am by Mithaldu »
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3Dwarf beautification project
« Reply #14 on: August 01, 2008, 06:08:49 am »

I can't think of anything clever that would let you get at metal/glass distinctions without going to the construction info where the mats are stored.

Building bits:

BUILDING_OCCUPANCY_NONE 0
BUILDING_OCCUPANCY_CONST  1
BUILDING_OCCUPANCY_NO_BLOCK  2
BUILDING_OCCUPANCY_BLOCK_FLOOR  1|2
BUILDING_OCCUPANCY_BLOCK  3
BUILDING_OCCUPANCY_FLOOR  1|3
BUILDING_OCCUPANCY_TOTAL  2|3
BUILDING_OCCUPANCY_SPECIAL   1|2|3
BUILDING_OCCUPANCY_ANY   1|2|3


Specials covers a pretty broad class of things that can have different states where it needs to query the building specifically about what's going on (or where that might come up in the future).
Logged
The Toad, a Natural Resource:  Preserve yours today!
Pages: [1] 2 3 ... 18