About Gallery SF.net Project Bug tracker Downloads Forums Manual Wiki DevBlog News

Planets, a reality of the hard working

Earlier I posted about a dream I had.

Today I’m posting about a project I have.

Hopefully, soon I’ll be posting about the game we have.

There’s no discussion about it: my areas of expertise in game development are graphics, and sound. I did a tiny bit of sound earlier, with streaming support. I’ll be back in those realms eventually, to complete streaming support for music which won’t be immediately apparent to users but it’s an important step for the audio system. Anyway… I’ll be back with sound eventually, but right now I’ve been taking some time off sound to revitalize my mind. I did that by thinking about graphics this time :)

Yep… switching from task to task is recreational for me - it lets me come back afterwards with renewed ideas and energy. Is that weird? I don’t know… but that’s me.

So, I’ve been playing with planet shaders. I got them looking nice, as I posted earlier, and lately I’ve been hooking those shaders into the system generator. Sorry folks, but I have some bad news in that front:

It’s done.

You say bad news? Ftw?

Well, it’s bad news because for it to take effect (whenever I commit it, which I haven’t done yet) you’ll have to delete all your generated system files. Bummer. All the systems you thought you knew you know no longer.

Sadly, I don’t know of an alternative. There’s no easy way to add the shaders to existing systems, and there are tons of parameters to play with. Texture files have to be set, technique names, parameter overrides… all that is generated pseudorandomly once, and the result stored in a private folder of your system (close to where savegames are stored).

But hold on, there’s more bad news.

I’ve only done the terrestrial worlds. I’ve been working  hard to get gas giants, and although they look cool at the moment, I’m not entirely happy with either the looks or their performance right now.

So I’ll keep working on them, but I’ll commit the terrestrial planets so everybody can enjoy (and comment - feedback is the best development tool, second only to contributors). I may go ahead and tackle rocky planets and asteroids before I get the giants right… the technique I chose for the gas giants bring my GF9800GT to its knees. Knowing a lot of people play with Intel GMA, which is orders of magnitude slower, we certainly can’t afford a shader that renders a planet full screen at a blazing 10fps on that kind of hardware.

The bad news I’m talking about is that this process of deleting your generated system files will have to be repeated every time I commit new planet shaders (if you want them). Which I expect to happen more than once or twice. Sorry folks, it’s the price of progress.

With planet shaders come tons of engine improvements:

  • I finally found how to hook randomizable parameters to planets, so expect more variety than texture changes alone. I’ll probably play with other parameters that make up the looks of a planet, like cloud coloring and whatnot.
  • sRGB framebuffer support is increasingly important with the multipass techniques the planets use. sRGB framebuffers mean you’ll experience improved color reproduction and fidelity. In fact, part of the graphical appeal of the planet shots I’ve been posting come from accurate gamma correction. I’ll be transforming all the other shaders into using those accurate gamma-corrected techniques.
  • Shaders support preprocessor #includes. That sounds technical I know… but it means it will be easier to work on new shaders given that we’ll have a reusable “standard library”. In fact that’s where all the gamma-correction stuff resides.
  • The “reload shaders” hotkey was not working. Now it is :D (mostly) - I kind of needed the key to avoid having to relaunch VS hundreds of times while developing the shaders.
  • City lights and atmosphere glow is now part of a planet’s technique, and not weird hacks in system files. Crafting beautiful systems just got easier :D - the bad thing here is that they don’t work in shaderless systems. Sorry folks, but progress needs programmable shading, if you find yourself forced to disable shaders, VS will start to look uglier every release. I’ll struggle to keep it playable, though… just not pretty.

Well, I think that’s it with the features.

But those features need art.

I’m formally requesting help here… we have quite varied planet textures, but a lot of the “layers” in those planets are missing. We have tons of terrestrial worlds (forest, carribean, etc…), but they usually don’t have neither city lights nor cloud maps or normal maps!

City lights, though a bit unrealistic (in reality, the nightside looks completely black, city lights being just too faint against the bright sunny side), they add a lot of beauty to the scene. So from an artistic point of view, planets need city lights. Besides, they become a lot less faint once you fly up close to the planet (say, while docking).

Cloud maps are obviously important, just take a look at the screenshots, cloud maps are 80% of the beauty of terrestrial planets. 100% of gas giants, and 40% of desert planets. They’re important. Yet we only have one or two of good quality (high-res enough to be interesting and with the proper format). As soon as terrestrial planets become commonplace, this lack of variety will be very very evident. I’m working on techniques that, without adding tons of new cloud maps, will add some variety - but I still need help here… I need contributions in the form of varied and high-quality cloud maps.

Normal maps are in fact normal plus height maps. Normal goes in color, height in alpha. I may change the technique in order to better pack the textures (right now, normal maps cannot be compressed without loosing a lot of precision), but the fact is that absolutely no planet besides earth has a normal map. And that’s very, very bad. Rocky planets, from my musings on the subject, will base their entire looks on complex, interesting normal and height maps. Without them, rocky planets will be dull. Terrestrials can get away without normal maps, but if anyone cares to take a trip to Sol and visit earth, you’ll notice while flying up close how normal maps can actually increase the perceived level of detail when flying close to the surface.

