Bay 12 Games Forum

Please login or register.

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

Author Topic: Eighth-Dwarf - a 3D df clone  (Read 8453 times)

JamesPlotts

  • Bay Watcher
  • What's that button do?
    • View Profile
    • 8th Dwarf
Re: Eighth-Dwarf - a 3D df clone
« Reply #45 on: January 16, 2013, 01:11:02 pm »

300x300x300 is a good amount to be rendering, and glad to hear that you have the visible-face-only rendering set up (I have had to walk many through the steps to implementing this). Are you planning to have caves? Looking at your Simplex source it looks like you could easily implement it. I would sample the Simplex noise at a larger step than 1:1, suggested values of between 4:1, 8:1, and 16:1 to get consistent and varied caves, and then interpolating discretely at 1:1 to smooth the inside of the caves so they do not show as large blocks but instead as something more cavelike.

I don't know what you mean by Simplex noise.  I am using a perlin noise algorythm, of which I posted a nice VB class at http://www.xtremevbtalk.com/showthread.php?t=323743&highlight=Perlin+Noise.

How are you storing your voxel locations? And are you storing Voxel-specific information such as the type (dirt, sand, stone, etc)? Also, if you are currently implementing a variety of terrains are you using individual textures or a texture atlas?

This is how I'm storing it:

Code: [Select]
        Private pvtMapData(,,) As sGroundData
       
        Private Structure sGroundData
            Dim LocationType As Byte  ' actually use eLocationType enumerator for this field
            Dim MaterialType As Byte  ' actually use eMaterialType enumerator for this field
            Dim DataFields As Byte    ' Broken down for things like integrity, explored, etc.
        End Structure

        Public Enum eLocationType
            Open
            SolidGround
            Surface
            Construction
            Slope
            Unspecified
        End Enum

        Public Enum eMaterialType
            Abenakiite
            Alabaster
            Alunite
            ...
            Grass
            Lava
            Water
            Air
            Miasma
            Unspecified
        End Enum

All I have is one "block" model with a dirt terrain built into it.  I created it in Google Sketchup.  I just redraw it repeatedly to get my visuals.  That's all I have at the moment.
« Last Edit: January 16, 2013, 01:13:09 pm by JamesPlotts »
Logged
Owner of 8th Dwarf:  http://eighth-dwarf.googlecode.com
A 3D DF project.

GalenEvil

  • Bay Watcher
    • View Profile
    • Mac-Man Games
Re: Eighth-Dwarf - a 3D df clone
« Reply #46 on: January 16, 2013, 02:21:07 pm »

I browsed the google code link in your signature and saw that you have a SimplexNoise.cs file there, so went under the assumption that you were using it :P Sorry for that assumption. Simplex Noise is similar to Perlin Noise but is slightly faster. For 3D there is a small difference in computation speeds, but it shouldn't be enough to worry about since Perlin is pretty fast.
Logged
Fun is Fun......Done is Done... or is that Done is !!FUN!!?
Quote from: Mr Frog
Digging's a lot like surgery, see -- you grab the sharp thing and then drive the sharp end of the sharp thing in as hard as you can and then stuff goes flying and then stuff falls out and then there's a big hole and you're done. I kinda wish there was more screaming, but rocks don't hurt so I guess it can't be helped.

JamesPlotts

  • Bay Watcher
  • What's that button do?
    • View Profile
    • 8th Dwarf
Re: Eighth-Dwarf - a 3D df clone
« Reply #47 on: January 17, 2013, 11:55:52 am »

I browsed the google code link in your signature and saw that you have a SimplexNoise.cs file there, so went under the assumption that you were using it :P Sorry for that assumption. Simplex Noise is similar to Perlin Noise but is slightly faster. For 3D there is a small difference in computation speeds, but it shouldn't be enough to worry about since Perlin is pretty fast.

Oh, hey!  I forgot all about that.  I meant to convert it over to a VB class because it looked like it could make seamless chunks.  I had spent a lot of time finding this.
Logged
Owner of 8th Dwarf:  http://eighth-dwarf.googlecode.com
A 3D DF project.

GalenEvil

  • Bay Watcher
    • View Profile
    • Mac-Man Games
Re: Eighth-Dwarf - a 3D df clone
« Reply #48 on: January 17, 2013, 03:09:43 pm »

