Nov 202011
 
Soviet Saturn

Rendering a planet is a cinch – they’re essentially balls around which you wrap a texture. You have to be careful with lighting, but that’s about it. Sure, the Earth is another story but for that follow this Blender Guru Tutorial and you won’t need much else. But how about Saturn’s rings? Look simple at first sight but they’re not, especially if you have to render a scene in which they are pretty close, and since we’ve been there – you cannot do away with a bland couple of discs. Those rings are complex. For one thing, I learned that they’re much more extended than the bright disk you see from your backyard telescope – to the point that it is not clear exactly where they finish. But aside from that, they are a rainbow of rings with different densities and transparencies – and since they throw a shadow over Saturn, you need to make that appear realistic as well.

Voskhod-D beneath the Rings of Saturn

Voskhod-D beneath the Rings of Saturn (click to enlarge)

I don’t want to boast I had the best result in the world – I know there are tons of modelers who can do that much better than I have done – nonetheless, since I spent so much time figuring out just how to render those rings, I thought I might ease the pain from whomever is as bad as I am at modeling and wants to, well, render the rings of Saturn.

I’ll assume you have the GIMP, but I guess the process is pretty similar in other image manipulation packages as well. First thing, go get this picture from Wikipedia. For fear of it disappearing I thought of storing it here as well, although I guess Wikipedia will be around longer than my small blog. But you never know.

This is a map of the rings. Open it in the GIMP. Since it is curved, you have to straighten it. After various lengthy and unsuccessful attempts with the warping tools, I found that the best way to go about it is to do the following (if you’re in a hurry I’ve posted the result of this part below):

  1. Add transparency to the layer: Layer ->Transparency->Add alpha channel.
  2. Hit ‘R’ and draw a random rectangular selection across the image.
  3. Go to the toolbox. In the lower half you should get the selection editing dialogue. Make sure that the drop selections beside ‘Position’ and ‘Size’ is set to ‘pixels’ (or ‘px’). Then set ‘Position’ to ’0′ and a value of pixels roughly half the height of the picture.
  4. Set ‘Size’ to ’1′ and the width of the picture. The idea is to have a rectangular selection which is just one pixel high and as wide as the picture itself slicing through the rings’ map.
  5. Hit Alt+I to invert the selection, then delete it. You are left with an empty layer, save for the single-pixel line in the middle. Clear the selection via Alt+A, then go to Layer->Auto-crop Layer.
  6. To help you with what follows, go to View->Snap to Canvas Edges, then View->Snap to Grid
  7. Go to Image->configure grid. In the grid configuration dialogue, under the ‘Spacing’ section, input 1. Now you have a grid with one pixel in width. Click ‘OK’.
  8. Zoom in on the picture so that you clearly see your line of pixels. Possibly, zoom to the left or right border of the canvas, so that you see what happens when you move layers around, particularly if you misalign them.
  9. Hit Ctrl+Sift+D to duplicate the layer, and then move it above (or below) the previous layer one pixel (the grid should help you do this without much fuss).
  10. Go to the layer dialogue, right click on the topmost layer, and select ‘Merge-Down’. Now you have a layer which is two pixels high. Do you see where I’m going?
  11. Now repeat steps 7 inputing 2 instead of 1 as grid spacing, and proceed again through step 10. Since this is an exponential progression, you do this 8 times and your strip is 128 pixels high. Do it a couple of times more and you have a 512 pixel strip. From 128 up anything goes.
  12. This is the color texture. Save it then save it as another picture – which will be your transparency map instead.
  13. On this new picture, go to Colors->Desaturate and select ‘Lightness’, then click OK. The picture has gone black and white.
  14. Go to Colors->Brightness/Contrast and increase both, so that you have some pitch black areas and some near-white bands. Save this and you’re done with The GIMP.

Now that you’re done, here’s the result of all this hassle: the planet surface is towards the left, while the external border of the rings is on the right. You’re free to download and use these textures if you wish.

Saturn Rings Texture

Saturn Rings Texture (click to enlarge)