So we need normal maps. I cannot produce them all - in fact I don’t know how to produce even one of them, all the tools nVidia and the other companies provide for authoring normal maps are windows-only :(

I’ll be more than glad to help any generous soul that sets on the task of producing any amount of normal maps for the planet types we already have in SVN. It’s not like ship normal maps. You can’t just draw a random black & white “greeble” bump map and be done, planets are actually all about topography. Of earth we have topographic maps (that’s where its normal map comes from). From mars kind of too. But for our made-up planets?

So my job is far from done, and I’m already asking for help. No wonder commercial games need millionaire budgets ;)

128 Responses to “Planets, a reality of the hard working”

  1. buy original blog content Says:

    buy original blog content…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  2. コーチ バッグ Says:

    コーチ バッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  3. コーチ メンズ Says:

    コーチ メンズ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  4. セリーヌバッグ Says:

    セリーヌバッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  5. celine Says:

    celine…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  6. coach Says:

    coach…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  7. コーチ 財布 Says:

    コーチ 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  8. coach 財布 Says:

    coach 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  9. セリーヌ財布 Says:

    セリーヌ財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  10. coach バッグ Says:

    coach バッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  11. コーチ Says:

    コーチ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  12. ヴィトン メンズ Says:

    ヴィトン メンズ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  13. king street cats Says:

    king street cats…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  14. ミュウミュウ バッグ Says:

    ミュウミュウ バッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  15. miumiu 財布 Says:

    miumiu 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  16. ミュウミュウ 激安 Says:

    ミュウミュウ 激安…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  17. ジャケット バーバリー Says:

    ジャケット バーバリー…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  18. nike air max 1 Says:

    nike air max 1…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  19. ミュウミュウ 新作 Says:

    ミュウミュウ 新作…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  20. miumiu アウトレット Says:

    miumiu アウトレット…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  21. air max damskie Says:

    air max damskie…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  22. ミュウミュウ 財布 Says:

    ミュウミュウ 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  23. ハンカチ バーバリー Says:

    ハンカチ バーバリー…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  24. celine トート Says:

    celine トート…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  25. gucci shoes Says:

    gucci shoes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  26. セリーヌ ハンド バッグ Says:

    セリーヌ ハンド バッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  27. celine カバ Says:

    celine カバ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  28. nike スニーカー Says:

    nike スニーカー…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  29. ミュウミュウ Says:

    ミュウミュウ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  30. miumiu Says:

    miumiu…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  31. http://www.kochisaifujapan.com/ Says:

    http://www.kochisaifujapan.com/…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  32. コーチ ハンドバッグ Says:

    コーチ ハンドバッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  33. miumiu シューズ Says:

    miumiu シューズ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  34. www.kochihadokaba.com Says:

    www.kochihadokaba.com…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  35. miumiu 店舗 Says:

    miumiu 店舗…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  36. コーチ メンズ 財布 Says:

    コーチ メンズ 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  37. miumiu 新作 財布 Says:

    miumiu 新作 財布…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  38. ___ ___ Says:

    ___ ___…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  39. miumiu バッグ Says:

    miumiu バッグ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  40. air jordan Says:

    air jordan…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  41. air jordan 2012 Says:

    air jordan 2012…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  42. air max tn requin Says:

    air max tn requin…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  43. chanel designer eyeglasses Says:

    chanel designer eyeglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  44. tory burch clothing Says:

    tory burch clothing…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  45. toryn green Says:

    toryn green…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  46. tory burch Says:

    tory burch…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  47. tory bruch coupon code for free Says:

    tory bruch coupon code for free…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  48. www.rts-league.org Says:

    tory burch…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  49. tory burch shoes Says:

    tory burch shoes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  50. ruriruri.net Says:

    tory burch shoes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  51. tory burch reva Says:

    tory burch reva…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  52. the education of dee dee ricks Says:

    the education of dee dee ricks…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  53. tory burch divorce Says:

    tory burch divorce…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  54. nyc fashion; what's in store..paris fall 2012.. . chanel Says:

    nyc fashion; what’s in store..paris fall 2012.. . chanel…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  55. chanel designer sunglasses Says:

    chanel designer sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  56. 2011 chanel couture collection Says:

    2011 chanel couture collection…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  57. chanel glasses Says:

    chanel glasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  58. chanel eyewear Says:

    chanel eyewear…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  59. chanel purses Says:

    chanel purses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  60. chanel sunglasses Says:

    chanel sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  61. les essentiels de chanel Says:

    les essentiels de chanel…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  62. chanel handbags Says:

    chanel handbags…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  63. chanel replica Says:

    chanel replica…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  64. radio show prep Says:

    radio show prep…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  65. radio show Says:

    radio show…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  66. karen millen Says:

    karen millen…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  67. party dresses Says:

    party dresses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  68. vintage dresses Says:

    vintage dresses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  69. karen millen purple dress Says:

    karen millen purple dress…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  70. long range weather forecast Says:

    long range weather forecast…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  71. radio shows Says:

    radio shows…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  72. bridal shower Says:

    bridal shower…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  73. Cheap Nike Free Run 3.0 Womens Says:

    Cheap Nike Free Run 3.0 Womens…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  74. Nike Free Run 3 Says:

    Nike Free Run 3…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  75. cheap nike air max womens Says:

    cheap nike air max womens…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  76. Cheap Nike Free Run Shoes Says:

    Cheap Nike Free Run Shoes…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  77. Cheap Nike Air Max 2012 Says:

    Cheap Nike Air Max 2012…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  78. Nike Air Max 95 Says:

    Nike Air Max 95…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  79. Cheap Nike Air Max 91 Says:

    Cheap Nike Air Max 91…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  80. robtaxvz.mittdjur.se Says:

    Nike Free Run 3…

    Vega Strike Development Blog Blog Archive Planets, a reality of the hard working…

  81. Cheap Oakley Batwolf Sunglasses Says:

    Cheap Oakley Batwolf Sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  82. Nike Free 5.0 Says:

    Nike Free 5.0…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  83. Fake Oakley Polarized Sunglasses Says:

    Fake Oakley Polarized Sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  84. Cheap Oakley Oil Rig Sunglasses Says:

    Cheap Oakley Oil Rig Sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  85. Cheap Nike Free Run Says:

    Cheap Nike Free Run…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  86. Nike Free Run 3 Womens Says:

    Nike Free Run 3 Womens…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  87. Cheap Nike Free 4.0 V2 Mens Says:

    Cheap Nike Free 4.0 V2 Mens…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  88. Oakley M Frame Sale Says:

    Oakley M Frame Sale…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  89. Oakley Radar Range Sunglasses Says:

    Oakley Radar Range Sunglasses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  90. Oakley Multilens Says:

    Oakley Multilens…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  91. Oakley Flak Jacket Fake Says:

    Oakley Flak Jacket Fake…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  92. Oakley Scalpel Sunglasses Cheap Says:

    Oakley Scalpel Sunglasses Cheap…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  93. Nike Free Run 2 Says:

    Nike Free Run 2…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  94. Nike Air Max LTD Womens Says:

    Nike Air Max LTD Womens…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  95. nike free run customize Says:

    nike free run customize…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  96. Cheap Oakley M Frame Says:

    Cheap Oakley M Frame…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  97. nike free tr Says:

    nike free tr…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  98. nike free run boys Says:

    nike free run boys…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  99. nike free run 2.0 Says:

    nike free run 2.0…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  100. Nike Free 3.0 V4 Womens Says:

    Nike Free 3.0 V4 Womens…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  101. free phone numbers Says:

    free phone numbers…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  102. free reverse phone lookup Says:

    free reverse phone lookup…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  103. hollister outlet Says:

    hollister outlet…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  104. ボッテガヴェネタ 財布 メンズ Says:

    ボッテガヴェネタ 財布 メンズ…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  105. garcinia cambogia Says:

    garcinia cambogia…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  106. dr oz garcinia cambogia reviews Says:

    dr oz garcinia cambogia reviews…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  107. pure garcinia cambogia dr oz Says:

    pure garcinia cambogia dr oz…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  108. garcinia cambogia reviews Says:

    garcinia cambogia reviews…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  109. garcinia cambogia reviews dr oz Says:

    garcinia cambogia reviews dr oz…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  110. garcinia cambogia reviews and side effects Says:

    garcinia cambogia reviews and side effects…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  111. pure garcinia cambogia Says:

    pure garcinia cambogia…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  112. Structured settlement Says:

    Structured settlement…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  113. reverse phone lookup Says:

    reverse phone lookup…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  114. free reverse cell phone lookup with name Says:

    free reverse cell phone lookup with name…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  115. yo mama Says:

    yo mama…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  116. dead sea salt recipes Says:

    dead sea salt recipes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  117. epsom salts uses Says:

    epsom salts uses…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  118. make your own bath salts Says:

    make your own bath salts…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  119. homemade bath recipes Says:

    homemade bath recipes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  120. epsom salt recipes Says:

    epsom salt recipes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  121. aromatherapy recipes Says:

    aromatherapy recipes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  122. bath salts recipes Says:

    bath salts recipes…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  123. how to make bath salt Says:

    how to make bath salt…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  124. nanoo nanoo Says:

    nanoo nanoo…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  125. ig Says:

    ig…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  126. weight loss qsymia Says:

    weight loss qsymia…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  127. ip Says:

    ip…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

  128. Hogan uomo Prezzi Says:

    Hogan uomo Prezzi…

    Vega Strike Development Blog » Blog Archive » Planets, a reality of the hard working…

Leave a Reply

You must be logged in to post a comment.