Jupiter Bands Simulation

Just a few days ago, I found out about a MIT competition called The Art of Astrophysics. Naturally my interest was piqued. The only problem was the deadline… 24 hours!

As a back burner project I’ve been experimenting with creating jupiter cloud bands that are truly fluidic. It’s very difficult to keep the multiple bands separate, so I’ve been testing the interaction between just two bands. The Kelvin–Helmholtz instability is a fascinating topic to focus on, but it’s heavy to simulate and difficult to predict.

Continue reading

Background Stars v2

example_render(This post is an update to Background Stars v1. It will provide some context.)

A while back I shared a ‘star globe’ which has the night sky mapped onto a sphere. This can be used to completely surround a maya scene with stars. Andrew Hazelden and I often collaborate on various fulldome projects and he had an idea of how to re-engineer the star globe into requiring only 1 surface and 1 file texture. This allows for a vast improvement in rendertime. For instance:
— 4-poly & 4 texture star globe – 1m 40s
— 1-poly & 1 texture star globe – 30s

A bunch of other improvements are included:
— Fixes the grey blurry line glitch since it uses a Mental Ray texture network.
— A 2k texture for previewing in the Maya viewport. Then 8k texture used for renders.
— Other lights in the scene will not affect the star globe.
— Star globe never casts shadows.
— Star globe will automatically show up in reflections & refractions.
— Renders faster since the 1 texture needs much less initialization and poly is reduced.
— Here is a detailed explanation of these things are achieved.

DOWNLOAD
maya scene (using mental ray) – star globe
(also available in the Domemaster3D toolset)

starglobe_screenshot_20131113

Cosmic Loops – Dome Visuals for Live Music

CosmicLoops_preview2 CosmicLoops_preview1 CosmicLoops_preview3

We are working hard on our latest fulldome production show about NASA engineering, but we do try to squeeze some fun projects into the mix. So lately we have been creating some custom dome visuals for an upcoming live music event in the planetarium — Cosmic Loops: Music Beneath the Stars

But there are some interesting challenges in trying to create pre-rendered dome visuals for live music. The musicians supplied the songs they will be playing live, so we at least had an understanding the specific moments to match. We have seen that many entertainment shows try to stay synced to the beat. But we realized that in an immersive space you just want to soak it up the moment of beauty around you. So we have taken a different approach of grandiose scenery with gentle camera moves. We aren’t making a music video but instead an experience where the music and visuals amplify each other. We aspire for goosebumps. For frisson!

Continue reading

Edit DigitalSky Scripts On Any Computer

If you’ve ever needed to edit a DigitalSky script but you’re on a computer that that doesn’t have DigitalSky installed… Well editing the plain text definitely works, but it’s easy to make mistakes and quite hard on the eyes.

So Andrew Hazelden has added syntax highlighting of DigitalSky scripts to several code editors .  In other words, the code is automatically colorized to make it much easier to read.

These code editors have downloadable modules to add DigitalSky support:
— Notepad++ (Windows)
— TextWrangler (Mac)
— BBEdit (Mac)
— Gedit (Linux, Max, Windows)

digitalsky-syntax-highlighters

Fake Ambient Occlusion

JWST-occ-test-render

Ambient occlusion is quite a helpful effect in easily achieving some realism. But the default render layer occlusion setup in Maya (using Mental Ray) is somewhat render intensive. And when you’re doing lots of render tests, well you just want to see it quickly.

fake-ambient-occlusion-tutorialSo we can speed up the render process by instead using Final Gather to computer the occlusion and then use the mib_fg_occlusion utility shader to make it grayscale. Then by adjusting the Final Gather render settings we can affect the render times. This is really helpful if you are doing a test render where the render quality is not paramount, but later you can increase the settings for the final render.

To the right is a tutorial of how to get the mib_fg_occlusion node setup within a surface shader. You must use mental ray since that is what Final Gather requires.

You can also learn more in depth about the mib_fg_occlusion utility shader and how to get a texture with transparency to be recognized.

kepler-occlusion-render-pass

The Nebula Challenge

One of the most difficult types of space imagery to create is a volumetric nebula. There are three main styles of nebulae to imitate: diffuse nebulae, planetary nebulae, and supernova remnants. The fluid framework within Maya is extremely flexible but it can be very tricky to just get a fluid/emitter set up with settings that are repeatable.

So to ease the cumbersome setup, below is a maya scene for the interactive creation of a fluid nebula. While experimenting with the attributes it’s important to have a real nebula reference image in mind; or else you’ll just continue tweaking attributes without any real measure of when it’s done. With fluids it’s quite easy to run down endless rabbit holes… There are just so many attributes that are interlocked. But it’s not impossible to tame fluids, you just need to have a goal in mind.

The nebula maker template is initially set up to have the look of a supernova shell because it’s actually more useful to experiment with. But I’ll share how to adjust the opacity ramp to create a diffuse nebula.

Continue reading

Fix for Maya – RenderView Not Found

RenderViewError-Example

Have you ever opened up a Maya scene downloaded from a website and upon trying to do a render… all you get is a blank window and an error! BAH!

Error: setParent: object ‘renderView’ not found

RenderViewError-TutorialLuckily there is an easy solution to fix this. Check out the tutorial to the right on how to create a MEL shelf button to keep this solution handy. The MEL script is below.

$exists=0;
for ($item in `getPanel -scriptType "renderWindowPanel"`) {
if ( $item == "renderView" ) {
print "renderView exists.\n";
$exists=1;
}
}
if ( $exists == 0 ) {
for ($item in `getPanel -scriptType "renderWindowPanel"`) {
//print ( $item + "\n");
if ( $item == "renderWindowPanel1" ) {
deleteUI renderWindowPanel1;
$renderPanel = `scriptedPanel -type "renderWindowPanel" -unParent renderView`;
scriptedPanel -e -label `interToUI $renderPanel` $renderPanel;
}
}
}

Note: A permanent way to fix this issue is to simply upgrade Maya 2012 with the latest service pack. But this requires a reinstall of Maya… And when you’re in the middle of production, well thats just not a pleasant option.

House of Mirrors

Creating the sense of an huge expansive space is a challenge in 3D animation. But if we use mirrors and some trickery then we can create a vast beautiful illusion. The trick is to use structural beams to hide the mirrors edges. This creates a seemingly unending structural lattice. An infinite jungle gym!

DOWNLOAD
maya scenes (using mental ray) – cube, sphere, dodecahedra (flat & curved)

mirror-infinite-space-fisheye

house-of-mirrors-cube-sphere-dodecahedra

Continue reading

Customizing a Close-Up Sun

Have you ever wanted to fly up close to a sun? To see those dynamic boiling details, shimmering corona, and mesmerizing surface textures patterns… But creating an animated volumetric sun with all these attributes is quite difficult.

It turns out that you can constrain a Maya fluid into a sphere. But the fluid system is tricky to work with since there are so many different attributes to explore and figure out their intertwined relationships. So it’s important that you already have in mind the type of star you want to create. Otherwise you’ll end up tweaking details endlessly without any basis for when it’s finished.

Continue reading