Asteroid(s)

A quieter space for design discussion of long-term projects
impaktor
Posts: 906
Joined: Fri Dec 20, 2013 9:54 am
Location: Tellus
Contact:

Re: Asteroid(s)

Post by impaktor »

Very nice.

Seems like the Google+ post isn't public.
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

OK, so asteroids can be for:
  • Pebbles and boulders in rings - This would probably work best in combination with a bunch of custom modelled pebble / boulders that you could swap the textures on in the code [*1]
  • Lagrangian points - This is for the Trojan type of asteroid location? There should be "trojan" class that spawns asteroids along the orbit of the planet at the correct Lagrangian points [*2]
  • Kuiper belt? - Nice idea but it's so very very very far away it might take hours to fly to them [*3]
  • Forming planet/body? - I guess in theory but I think too complicated for now.
  • Random asteroid floating about? - The easiest, just another body in the system, we wouldn't need any class to manage these we could just add them as bodies like planets on orbital rails.
So more detail:
  1. What I mean by this is you have say 5 different "boulders", and 5 textures, but any boulder can use any texture so there's actually 5 * 5 = 25 combinations of boulders / pebbles / etc.
  2. Trojans would want to be more frequent nearer the planet, maybe bigger too. Sort of a cone distribution with the wide end nearest the planet?
  3. Seriously, the Kuiper belt is a LONG way away.
I'd add that these could be used for small moons too, but with different distribution types. Currently I just randomly mutate them to get their final shape, but the way they can be deformed doesn't have to work like that. Also for larger bodies the actual amount of deformation can be less and spread across a wider area so you produce gentle bumps / dents rather than massively deforming the whole body.

That way you can have super-deformed small asteroids, or gently lumpy bigger bodies.
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

impaktor wrote:Very nice.

Seems like the Google+ post isn't public.
I've re-shared it and updated the link, stupid G+ posts!
Trying not to use Uppix but can't login to my FTP server to upload to my website either.
impaktor
Posts: 906
Joined: Fri Dec 20, 2013 9:54 am
Location: Tellus
Contact:

Re: Asteroid(s)

Post by impaktor »

Could a first end goal be a way of implementing Halley's comet in Sol system?

These things probably require a bit of non-trivial work, I assume:
  • Defining asteroid orbit i lua from custom system scripts.
  • Defining size and "sphericity" of asteroid?
  • Be able to filter it out in orbit view, like with ships/planets? Or always visible?
  • Be able to select it as destination?
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

  • Defining asteroid orbit in lua from custom system scripts - this should be the same as for a planet, it's just an orbit even if it is very elliptical/eccentric.
  • Defining size and "sphericity" of asteroid? - size & mass leads to the values that define the height and radius of the "bumps" that form the asteroid, so given a radius and mass (like a planet) I should be able to make it "just-work".
  • Be able to filter it out in orbit view, like with ships/planets? Or always visible? - invisible by default I think, I'd maybe not show them at all but that's up to taste I guess.
  • Be able to select it as destination? - same as above, if you can see it you can target it, but I like the idea of just trying to hunt them down :)
As I said my first plan is to treat the rings as a parent object for generating & managing some asteroids.
As you get close I'll try fading it out and then have it create a bunch of asteroids to fill in the space somehow... not sure yet, all up in my head still.

So if you want to try adding Haley's comet as a planet then I can fixup the object and rendering afterwards? Then we could have Rings with Rock and Haley's comet.

Also, this should now compile and run in Linux. Or at least it does on my Linux PC now that I've fixed the makefiles, case sensitive paths and shadowed variables etc :)
impaktor
Posts: 906
Joined: Fri Dec 20, 2013 9:54 am
Location: Tellus
Contact:

Re: Asteroid(s)

Post by impaktor »

Hm, so how do you "stumble upon them"? Does the player need to be within a certain distance from it? Will there be a label showing up in Worldview/F1? Will time accel stop, and warn of nearby object?

I'll see if I can add a rockyworld with correct parameter for Halley's comet (in the coming days); unless someone beats me to it.

If (in future) player gets a mission to an asteroid, or wants to go there to mine them, then I'm thinking you'd like to be able to set course for either the L_4 and L_5 points of a body (like Trojan group for Jupiter), or be able to select a position of a know asteroid field/group/single asteroid. In OrbitView perhaps.

Another thing that might be useful, to add the Mars-Jupiter asteroid belt:
  • Be able to specify an asteroid belt: start_distance and stop_distance from system star/centre of mass, and perhaps density of field.
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

By "stumble upon" I mean that you would get within some huge distance of them like the distance from the Earth to the Moon (384,400 km), or maybe even further like a million kilometres, but I think it would depend on the type of manager object.

So yes you'd head to places where asteroids should be and as you got within range you'd start to discover them and the manager object creates them for you.

A belt would be another manager type so far that means we've got Belts, Rings, Trojans, and Kuiper manager classes.
Then the "loose" kind of asteroid that is just a regular body with orbit etc like a planet.
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

Notes for myself since I'm at work:

TEXTURES:
Currently uses 4 texture slots (Diffuse, Specular, AO, Normal) however I need to add a blend-depth to the Diffuse in it's alpha channel so I can fix the blend issues caused by triplanar mapping.
Then I encode the Normal map to use just two channels. After that I can pack the Specular power and AO multiplier into the remaining channels to get just two texture slots containing (Diffuse+blend) & (Normal+Specular+AO).
Once that's done I can have some other textures meaning I can use one texture for flat/smooth surfaces and another to vertical/rough surfaces and blend between them in the shader. I could even try to use a lookup map like the terrain texturing system I looked into using either an atlas or texture array(s).

GENERATION:
Currently only using round bumps/dents with linear falloff so two obvious changes are to provide more falloff types and to provide none-radius based shapes.
Falloff types could be based on those from "Easing.h" like Quad, Sine, etc.
Shapes could simply be elliptical, rectangular, triangluar etc.

I can calculate the max/min heights involved for each vertex or the difference between the original sphere shape, also the surface slope as related to the original spheres centre. These could act as input into further surface modification passes using noise or to later decoration passes.

DECORATION:
Looking at 67P/Churyumov–Gerasimenko it's clear that not only is there surface detail and texture there is also debris in the form of boulders, stones and pebbles that could be placed and blended into the surface. The information about where to place all of this detail could come from the "height" & "slope" data calculated earlier for use with texture blending.

General analysis of terrain types so far.
FluffyFreak
Posts: 1314
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Asteroid(s)

Post by FluffyFreak »

@nozmajner: You've been thinking about asteroid bases for a while now haven't you?
nozmajner
Posts: 1038
Joined: Mon Jul 01, 2013 3:25 pm
Location: Budapest HU

Re: Asteroid(s)

Post by nozmajner »

I'm thinking too much I'm afraid. :)
Post Reply