Saturn Rings Transparency Map

Saturn Rings Transparency Map (click to enlarge)

Time to fire up Blender.

    1. Add a ring mesh. It does not have to be too high in resolution – the default 32 vertices are more than enough. Go to ‘edit’ mode, select all the vertices (‘A’) and extrude them (‘E’), then hit ‘S’ and scale the extruded vertices by 50%. Nerds might want to scale to .4762.
    2. Select one of the radial edges. I may not be as clear as I think here, so here’s apicture:

      Which edge to select

      Edge to select, example (click to enlarge)

    3. Hit ‘Ctrl+E’ and select ‘Mark as Seam’. This ensures that when you unwrap it, the ring will be cut at that edge.
    4. Add a material to this mesh, call it ‘Rings’ or whatever.
    5. Under the ‘Diffuse’ tab, set the color white with intensity 1. Select ‘Oren-Nayar’ as shader and set the darkness to 0.3. This gives some brilliance to the rings. Depending on your lighting setting, you may want to test and fiddle with this.
    6. Under the ‘Specular’ tab, set the intensity to 0.
    7. Under the ‘Shading’ tab, set ‘Emit’ to 0.1. This will make the rings glow in the dark, which they do as they’re actually ice particles that glitter quite intensely. Again, depending on your lighting, you may want to tweak this a bit.
    8. Check the ‘Transparency’ tab, select Z-transparency and set alpha to 0. This makes the material perfectly transparent: the actual transparency will be controlled by your transparency map.
    9. Now go to the ‘Texture’ tab, add a texture – which will be your color texture. Set type to ‘Image or Movie’.
    10. Under the ‘Image’ tab, open the color texture.
    11. Under ‘Image Mapping’ set ‘Extension’ to ‘Extend’. This is because if you don’t map the mesh precisely at the borders, you’ll have a seamless effect nonetheless.
    12. Under the ‘Mapping’ tab, set ‘Coordinates’ to ‘UV’.
    13. Now add another texture, and follow steps 9 to 12 above, only at step 10 select the transparency image.
    14. For this transparency texture, under the ‘Influence’ tab, deselect ‘color’ and select ‘alpha’. This tells Blender that this texture is affecting the transparency. Now check the ‘RGB to intensity’ box, which means that the value of white in your picture translate into an alpha (transparency) value.
    15. We’re nearly done. Go back to the 3D view, select your rings and switch to ‘Edit’ mode (if you are not already there). Select all the mesh, then hit ‘U’ to unwrap. DON’t ‘project from view’, either simply unwrap or ‘cylinder-unwrap’.
    16. Switch to the UV-image editor, and select your ring color texture. The rings will be unwrapped as Blender saw fit, which is not what you need, likely. What you have to do now is align all the inner vertices of the mesh to the right side, and the outer to the left. How much you stretch the mesh vertically is not important. Not much help for you here without a video, but I can give you a trick: if you want to align vertices vertically, select them all, then scale to 0 along the x axis. Flipped for horizontal alignement. Don’t bother too much discriminating which vertices are the innermost, and which the outermost: if something goes wrong you can always come back here, select them all, then hit ‘Ctrl+M’ and then ‘X’ to flip them horizontally. Select ‘UV’ from the menu and check the ‘Constrain to image bounds’ box to help you aligning to the right and left borders.
    17. Once you’ve succeeded, go back to the 3D view. Click on the modifiers tab, and select ‘Subdivision Surface’ from the dropdown menu. Set the ‘Subdivisions’ value for ‘render’ to 3 or 4.
    18. Select all the mesh (it should be already) and under the ‘Shading’ section of the mesh toolbox (‘T’, left-hand column in the 3D viewport), select ‘Smooth’. Hit ‘Ctrl-N’ for good measure – this recalculate normals. There’s probably no need for this but you never know.

And we’re there! Render and enjoy! Just one more tip, before you crack your brains over this: if you want the transparency to affect also the way the rings cast their shadow (e.g.: with the Cassini Division letting through more light than the rest of the rings), in the material with which you wrap Saturn, the box ‘receive transparent’ under the ‘shadow’ tab of the material options must be checked. Otherwise Blender will use the rings as a solid plane for raytracing purposes.

