Distant Worlds 2 - Dev Diary #3 (Full Version)

All Forums >> [Coming Soon] >> Distant Worlds 2



Message


Mantuvec -> Distant Worlds 2 - Dev Diary #3 (8/25/2021 4:08:15 PM)

Procedural Rendering in Distant Worlds 2

Hello to all. My name is Elliot Gibbs, and I am the developer for Distant Worlds 2. This article has a slightly different focus. It will give you a behind-the-scenes look at a small slice of the game with an important on-screen role: the natural environment of the Distant Worlds galaxy.

While this article is more technical, it will help you see “under-the-hood.” It will give you insight into how we solved some of the unique problems faced in a game as vast as Distant Worlds 2.

[img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/59ebe2a7781e6e78593dfcfad9ad851aa678626a.jpg[/img]

Procedural Rendering versus Hand-made Art

What is procedural rendering? This refers to drawing various parts of the game without using hand-made art assets. In other words, an item is rendered on the screen without using any artist-created models or images. Instead the item is drawn using only software instructions – the item is rendered in code.

That might not sound very useful. Why would you bother writing a lot of software to draw something in code instead of just having an artist make a 3D model, or draw a 2D image?

That depends on what you are drawing and the number of different items that need to be drawn.

[img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/3ce893769c14a7e1ec797233361a0734b054db20.jpg[/img]

The old way: the Galactic Environment in DW1

As you probably appreciate, in Distant Worlds there is a vast galactic environment, filled with many items to explore and discover: stars, planets, moons, black holes, nebula clouds, and many others.

In Distant Worlds 1 (Universe and earlier) these items were mostly hand-drawn 2D images: there were a set of images for desert planets, another set of images for ocean planets, a set of images for nebula clouds, etc. In total there were about 250 images for planets alone. So there was a lot of hand-drawn art!

[img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/9f8b4b7152d4034b3ba089741b3ff325ecfa7c42.jpg[/img]

The advantage with static, hand-drawn art is that you can have very specific details in the art. For example you could have an image of the planet Earth in the game, complete with the continents, islands and oceans we know so well.

However there are some big drawbacks with static art:

  • 2D images and textured models have a resolution limit that is constrained by memory, thus when zoomed in their appearance can become blurry or pixelated
  • you typically need to draw each image or texture by hand, limiting how many variations you can realistically have. Although tools can help automate the generation of some images, you still have to store them and load them in game, which can take a lot of memory and storage

    Procedural rendering is an alternative to making a lot of hand-drawn art. It means writing software that knows how to draw a particular item. We can then draw as many variations of this item as needed, tweaking parameters to make changes to its appearance.

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/89f2ed891430035131d49e8dbb4c235fc60bd202.jpg[/img]

    The new, better way in DW2

    In Distant Worlds 2 nearly all of the galactic environment is procedurally rendered. That means that we use minimal hand-made art to draw the stars, planets, moons, black holes or nebula clouds in the game.

    Instead there are a set of custom shader programs that know how to draw each of these items:

  • a star shader that can draw brightly glowing coronas of semi-transparent gas and plasma
  • several shaders that draw planets with solid surfaces: some with a lot of mountains, others with deep oceans, others with glowing lava lakes
  • a shader that draws planets with gaseous surfaces with colored bands and swirling storms
  • another shader draws black holes
  • other shaders draw nebula clouds

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/c80a49188ffd5fb3498475e560b310b52f201c02.jpg[/img]

    How does it work?

    At the core of these shaders is a concept called fractal noise. Fractal noise refers to a set of special random values that are tuned for drawing a natural environment in a realistic manner.

    Fractal noise is a huge subject, which I won’t go into detail about here. But if you want to learn more you should look it up. You’ll see terms like Perlin noise and Simplex noise, which are good starting points.

    But how do these procedural shaders work? What process do they follow, and what do they allow us to do?

  • Firstly they use fractal noise to make a unique height map for each planet, allowing us to generate mountains, valleys, plains, coastlines and sub-oceanic terrain
  • applies shadowing from sun light on the mountains and hills to provide subtle realism to the terrain
  • if the planet is populated , adds city night lights that follow the natural geography of the planet, preferring low-lying and coastal areas (including underwater cities in shallow coastal regions)
  • provides light-emitting features like lava lakes and oceans
  • adds cloud layers with animated storm systems and shadows on the planet below
  • allows latitude-specific features: polar ice caps, equatorial jungle belts, deserts
  • allows altitude-specific terrain: snowy mountain tops, forested valleys, grassy plains and coastal areas, shallow underwater continental shelves, deep ocean basins

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/f57a610da1415ac37904b772e090e2f8ece1cfae.jpg[/img]

    Thus procedural shaders provide a vast improvement when rendering the natural environment in Distant Worlds, giving us an incredible level of detail and variety. The advantages of procedural rendering directly address the weaknesses of static art that we had in DW1:

  • because the shader programs operate on each pixel on the screen, there is no resolution limit. You can keep zooming in closely to an item without blurriness or loss of quality
  • by varying the input parameters for each shader you can obtain nearly infinite variety for an item, thus every planet in DW2 is unique
  • because no static images or textures are needed, there is a dramatic reduction in memory and storage requirements

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/f57a610da1415ac37904b772e090e2f8ece1cfae.jpg[/img]

    A Living, Animated Galaxy

    Procedural rendering also enables another feature: animation. The fractal noise used in the shaders can be multi-dimensional, so you can use one of the dimensions to represent change over time. This allows you to smoothly animate things that you draw. For example, we have the following in Distant Worlds 2:

  • cloud layers on planets that move and change
  • star coronas with prominences that rise and fall
  • gas giant planets with animated cloud surfaces
  • nebula clouds that smoothly change over time
  • black holes with swirling vortexes of light and energy

    Thus procedural rendering helps to bring the galaxy of Distant Worlds to life, with motion and activity even in the natural environment. It gives infinite variety and depth of appearance to all of the planets and stars.

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/e8afc211e776d452a1af9e162b5d420332b2fffb.jpg[/img]

    Modding

    You might be thinking: how does this affect modding? Can you easily mod new planet and star types into DW2? Or does this require special coding or shader skills?

    The good news is that modders also have access to these same shaders to make their own unique planets and stars – no special skills are required. By simply adding a few values to a file you can have a completely new type of planet available in the game. Your planet will have all the same features as the built-in planet types: hyper-detailed height maps with shadowing, animated cloud layers, city night lights when populated, planetary rings, etc.

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/f800790e1371c78400fdf7858c7040ddb6ada023.jpg[/img]

    Summary

    So how does procedural rendering improve the galactic environment in Distant Worlds?

  • provides infinite variety – no two planets in the galaxy are the same. They all have their own unique geographical features and coastlines
  • eliminates blurriness or pixelation. Everything remains sharp and clear even when zoomed in close
  • allows animation of features like star coronas, planetary clouds and nebula clouds
  • uses a lot less memory, thus freeing up resources for other rendering

    I hope you enjoyed this look at the galactic environment of Distant Worlds. I’ll be back later with more behind-the-scenes information about other features in Distant Worlds 2.

    [img]https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/39688059/2d949bb462f71e0af3748cde06922779285ecb86.jpg[/img]




  • timothyfarley -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 5:13:53 PM)

    Very informative & interesting; thanks for the update! Really loving the appearance of the planets, especially the sense of scale. Looking forward to release.




    Jorgen_CAB -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 5:55:01 PM)

    I think the game looks quite impressive... especially given that you have a relatively small team that work on this title in comparison to other similar games.

    This game seem to be a beauty to play as well as mentally challenging.




    rxnnxs -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 7:33:59 PM)

    Thank you very much for your insight!
    I am very much awaiting this game. As I saw today earlier the DevDiary Number 2, I loved those pictures and models!
    Tonight I came here to watch them again and let my fantasy imagine what an awesome game this is going to be!

    And now, you talk about the procedural generated planets and the kosmos! Very very nice!
    I love it, I love those games that always generate a new world to play in.
    But ther are some drawbacks that I really do not like.
    If you take for instance diablo or other games that also generate new worlds, you very quick find out: it always looks the same..
    Even worse, they have small levels, dungeons whatsoever, and this generated stuff is not very much giving life to the game.

    I am sure this can not be compared to distant worlds, because this kosmos is huge (I try not to use universe, because just yesterday I saw a video that talked about the name: universe: uni and verse, and this is not uni and it is not really verse, so better is to say kosmos, which much more describes the uniqueness and vastness of our multigalaxy spanning endless creation).
    sorry, back to what I just wanted to say in some short words and a question integrated:

    Is then every generated object in the game exactly the same after a save?
    I hope it will be, because it takes my immersion backwards when there is a planet, that had yesterday a astonishing coastline, and the next day when i zoom in, it is generated again, maybe in a fractal way, but still, its different than before!
    Now I know that it could be solved through a seed algorythm and I hope it is, but if not, I would prefer a switch that enables us to have the whole generated kosmos unique in a way that it will stay this way.

    You could now say this is impossible or has limitations, because when you (we, the player) zoom in for instance to a coastline, as said before, and the further we zoom in, the generated coast has to be saved for the next time we zoom in here it has to look the same as before.
    it is just the problem as for other space faring games where you can land on a planet where everything is genereated and then forgotten - otherwise the savegame file would break the gigabyte size limit (but there you can even manipulate the ground and build bases).
    to make my question not even longer than it already is -

    TLDR:
    could you please say if all the uni-verse that is then created stays the way or is forgotten the next zoom out?

    P.S.: Also, I really dislike games like the new elite (what was the name?) where you have a huuuuge galaxy but everywhere are ships. you fly to a saturn like planet, go into the belt, fly in, and there they are. WHAT?? I want to see places that no one ever has seen before, but then there they are: NPC ships that attack you and so on... Even here on earth, whereever we go, into the woods, as deep as you can.. well, everywhere is plastic stuff and garbage.. over the head there is a plane and so on... let this uni-verse have many places where no one was before, and other places where others were - aeons ago...
    Thank you for reading!

    P.P.S.:
    I just want to mention this idea you probably already discussed/implemented:
    The ability for you as well as for modders to implement partially or fully hand drawn objects into this procedural generated graphic.
    This way missions and special locations and races and missile silos and industry as well as other land marks can be placed and looked at even with a tactical advantage (amount of population, well defended planet, habitability..).




    Galaxy227 -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 7:51:38 PM)


    quote:

    ORIGINAL: Mantuvec

    Hello to all. My name is Elliot Gibbs, and I am the developer for Distant Worlds 2.

    Interesting, Elliot is finally coming out of his shell to talk about DW2...

    quote:

    This article has a slightly different focus. It will give you a behind-the-scenes look at a small slice of the game with an important on-screen role: the natural environment of the Distant Worlds galaxy. While this article is more technical, it will help you see “under-the-hood.” It will give you insight into how we solved some of the unique problems faced in a game as vast as Distant Worlds 2.

    I first read "technical," then "behind-the-scenes..." Blah, blah, blah. Ugh. What a waste of energy to anticipate this diary. Time to get bombarded with the mundanities of coding.

    quote:

    What is procedural rendering? This refers to drawing various parts of the game without using hand-made art assets. In other words, an item is rendered on the screen without using any artist-created models or images. Instead the item is drawn using only software instructions – the item is rendered in code.

    Oh wow! Procedural rendering? I love this stuff. I've spent way too much time in map-making software, story generators, dwarf fortress... This is getting interesting. Perhaps I doubted Elliot too soon.

    quote:

    That might not sound very useful. Why would you bother writing a lot of software to draw something in code instead of just having an artist make a 3D model, or draw a 2D image?

    Ah, yes. As a long-time user of procedural generation, I am now prepared to brag about how I already know this field better than most.

    quote:

    That depends on what you are drawing and the number of different items that need to be drawn.

    So true, Elliot. So true.

    quote:

    As you probably appreciate, in Distant Worlds there is a vast galactic environment, filled with many items to explore and discover: stars, planets, moons, black holes, nebula clouds, and many others.

    In Distant Worlds 1 (Universe and earlier) these items were mostly hand-drawn 2D images: there were a set of images for desert planets, another set of images for ocean planets, a set of images for nebula clouds, etc. In total there were about 250 images for planets alone. So there was a lot of hand-drawn art!

    Oh man... is he suggesting celestial objects are going to be procedurally generated? This could be huge.

    quote:

    However there are some big drawbacks with static art:

  • 2D images and textured models have a resolution limit that is constrained by memory, thus when zoomed in their appearance can become blurry or pixelated
  • you typically need to draw each image or texture by hand, limiting how many variations you can realistically have. Although tools can help automate the generation of some images, you still have to store them and load them in game, which can take a lot of memory and storage

    Procedural rendering is an alternative to making a lot of hand-drawn art. It means writing software that knows how to draw a particular item. We can then draw as many variations of this item as needed, tweaking parameters to make changes to its appearance.

  • Okay, yep. I know all this already. Let's get to the good stuff...

    quote:

    In Distant Worlds 2 nearly all of the galactic environment is procedurally rendered.

    I FOUND THE GOOD STUFF

    quote:

    That means that we use minimal hand-made art to draw the stars, planets, moons, black holes or nebula clouds in the game.

    Instead there are a set of custom shader programs that know how to draw each of these items:

  • a star shader that can draw brightly glowing coronas of semi-transparent gas and plasma
  • several shaders that draw planets with solid surfaces: some with a lot of mountains, others with deep oceans, others with glowing lava lakes
  • a shader that draws planets with gaseous surfaces with colored bands and swirling storms
  • another shader draws black holes
  • other shaders draw nebula clouds

  • Um... we're drawing entire PLANETS with procedural generation? Holy crap. I'm such a map nerd, this is huge. Everything will be so unique. I wonder how realistic it'll be.

    quote:

    At the core of these shaders is a concept called fractal noise. Fractal noise refers to a set of special random values that are tuned for drawing a natural environment in a realistic manner.

    Fractal noise is a huge subject, which I won’t go into detail about here. But if you want to learn more you should look it up. You’ll see terms like Perlin noise and Simplex noise, which are good starting points.

    But how do these procedural shaders work? What process do they follow, and what do they allow us to do?

  • Firstly they use fractal noise to make a unique height map for each planet, allowing us to generate mountains, valleys, plains, coastlines and sub-oceanic terrain
  • applies shadowing from sun light on the mountains and hills to provide subtle realism to the terrain
  • if the planet is populated , adds city night lights that follow the natural geography of the planet, preferring low-lying and coastal areas (including underwater cities in shallow coastal regions)
  • provides light-emitting features like lava lakes and oceans
  • adds cloud layers with animated storm systems and shadows on the planet below
  • allows latitude-specific features: polar ice caps, equatorial jungle belts, deserts
  • allows altitude-specific terrain: snowy mountain tops, forested valleys, grassy plains and coastal areas, shallow underwater continental shelves, deep ocean basins

  • This is beautiful. I've never read anything more beautiful.

    Let me explain. Firstly, I was raised as a Star Wars fan, through and through. Secondly, I have a wild fascination for all things related to the development of civilizations. Economics, warfare, traditions, technology, the rise and fall of empires—you get the gist. Thirdly, I'm obsessed with maps. I make maps about everything. For example, earlier this year I mapped my last playthrough in DW:U (here, unfinished). Now here I am, a lover of space operas, society, and maps, finding myself reading a developer diary perfectly encapsulating all three at once! And to think I called this diary boring for being too "technical." Hilarious.

    quote:

    Thus procedural shaders provide a vast improvement when rendering the natural environment in Distant Worlds, giving us an incredible level of detail and variety. The advantages of procedural rendering directly address the weaknesses of static art that we had in DW1:

  • because the shader programs operate on each pixel on the screen, there is no resolution limit. You can keep zooming in closely to an item without blurriness or loss of quality
  • by varying the input parameters for each shader you can obtain nearly infinite variety for an item, thus every planet in DW2 is unique
  • because no static images or textures are needed, there is a dramatic reduction in memory and storage requirements

  • "...giving us an incredible level of detail and variety." Fantastic. Words can't describe how excited that makes me.

    quote:

    Procedural rendering also enables another feature: animation. The fractal noise used in the shaders can be multi-dimensional, so you can use one of the dimensions to represent change over time. This allows you to smoothly animate things that you draw. For example, we have the following in Distant Worlds 2:

  • cloud layers on planets that move and change
  • star coronas with prominences that rise and fall
  • gas giant planets with animated cloud surfaces
  • nebula clouds that smoothly change over time
  • black holes with swirling vortexes of light and energy

    Thus procedural rendering helps to bring the galaxy of Distant Worlds to life, with motion and activity even in the natural environment. It gives infinite variety and depth of appearance to all of the planets and stars.

  • I'm speechless. This is by far my favorite diary so far. Elliot is my favorite person. My mind, body, and soul belong to the DW2 development team. I will now devote my life to Code Force; start a cult, organize funding, and develop a means to make Elliot immortal. He will code for the rest of eternity, and I will play Distant Worlds 2. Perfect.

    quote:

    You might be thinking: how does this affect modding? Can you easily mod new planet and star types into DW2? Or does this require special coding or shader skills?

    The good news is that modders also have access to these same shaders to make their own unique planets and stars – no special skills are required. By simply adding a few values to a file you can have a completely new type of planet available in the game. Your planet will have all the same features as the built-in planet types: hyper-detailed height maps with shadowing, animated cloud layers, city night lights when populated, planetary rings, etc.

    I've never modded before but a planet generator has me excited. I can make maps and play them in a simulated galaxy, teeming with life? Count me in.

    quote:

    So how does procedural rendering improve the galactic environment in Distant Worlds?

  • provides infinite variety – no two planets in the galaxy are the same. They all have their own unique geographical features and coastlines
  • eliminates blurriness or pixelation. Everything remains sharp and clear even when zoomed in close
  • allows animation of features like star coronas, planetary clouds and nebula clouds
  • uses a lot less memory, thus freeing up resources for other rendering

  • "Provides infinite variety..." This. A million times over. The other changes are great as well, especially the elimination of pixelation when zoomed in, but the infinite variety... this is what I needed.

    quote:

    I hope you enjoyed this look at the galactic environment of Distant Worlds. I’ll be back later with more behind-the-scenes information about other features in Distant Worlds 2.

    You're doing god's work Elliot. I don't think I've ever followed the development of a game as closely as I have with Distant Worlds 2. Words cannot describe how much I look forward to playing. Thank you for your work, and for this diary. Now I'm hungry for the next one!




    TSBasilisk -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 9:06:33 PM)

    Would it be possible to get like a video or gif showing a zoom in on a planet?
    quote:

    ORIGINAL: rxnnxs
    TLDR:
    could you please say if all the uni-verse that is then created stays the way or is forgotten the next zoom out?

    In this case I think the save file will include the fractal noise seed and other modifiers. So long as you have those values, it will always render the same. It's like using the same Minecraft seed - even though the game is generating the world new each time, the result will be the same. Computer "random" generation is only as random as we make the variables.




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (8/25/2021 10:30:59 PM)

    quote:

    ORIGINAL: rxnnxs
    TLDR:
    could you please say if all the uni-verse that is then created stays the way or is forgotten the next zoom out?

    Yes, the appearance will be retained across views and game sessions. You'll see the same-looking planet next time you look at it.

    quote:


    P.S.: Also, I really dislike games like the new elite (what was the name?) where you have a huuuuge galaxy but everywhere are ships. you fly to a saturn like planet, go into the belt, fly in, and there they are. WHAT?? I want to see places that no one ever has seen before, but then there they are: NPC ships that attack you and so on... Even here on earth, whereever we go, into the woods, as deep as you can.. well, everywhere is plastic stuff and garbage.. over the head there is a plane and so on... let this uni-verse have many places where no one was before, and other places where others were - aeons ago...
    Thank you for reading!

    Yes, there's plenty of that kind of thing out there to find - DW2 galaxies are big places.

    Of course, all the other factions are also keen to explore too, so you shouldn't waste time getting out into the galaxy yourself :)




    Bleek -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 7:56:03 AM)

    I have to say, that's pretty impressive.




    muncuss -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 8:34:43 AM)

    that last picture is very good




    Ranbir -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 12:00:27 PM)

    I'd love a gif showing vortex swirls.




    ElanaAhova_slith -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 2:37:29 PM)


    quote:

    ORIGINAL: elliotg

    quote:

    ORIGINAL: rxnnxs
    TLDR:
    could you please say if all the uni-verse that is then created stays the way or is forgotten the next zoom out?

    Yes, the appearance will be retained across views and game sessions. You'll see the same-looking planet next time you look at it.

    quote:


    P.S.: Also, I really dislike games like the new elite (what was the name?) where you have a huuuuge galaxy but everywhere are ships. you fly to a saturn like planet, go into the belt, fly in, and there they are. WHAT?? I want to see places that no one ever has seen before, but then there they are: NPC ships that attack you and so on... Even here on earth, whereever we go, into the woods, as deep as you can.. well, everywhere is plastic stuff and garbage.. over the head there is a plane and so on... let this uni-verse have many places where no one was before, and other places where others were - aeons ago...
    Thank you for reading!

    Yes, there's plenty of that kind of thing out there to find - DW2 galaxies are big places.

    Of course, all the other factions are also keen to explore too, so you shouldn't waste time getting out into the galaxy yourself :)


    I prefer to play on smaller maps. Will playing on smaller maps eliminate the unexplored by anyone aspect of the game? Yes, smaller game map means less 'unexplored by anyone' space -- but will it scale according to map size?

    BTW - Elliot - I haven't posted in many years. Enjoyed our posts when I helped play-test original DW. Glad to be back and looking forward to DW2. Your work has always been awesome.




    arvcran2 -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 5:01:19 PM)

    This gives me a whole new appreciation for the DW2 planets!




    USSAmerica -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 7:59:51 PM)

    Beautiful stuff, Elliot! [sm=00000436.gif]




    WiZz -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 8:10:56 PM)

    It's very nice, but... I'm still missing moving planets and moons from DW1.[:(]




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 10:08:40 PM)

    quote:

    ORIGINAL: ElanaAhova_slith
    I prefer to play on smaller maps. Will playing on smaller maps eliminate the unexplored by anyone aspect of the game? Yes, smaller game map means less 'unexplored by anyone' space -- but will it scale according to map size?

    If you start in the default PreWarp mode then all the factions will be in their home system and will move out to explore from there. So there's still plenty to find even in small galaxies.

    quote:


    BTW - Elliot - I haven't posted in many years. Enjoyed our posts when I helped play-test original DW. Glad to be back and looking forward to DW2. Your work has always been awesome.

    Thanks for your help back then :) Nice to see you around.




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (8/26/2021 10:10:56 PM)

    quote:

    ORIGINAL: Grognerd_INC
    Will it be possible to add hand-drawn graphics to mod in planet Earth?

    Yes, you can use static textures on a planet if you wish.

    The asteroids work that way. They are actually the only element of the natural environment that don't use procedural rendering.




    ElanaAhova_slith -> RE: Distant Worlds 2 - Dev Diary #3 (8/27/2021 1:25:48 AM)

    Thank you for reply.




    TSBasilisk -> RE: Distant Worlds 2 - Dev Diary #3 (8/27/2021 2:53:32 AM)

    For drawing your own custom planets, is that able to benefit from the secondary features of the fractal generation - city lights, clouds, etc.? I imagine you'd have something like that for any unique planets you might add to the game, such as homeworlds. Would you need to create a height map to accompany the terrain drawing for example or would the engine be able to do that on its own?




    sinbuster -> RE: Distant Worlds 2 - Dev Diary #3 (8/27/2021 4:01:45 AM)


    quote:

    ORIGINAL: muncuss

    that last picture is very good


    It's very much this why I'm so excited for DW2. The scale of planets to ships is so much more realistic now. Those city lights are likewise excellent. I can't wait to just set up the camera and watch.




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (8/27/2021 4:06:40 AM)

    quote:

    ORIGINAL: TSBasilisk
    For drawing your own custom planets, is that able to benefit from the secondary features of the fractal generation - city lights, clouds, etc.? I imagine you'd have something like that for any unique planets you might add to the game, such as homeworlds. Would you need to create a height map to accompany the terrain drawing for example or would the engine be able to do that on its own?

    If you want to use the built-in procedural planet or star shaders then you get access to all of the rendering features. But if you choose to use static textures, then the following features could still work with it:
    - animated cloud layers
    - atmospheric haze
    - planetary rings

    The city night lights and terrain shadowing rely on the procedural height map, which you forgo if you choose to instead use static textures. Of course along with the static textures you would have access to all the standard material features: normal maps, emissive maps, specularity, etc.





    TSBasilisk -> RE: Distant Worlds 2 - Dev Diary #3 (8/27/2021 4:17:51 AM)

    Thanks for the insight; I expected there'd be some trade-off.




    Hanekem -> RE: Distant Worlds 2 - Dev Diary #3 (8/28/2021 3:40:51 PM)

    This sounds kinda awesome, on the technical level
    on the player level, I am ambivalent, eye candy is always nice but my experience with DW I rarely tended to be zoomed into things.
    Frankly, I'd rather have quick and easy visibility that gives me substantial info, so a type of planet needs to be very distinct from the next. Admittedly, the eye candy is nice and helps with the immersion, and I am sure it will help with the game's first impression

    Don't get me wrong, it looks amazing, and I'll love to see it in game, but it is bling, nice bling, but ultimately bling.
    I'd rather have celestial mechanics than unique looking planets, tbh.

    But I'll easily admit this is more likely to bring in customers




    SirHoraceHarkness -> RE: Distant Worlds 2 - Dev Diary #3 (8/28/2021 5:53:35 PM)

    This is one I don't think people have asked about but will there be the ability to make system templates for galaxy creation? As in you recreate the solar system and the game will use that as your starting system if you pick humans? It could also help to make galaxy creation a little less random by having a certain amount of systems contents predetermined.




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (8/29/2021 1:06:33 AM)

    quote:

    ORIGINAL: SirHoraceHarkness
    This is one I don't think people have asked about but will there be the ability to make system templates for galaxy creation? As in you recreate the solar system and the game will use that as your starting system if you pick humans? It could also help to make galaxy creation a little less random by having a certain amount of systems contents predetermined.

    We have that kind of thing available from the Game Event system, and we use it for some of the story events. This mechanism could be used to modify the player's starting system. It's not so much a star system template as the ability to add new planets to a system.




    Lobster -> RE: Distant Worlds 2 - Dev Diary #3 (8/30/2021 7:18:45 PM)

    No Man's Sky uses procedural rendering. Only way you can have quitillions of planets.

    Looking foward to DW2




    Rising-Sun -> RE: Distant Worlds 2 - Dev Diary #3 (9/1/2021 8:19:20 AM)


    quote:

    ORIGINAL: Lobster

    No Man's Sky uses procedural rendering. Only way you can have quitillions of planets.

    Looking foward to DW2


    Been playing that game, it is interesting, but not realistic. Been trying to find a way to enjoy it as single play in survival mode.




    dawilko -> RE: Distant Worlds 2 - Dev Diary #3 (9/2/2021 1:34:49 AM)

    Love the update, thankyou for sharing.




    zgrssd -> RE: Distant Worlds 2 - Dev Diary #3 (10/28/2021 6:35:57 PM)


    quote:

    ORIGINAL: elliotg

    quote:

    ORIGINAL: TSBasilisk
    For drawing your own custom planets, is that able to benefit from the secondary features of the fractal generation - city lights, clouds, etc.? I imagine you'd have something like that for any unique planets you might add to the game, such as homeworlds. Would you need to create a height map to accompany the terrain drawing for example or would the engine be able to do that on its own?

    If you want to use the built-in procedural planet or star shaders then you get access to all of the rendering features. But if you choose to use static textures, then the following features could still work with it:
    - animated cloud layers
    - atmospheric haze
    - planetary rings

    The city night lights and terrain shadowing rely on the procedural height map, which you forgo if you choose to instead use static textures. Of course along with the static textures you would have access to all the standard material features: normal maps, emissive maps, specularity, etc.



    Some questions:
    1. Could you allow modders to manually define a height map? You already planned for hand-drawn textures, the height-map would be just another input.
    Actually providing the custom height map might be more interesting in the first place: Being able to see the same topography in different climates and levels of colonisation might be interesting.

    2. Will it be possible to extract the Seeds for each procedural step from a existing games planet?
    Effectively giving us a way to "re-use" a well generated world in future maps via map editing?
    This would also be nessesary for bugfixing, as the procedural drawing code might break.




    elliotg -> RE: Distant Worlds 2 - Dev Diary #3 (10/29/2021 12:04:13 AM)

    quote:

    ORIGINAL: zgrssd


    quote:

    ORIGINAL: elliotg

    quote:

    ORIGINAL: TSBasilisk
    For drawing your own custom planets, is that able to benefit from the secondary features of the fractal generation - city lights, clouds, etc.? I imagine you'd have something like that for any unique planets you might add to the game, such as homeworlds. Would you need to create a height map to accompany the terrain drawing for example or would the engine be able to do that on its own?

    If you want to use the built-in procedural planet or star shaders then you get access to all of the rendering features. But if you choose to use static textures, then the following features could still work with it:
    - animated cloud layers
    - atmospheric haze
    - planetary rings

    The city night lights and terrain shadowing rely on the procedural height map, which you forgo if you choose to instead use static textures. Of course along with the static textures you would have access to all the standard material features: normal maps, emissive maps, specularity, etc.



    Some questions:
    1. Could you allow modders to manually define a height map? You already planned for hand-drawn textures, the height-map would be just another input.
    Actually providing the custom height map might be more interesting in the first place: Being able to see the same topography in different climates and levels of colonisation might be interesting.

    The height map is tightly integrated with the rest of the procedural rendering. It is not a static thing, but is dynamically generated for each pixel when rendering the planet. So no, it is not possible to supply this externally. You have to choose either static planet drawing or leveraging the built-in procedural planet rendering.

    quote:


    2. Will it be possible to extract the Seeds for each procedural step from a existing games planet?
    Effectively giving us a way to "re-use" a well generated world in future maps via map editing?
    This would also be nessesary for bugfixing, as the procedural drawing code might break.

    It may be possible to do something like this in the future, however there is more than just a single seed value that defines the appearance of the planet. The planet type itself (volcanic, ocean, etc) defines a set of values, including the actual procedural shader selected. So all of these values work together to render the planet.




    Page: [1] 2   next >   >>

    Valid CSS!




    Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI
    0.765625