:D Yeah I use simplex noise for my seamless terrain. You can do a lot of things to turn it into smooth noise as well by sampling it at different rates and then blending it together. If you would like some reading material I have one quite long thread that I have been following that has been around for a few years that provides C# script samples and in some cases full source using the Unity3D engine. It is located here. It is currently sitting at 73 pages, was started back in 2010 and is still actively being posted in. Some things said will not be relevant to you but a lot of it will work whether you use the Unity Engine or not with a few tweaks.
Logged
Fun is Fun......Done is Done... or is that Done is !!FUN!!?
Quote from: Mr Frog
Digging's a lot like surgery, see -- you grab the sharp thing and then drive the sharp end of the sharp thing in as hard as you can and then stuff goes flying and then stuff falls out and then there's a big hole and you're done. I kinda wish there was more screaming, but rocks don't hurt so I guess it can't be helped.

JamesPlotts

  • Bay Watcher
  • What's that button do?
    • View Profile
    • 8th Dwarf
Re: Eighth-Dwarf - a 3D df clone
« Reply #49 on: January 19, 2013, 12:36:19 pm »

Okay, I'm biting the bullet again.  After doing a lot of research on Unity, I've decided to make the 3D wrapper on that platform.  As I can continue to write the core game in my VB.NET DLL and use that in Unity, this makes great sense. There are a lot of resources for voxel-based games in Unity (compared to XNA).
Logged
Owner of 8th Dwarf:  http://eighth-dwarf.googlecode.com
A 3D DF project.

GalenEvil

  • Bay Watcher
    • View Profile
    • Mac-Man Games
Re: Eighth-Dwarf - a 3D df clone
« Reply #50 on: January 19, 2013, 12:41:29 pm »

If you want any help getting used to Unity I will gladly help :) It is a fun engine to work with and is pretty easy to work with as well. If you want to chat about things you can usually find me on the freenode server on IRC. There is also a Unity3D channel (#Unity3D) which is full of people helping people do stuff with Unity :D my nick is same there as it is here.
Logged
Fun is Fun......Done is Done... or is that Done is !!FUN!!?
Quote from: Mr Frog
Digging's a lot like surgery, see -- you grab the sharp thing and then drive the sharp end of the sharp thing in as hard as you can and then stuff goes flying and then stuff falls out and then there's a big hole and you're done. I kinda wish there was more screaming, but rocks don't hurt so I guess it can't be helped.

JamesPlotts

  • Bay Watcher
  • What's that button do?
    • View Profile
    • 8th Dwarf
Re: Eighth-Dwarf - a 3D df clone
« Reply #51 on: January 19, 2013, 01:07:35 pm »

Oh yeah, I would like your help.  :D  I am first working through the formal Unity course offered here.  Probably won't use IRC, but I will troll the Unity Forums.

I did find this post of Unity voxel engines.  Any suggestion which one might suit my project best for a jumping off point?
« Last Edit: January 31, 2013, 12:04:26 pm by JamesPlotts »
Logged
Owner of 8th Dwarf:  http://eighth-dwarf.googlecode.com
A 3D DF project.

GalenEvil

  • Bay Watcher
    • View Profile
    • Mac-Man Games
Re: Eighth-Dwarf - a 3D df clone
« Reply #52 on: January 19, 2013, 01:23:06 pm »

I actually haven't used any of those. Been rolling my own engine heh. That is a very good resource though and you should probably run through the sources where available and glean from it anything that you find useful. I will be doing the same throughout today now that I have more stuff to look at :) I would start with the last one in the first section "Cubic World" since the note beside it says it's one of the best free ones, and then look through the rest of them as you go along.

I suggest rolling your own and just taking inspiration from the various engines since available engines seem to be primarily directed toward Minecraftian games. The cube generation and chunk management code is most needed though since it will guide you on getting things to a usable state quickly.

Click to see an old picture from one of my deprecated voxel projects
Logged
Fun is Fun......Done is Done... or is that Done is !!FUN!!?
Quote from: Mr Frog
Digging's a lot like surgery, see -- you grab the sharp thing and then drive the sharp end of the sharp thing in as hard as you can and then stuff goes flying and then stuff falls out and then there's a big hole and you're done. I kinda wish there was more screaming, but rocks don't hurt so I guess it can't be helped.
Pages: 1 2 3 [4]