Hope the above will help someone else in need ;) .

Nov 202011
 
Voskhod Thumbnail

And here it is – the Восход-Д video finally released! Crank up the volume and watch it in HD!

The soundtrack is 8 Bit No Tamashi, by LukHash (from the album Digital Memories), downloadable for free from their website or from Jamendo.

Sound effects come from the Freesound library. Союз radio communications were downloaded from here (after a lot of scrolling). For those out there who want to know it all, the voice over the intro says ‘Attention: Moscow speaks and trasnsmits in video‘.

Most textures and backgrounds are mainly designed by me in The GIMP, but I also downloaded a few of them from CGtextures. Planet textures are from NASA/JPL’s Solar System Simulator 3D resources, Earth color, heightmap, specularity and cloud textures come from NASA’s Earth Observatory and its Blue Marble – Next Generation project.

Modeling, animation and video compositing were all done in Blender – a lot of thanks go to Andrew Price, author of Blender Guru, for his amazing tutorials.

The design of the spacecraft has been helped a lot by the Atomic Rockets website, maintained by one Nyrath of whom I don’t know much more than this.

I started this project around february, this year. My estimates say it took about 900 hours to complete (37 days), at the end of which I find my computer cluttered with 7 Blender files, over 150 textures and nearly 8 thousand rendered frames.

You’ll find information on how I put this together here. The clip is also available on Vimeo.

 

Oct 082011
 
Soviet Saturn

Well, yes. After months of silence, The Soviet Unit has the face to come back. The absence from the digital scene was not, however, without reason: given the catastrophic developements in the world scenery, the Academy of Sciences has launched the ambitious project of boosting Communism to space, to save it from extinction on our planet. To avoid leaving its 3 readers too long without news, and since (in perfect Soviet style) the project is taking dramatically more than planned, we thought at least to provide updates on its making – waiting for the spectacular release of the first (and likely, last, given the time needed to put it toghether) video dedicated to the exploit.

Voskhod D in Low Earth Orbit

Voskhod-D in Low-Earth-Orbit (click to enlarge)

The core of the historical adventure is Восход-Д (Voskhod-D). The naming Восход obviously refers to the like-named (and tragically unfortunate) Soviet space program. We liked the name for two reasons: first, for the link with the heroic age of the space race, and second, for its elegance. I may be partial, but Soviets always had a distinctive taste with the naming of their missions: the gauntlet to the Olympic Gemini and Apollo was thrown by progressive Союз (Soyuz, ‘Union’, which by the way are lasting longer than the Space Shuttle) and Восток (Vostok, ‘Orient’); namings that had an almost lyrical undertone: Мир (Mir), how the pioneering space station, de-orbited in 2001, was called, means both ‘world’ (meaning ‘people of the world’) and ‘peace’. Well, Восход is one of those names, meaning both ‘Ascent’ and ‘Dawn’, to which we added a D, short for Дальний, ‘faraway’.

Our spacecraft is a bit larger than its single-seat predecessor: it can host a crew of 40 and sustain them for over fifteen years. In the picture, a rendering of its final version, shot in LEO (Low-Earth-Orbit, within 2,000 kms from the surface). From bow to exhaust it’s nearly seven hundred meters, and the torus where the crew lives is fifty meters in diameter. Nice, eh? Well, I like it.

To whoever might be curious, here’s the updated making-of articles:

  1. To Titan – the video, to begin with
  2. Engines On! – the reactor blast
  3. The Asteroid Belt – according to me
  4. The Habitat – how’s inside
  5. Hydroponics and Life Support – what to breathe and what to eat
  6. Mass and Size – it’s big and heavy – see how it looks downtown Milan
  7. Rendering Stars – a Tutorial – how to make a nice starfield to throw in the background
  8. Rendering the Rings of Saturn – it’s hard and no-one thinks of it until they have to

 

Analytics Plugin created by Web Hosting