Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
path: root/sky
diff options
context:
space:
mode:
Diffstat (limited to 'sky')
-rw-r--r--sky/sky01.xml559
-rw-r--r--sky/sky21.xml335
-rw-r--r--sky/sky22.xml270
-rw-r--r--sky/tutorial-01.xml66
-rw-r--r--sky/tutorial-02.xml129
-rw-r--r--sky/tutorial-03.xml198
-rw-r--r--sky/tutorial-04.xml217
-rw-r--r--sky/tutorial-05.xml236
-rw-r--r--sky/tutorial-06.xml255
-rw-r--r--sky/tutorial-07.xml274
-rw-r--r--sky/tutorial-08.xml293
11 files changed, 2543 insertions, 289 deletions
diff --git a/sky/sky01.xml b/sky/sky01.xml
index a84cc5f..e811fa8 100644
--- a/sky/sky01.xml
+++ b/sky/sky01.xml
@@ -1,289 +1,270 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<spacescapelayers>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars white</name>
- <nearColor>1 1 1 1</nearColor>
- <numPoints>10000</numPoints>
- <pointSize>1</pointSize>
- <seed>56</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars purple</name>
- <nearColor>0.666667 0.333333 1 1</nearColor>
- <numPoints>10000</numPoints>
- <pointSize>1</pointSize>
- <seed>5695</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars blue</name>
- <nearColor>0.0431373 0.905882 1 1</nearColor>
- <numPoints>10000</numPoints>
- <pointSize>1</pointSize>
- <seed>3691</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars white large</name>
- <nearColor>1 1 1 1</nearColor>
- <numPoints>2500</numPoints>
- <pointSize>2</pointSize>
- <seed>78</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars purple large</name>
- <nearColor>0.666667 0.333333 1 1</nearColor>
- <numPoints>2500</numPoints>
- <pointSize>2</pointSize>
- <seed>2721</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <farColor>0 0 0 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>1</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>1</maskSeed>
- <maskThreshold>0</maskThreshold>
- <name>point stars blue large</name>
- <nearColor>0.0431373 0.905882 1 1</nearColor>
- <numPoints>2500</numPoints>
- <pointSize>2</pointSize>
- <seed>3675</seed>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>points</type>
- </layer>
- <layer>
- <destBlendFactor>dest_colour</destBlendFactor>
- <farColor>1 1 1 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType></maskNoiseType>
- <maskOctaves>2</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>7</maskSeed>
- <maskThreshold>0</maskThreshold>
- <maxSize>0.015</maxSize>
- <minSize>0.005</minSize>
- <name>billboard stars white</name>
- <nearColor>1 1 1 1</nearColor>
- <numBillboards>250</numBillboards>
- <seed>91</seed>
- <sourceBlendFactor>src_colour</sourceBlendFactor>
- <texture>osirion-flare-04.png</texture>
- <type>billboards</type>
- </layer>
- <layer>
- <destBlendFactor>dest_colour</destBlendFactor>
- <farColor>1 1 1 1</farColor>
- <maskEnabled>false</maskEnabled>
- <maskGain>0.5</maskGain>
- <maskLacunarity>2</maskLacunarity>
- <maskNoiseType>fbm</maskNoiseType>
- <maskOctaves>2</maskOctaves>
- <maskOffset>1</maskOffset>
- <maskPower>1</maskPower>
- <maskScale>1</maskScale>
- <maskSeed>7</maskSeed>
- <maskThreshold>0</maskThreshold>
- <maxSize>0.015</maxSize>
- <minSize>0.005</minSize>
- <name>billboard stars blue</name>
- <nearColor>0.333333 0.666667 1 1</nearColor>
- <numBillboards>250</numBillboards>
- <seed>5976</seed>
- <sourceBlendFactor>src_colour</sourceBlendFactor>
- <texture>osirion-flare-07.png</texture>
- <type>billboards</type>
- </layer>
- <layer>
- <destBlendFactor>one_minus_src_alpha</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.5</gain>
- <innerColor>0 0 0 1</innerColor>
- <lacunarity>2</lacunarity>
- <name>background dust</name>
- <noiseType>ridged</noiseType>
- <octaves>8</octaves>
- <offset>1</offset>
- <outerColor>0 0 0 1</outerColor>
- <powerAmount>0.5</powerAmount>
- <previewTextureSize>256</previewTextureSize>
- <scale>1</scale>
- <seed>0</seed>
- <shelfAmount>0.8</shelfAmount>
- <sourceBlendFactor>zero</sourceBlendFactor>
- <type>noise</type>
- </layer>
- <layer>
- <destBlendFactor>one_minus_src_alpha</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.5</gain>
- <innerColor>0.552941 0.552941 0.415686 1</innerColor>
- <lacunarity>5</lacunarity>
- <name>nebula brown</name>
- <noiseType>fbm</noiseType>
- <octaves>8</octaves>
- <offset>1</offset>
- <outerColor>0 0 0 1</outerColor>
- <powerAmount>0.5</powerAmount>
- <previewTextureSize>256</previewTextureSize>
- <scale>1</scale>
- <seed>0</seed>
- <shelfAmount>0</shelfAmount>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>noise</type>
- </layer>
- <layer>
- <destBlendFactor>one_minus_src_alpha</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.2</gain>
- <innerColor>0.435294 0.494118 0.54902 1</innerColor>
- <lacunarity>5</lacunarity>
- <name>nebula blue</name>
- <noiseType>fbm</noiseType>
- <octaves>12</octaves>
- <offset>1</offset>
- <outerColor>0 0 0 1</outerColor>
- <powerAmount>0.4</powerAmount>
- <previewTextureSize>256</previewTextureSize>
- <scale>0.5</scale>
- <seed>458</seed>
- <shelfAmount>0</shelfAmount>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>noise</type>
- </layer>
- <layer>
- <destBlendFactor>one_minus_src_alpha</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.5</gain>
- <innerColor>0 0 0 1</innerColor>
- <lacunarity>2</lacunarity>
- <name>nebula black</name>
- <noiseType>ridged</noiseType>
- <octaves>8</octaves>
- <offset>1</offset>
- <outerColor>0 0 0 1</outerColor>
- <powerAmount>0.1</powerAmount>
- <previewTextureSize>256</previewTextureSize>
- <scale>1</scale>
- <seed>0</seed>
- <shelfAmount>0</shelfAmount>
- <sourceBlendFactor>zero</sourceBlendFactor>
- <type>noise</type>
- </layer>
- <layer>
- <destBlendFactor>one</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.5</gain>
- <innerColor>0.435294 1 0.670588 1</innerColor>
- <lacunarity>2</lacunarity>
- <name>nebula green</name>
- <noiseType>ridged</noiseType>
- <octaves>8</octaves>
- <offset>1</offset>
- <outerColor>0 0 0 1</outerColor>
- <powerAmount>0.05</powerAmount>
- <previewTextureSize>512</previewTextureSize>
- <scale>1</scale>
- <seed>58913</seed>
- <shelfAmount>0.5</shelfAmount>
- <sourceBlendFactor>one</sourceBlendFactor>
- <type>noise</type>
- </layer>
- <layer>
- <destBlendFactor>src_alpha</destBlendFactor>
- <ditherAmount>0.03</ditherAmount>
- <gain>0.5</gain>
- <innerColor>0 0 1 1</innerColor>
- <lacunarity>2</lacunarity>
- <name>nebula blue</name>
- <noiseType>ridged</noiseType>
- <octaves>10</octaves>
- <offset>1</offset>
- <outerColor>0 0 0.337255 1</outerColor>
- <powerAmount>1.5</powerAmount>
- <previewTextureSize>256</previewTextureSize>
- <scale>1</scale>
- <seed>7890</seed>
- <shelfAmount>0</shelfAmount>
- <sourceBlendFactor>one_minus_src_alpha</sourceBlendFactor>
- <type>noise</type>
- </layer>
-</spacescapelayers>
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>56</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars purple</name>
+ <nearColor>0.666667 0.333333 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>5695</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars blue</name>
+ <nearColor>0.0431373 0.905882 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3691</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>78</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars purple large</name>
+ <nearColor>0.666667 0.333333 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>2721</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars blue large</name>
+ <nearColor>0.0431373 0.905882 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>3675</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>dest_colour</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>2</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>7</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>91</seed>
+ <sourceBlendFactor>src_colour</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>2</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>7</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars blue</name>
+ <nearColor>0.333333 0.666667 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>5976</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-08.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 1 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>nebula dark blue</name>
+ <noiseType>fbm</noiseType>
+ <octaves>10</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.75</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>7890</seed>
+ <shelfAmount>0</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.01</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2</lacunarity>
+ <name>background dust</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.5</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>0</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0.435294 1 0.670588 1</innerColor>
+ <lacunarity>2</lacunarity>
+ <name>nebula green</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.05</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>58913</seed>
+ <shelfAmount>0.4</shelfAmount>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0.552941 0.552941 0.415686 1</innerColor>
+ <lacunarity>5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.5</powerAmount>
+ <previewTextureSize>256</previewTextureSize>
+ <scale>1</scale>
+ <seed>0</seed>
+ <shelfAmount>0</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.2</gain>
+ <innerColor>0.360784 0.670588 1 1</innerColor>
+ <lacunarity>5</lacunarity>
+ <name>nebula blue</name>
+ <noiseType>fbm</noiseType>
+ <octaves>10</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1.5</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>0.25</scale>
+ <seed>458</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/sky21.xml b/sky/sky21.xml
new file mode 100644
index 0000000..3afd81e
--- /dev/null
+++ b/sky/sky21.xml
@@ -0,0 +1,335 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>134</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>135</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars blue</name>
+ <nearColor>0.333333 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>136</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>0.333333 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>137</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars purple</name>
+ <nearColor>1 0.666667 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>138</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars purple large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>139</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars blue</name>
+ <nearColor>0.333333 0.666667 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>140</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>142</seed>
+ <shelfAmount>0.2</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.666667 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.498039 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>143</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0.333333 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars green</name>
+ <nearColor>0 0.666667 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>141</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-03.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0.666667 0.666667 0 1</innerColor>
+ <lacunarity>3</lacunarity>
+ <name>nebula streaks</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 0</outerColor>
+ <powerAmount>0.2</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>150</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0.333333 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0.141176 0.0705882 0.211765 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>152</seed>
+ <shelfAmount>0.15</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.75</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula ridges</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 0</outerColor>
+ <powerAmount>0.25</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>152</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.6</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2</lacunarity>
+ <name>nebula highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0.666667 0.498039 1</outerColor>
+ <powerAmount>0.8</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>152</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.2</gain>
+ <innerColor>1 1 1 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>nebula spots</name>
+ <noiseType>fbm</noiseType>
+ <octaves>6</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.4</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>152</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0.580392 0.580392 0.580392 1</farColor>
+ <maskEnabled>true</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0.5</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>100</numBillboards>
+ <seed>152</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>default.png</texture>
+ <type>billboards</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/sky22.xml b/sky/sky22.xml
new file mode 100644
index 0000000..133edcb
--- /dev/null
+++ b/sky/sky22.xml
@@ -0,0 +1,270 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>0.490196 0.490196 0.490196 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>101</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>0.227451 0 0.345098 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars purple</name>
+ <nearColor>0.666667 0.333333 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>102</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>0.203922 0.203922 0.615686 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars blue</name>
+ <nearColor>0.333333 0.333333 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>103</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>104</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>0.333333 0.333333 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars green large</name>
+ <nearColor>0.211765 0.427451 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>105</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars blue large</name>
+ <nearColor>0.0431373 0.905882 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>106</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>0.580392 0.580392 0.580392 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>2</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>7</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>107</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>true</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>2</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>7</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.004</minSize>
+ <name>billboard stars blue</name>
+ <nearColor>0.47451 0.745098 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>121</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.03</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>0.75</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>120</seed>
+ <shelfAmount>0.1</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0.45098 0.45098 1</innerColor>
+ <lacunarity>2</lacunarity>
+ <name>nebula cyan</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>121</seed>
+ <shelfAmount>0.2</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 1 0.498039 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula cyan highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>121</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 1 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula yellow</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>139</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0 0 1</innerColor>
+ <lacunarity>2.75</lacunarity>
+ <name>nebula yellow highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>139</seed>
+ <shelfAmount>0.6</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-01.xml b/sky/tutorial-01.xml
new file mode 100644
index 0000000..ce7e556
--- /dev/null
+++ b/sky/tutorial-01.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-02.xml b/sky/tutorial-02.xml
new file mode 100644
index 0000000..26d95d2
--- /dev/null
+++ b/sky/tutorial-02.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-03.xml b/sky/tutorial-03.xml
new file mode 100644
index 0000000..658a15c
--- /dev/null
+++ b/sky/tutorial-03.xml
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-04.xml b/sky/tutorial-04.xml
new file mode 100644
index 0000000..9ef626c
--- /dev/null
+++ b/sky/tutorial-04.xml
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>578</seed>
+ <shelfAmount>0.25</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-05.xml b/sky/tutorial-05.xml
new file mode 100644
index 0000000..6b893d9
--- /dev/null
+++ b/sky/tutorial-05.xml
@@ -0,0 +1,236 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>578</seed>
+ <shelfAmount>0.25</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0.666667 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0.666667 0.333333 0 0</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.15</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-06.xml b/sky/tutorial-06.xml
new file mode 100644
index 0000000..ea892e3
--- /dev/null
+++ b/sky/tutorial-06.xml
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>578</seed>
+ <shelfAmount>0.25</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0.666667 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0.666667 0.333333 0 0</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.15</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.6</gain>
+ <innerColor>1 1 1 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>1 1 0.498039 1</outerColor>
+ <powerAmount>0.85</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.55</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-07.xml b/sky/tutorial-07.xml
new file mode 100644
index 0000000..63cd291
--- /dev/null
+++ b/sky/tutorial-07.xml
@@ -0,0 +1,274 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>578</seed>
+ <shelfAmount>0.25</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0.666667 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0.666667 0.333333 0 0</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.15</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.6</gain>
+ <innerColor>1 1 1 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>1 1 0.498039 1</outerColor>
+ <powerAmount>0.85</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.55</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.75</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula ridges</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 0</outerColor>
+ <powerAmount>0.25</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>
diff --git a/sky/tutorial-08.xml b/sky/tutorial-08.xml
new file mode 100644
index 0000000..da5ff3e
--- /dev/null
+++ b/sky/tutorial-08.xml
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<spacescapelayers>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3856</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars white large</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>38576</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>382</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>0 0 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars yellow large</name>
+ <nearColor>1 1 0 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>13831</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>10000</numPoints>
+ <pointSize>1</pointSize>
+ <seed>3821</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 0 0 0</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType>fbm</maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <name>point stars orange large</name>
+ <nearColor>1 0.658824 0.345098 1</nearColor>
+ <numPoints>2500</numPoints>
+ <pointSize>2</pointSize>
+ <seed>9823344</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>points</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 1 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.012</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars white</name>
+ <nearColor>1 1 1 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>629</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one</destBlendFactor>
+ <farColor>1 1 0 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.015</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars yellow</name>
+ <nearColor>1 1 0.25098 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>631</seed>
+ <sourceBlendFactor>one</sourceBlendFactor>
+ <texture>osirion-flare-07.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>4</lacunarity>
+ <name>background dust</name>
+ <noiseType>fbm</noiseType>
+ <octaves>4</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 1</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>578</seed>
+ <shelfAmount>0.25</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <farColor>1 0.25098 0.25098 1</farColor>
+ <maskEnabled>false</maskEnabled>
+ <maskGain>0.5</maskGain>
+ <maskLacunarity>2</maskLacunarity>
+ <maskNoiseType></maskNoiseType>
+ <maskOctaves>1</maskOctaves>
+ <maskOffset>1</maskOffset>
+ <maskPower>1</maskPower>
+ <maskScale>1</maskScale>
+ <maskSeed>1</maskSeed>
+ <maskThreshold>0</maskThreshold>
+ <maxSize>0.01</maxSize>
+ <minSize>0.005</minSize>
+ <name>billboard stars red</name>
+ <nearColor>1 0 0 1</nearColor>
+ <numBillboards>250</numBillboards>
+ <seed>633</seed>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <texture>osirion-flare-04.png</texture>
+ <type>billboards</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>0.415686 0 0 1</innerColor>
+ <lacunarity>3</lacunarity>
+ <name>nebula streaks</name>
+ <noiseType>ridged</noiseType>
+ <octaves>6</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 0</outerColor>
+ <powerAmount>0.25</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>973</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.03</ditherAmount>
+ <gain>0.5</gain>
+ <innerColor>1 0.666667 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula brown</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0.666667 0.333333 0 0</outerColor>
+ <powerAmount>1</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.15</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.75</gain>
+ <innerColor>0 0 0 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula ridges</name>
+ <noiseType>ridged</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>0 0 0 0</outerColor>
+ <powerAmount>0.25</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.5</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+ <layer>
+ <destBlendFactor>one_minus_src_alpha</destBlendFactor>
+ <ditherAmount>0.025</ditherAmount>
+ <gain>0.6</gain>
+ <innerColor>1 1 1 1</innerColor>
+ <lacunarity>2.5</lacunarity>
+ <name>nebula highlights</name>
+ <noiseType>fbm</noiseType>
+ <octaves>8</octaves>
+ <offset>1</offset>
+ <outerColor>1 1 0.498039 1</outerColor>
+ <powerAmount>0.9</powerAmount>
+ <previewTextureSize>512</previewTextureSize>
+ <scale>1</scale>
+ <seed>871</seed>
+ <shelfAmount>0.55</shelfAmount>
+ <sourceBlendFactor>src_alpha</sourceBlendFactor>
+ <type>noise</type>
+ </layer>
+</spacescapelayers>