NoMansSky:Reference Guides/AsteroidGeneration: Difference between revisions
From Step Mods | Change The Game
TechAngel85 (talk | contribs) |
TechAngel85 (talk | contribs) |
||
Line 74: | Line 74: | ||
== Understanding the Noise Field == | == Understanding the Noise Field == | ||
Asteroids are spawned within a spherical noise field using a waveform. This field starts at <code>0</code>, or the center of the sphere, and ends at <code>1</code>. | Asteroids are spawned within a spherical noise field using a waveform. This field starts at <code>0</code>, or the center of the sphere, and ends at <code>1</code>. To help align within the field consider it on a X, Y, Z-axis: | ||
* X= horizontal width of field (can not be controlled / center plane that asteroids are spawned along) | |||
* Y= field width (depth) along the X-axis = '''NoiseRange''' | |||
* Z= field width above and below the X-axis = '''NoiseScale''' | |||
=== NoiseRange Details === | === NoiseRange Details === | ||
=== NoiseScale Details === | === NoiseScale Details === |
Revision as of 06:14, August 7, 2022
Introduction[edit | edit source]
Yay! Space balls!
Properties[edit | edit source]
All of the properties for asteroid generation are contained with the GCSOLARGENERATIONGLOBALS.GLOBAL file.
- PlanetInvalidAsteroidZone
-
- The distance around planets that no asteroids will spawn.
- AsteroidsEnabled
-
- Enables or disables the asteroid generation altogether.
True
= generate asteroids
- SparseAsteroidSpread
-
- "Sparse Asteroids" are the asteroids floating out in space not connected to any asteroid fields. This determines how sparse they will be.
- Lower values = more sparse
- LargeAsteroidFadeTime
-
- The time it takes the large asteroids to fade from view.
- AsteroidNoiseOctaves
- This controls the waveform used for generating the noise field. The higher the setting the more granular the changes in the shape of the waves.
AsteroidSettings Property[edit | edit source]
Within the AsteroidSettings property container are sub-containers for each of the asteroid types, which hold all the settings for the generation of that specific asteroid type. Since each of these are identical besides a change in type, only the Common asteroids will be covered. What is learned here can be applied to the other sub-containers.
Code[edit | edit source]
<Property name="AsteroidSettings">
<Property value="GcAsteroidSystemGenerationData.xml">
<Property name="CommonAsteroidData" value="GcAsteroidGenerationData.xml">
<Property name="Scale" value="0.28" />
<Property name="ScaleVariance" value="Vector2f.xml">
<Property name="x" value="0.25" />
<Property name="y" value="1.6" />
</Property>
<Property name="Health" value="1000" />
<Property name="Spacing" value="645" />
<Property name="NoiseRange" value="Vector2f.xml">
<Property name="x" value="0.78" />
<Property name="y" value="0.92" />
</Property>
<Property name="FadeRange" value="9000" />
<Property name="NoiseScale" value="50000" />
</Property>
- Scale
-
- The initial size of the asteroid.
- ScaleVariance
-
- Starting from the Scale, above, this controls the variance range asteroids will spawn in size.
- x= minimum size // y= maximum size
- Health
-
- The amount of damage the asteroid will receive before being destroyed.
- Spacing
-
- The minimum distance the asteroids will spawn from one another.
- NoiseRange
-
- The position within the "total noise field" that the asteroid field, itself, will spawn.
- Also determines the width of the asteroid field along the y-axis.
- See detailed description below
- FadeRange
-
- The distance at which point the asteroids will start to fade from view.
- NoiseScale
-
- The distance from the center plane that the asteroids will spawn on the +- Z-axis.
- See detailed description below
Understanding the Noise Field[edit | edit source]
Asteroids are spawned within a spherical noise field using a waveform. This field starts at 0
, or the center of the sphere, and ends at 1
. To help align within the field consider it on a X, Y, Z-axis:
- X= horizontal width of field (can not be controlled / center plane that asteroids are spawned along)
- Y= field width (depth) along the X-axis = NoiseRange
- Z= field width above and below the X-axis = NoiseScale