Sunday, June 2, 2013

Project Preview - Salmonfly Nymph

The salmonfly nymph is an insect within a larger short animation I'm working on, though I'm not sure when I'll be finished with the entire production. It's bigger and more involved (in a good way) than all the other projects I've ever done in the past.

Presented here is a highly abbreviated preview for what will be a thorough exposition via workflow montage, video commentary, and blog posts. While the salmonfly nymph asset is essentially ready for production, the overall project is only about a third of the way complete. I'm posting this because this portion was finalized awhile ago; the salmonfly nymph is fully rigged and ready for referencing into a production scene, so is ready for me to animate. The render below was calculated with Mental Ray 3.10 for Maya 2013, rendered at 4K Ultra HD resolution (3840x2160 pixels) with very little post-processing in Nuke compositing software. Click on the pictures within the post to see them at a higher resolution.

Roughly two hours to render all render layers and passes at 3840x2160 4K Ultra HD resolution.

The base mesh was modeled in Maya using polygons, every polygon being a quad. Some components, such as the antennae, are separate objects. 6 mirrored patches comprise the entire UV setup, each being 4096x4096 texels, totaling a bit over 100 megapixels of texture information potential. In the actual animation, with depth of field and motion blur, along with the relative size of this creature on the screen, most of the high frequency details will blend in and go unnoticed. The purpose of creating more detail than necessary is just in case I decide to move the camera in a little closer later on.

Done entirely in Zbrush from the base mesh modeled in Maya. Every single ommatidia (arthropod compound eye lens) was placed using the DragDot tool. Exported 32 bit displacement .EXRs to be applied using Mental Ray approximations, along with being used as aids in the texturing process.

First time I used Mari in a more involved way. Mesh imported is 1 subdivision level from base mesh. Over 50 channels and 12 shaders complete the setup to be exported and converted to memory mappable textures for rendering in Mental Ray.

Used standard Maya tools without any special scripts. The rig is comprised of constraints, clusters, paint effects, fur, and more of the usual methods used in Maya. Some aspects of the rig I created to be automated, such as proper degrees of freedom on the leg joints, to keep animating the legs simple yet realistic. It's entirely scalable, as I set it up 10 times the real world size it will be in the final animation (approx 5 centimeters) to make the dynamic simulation tasks in this project more predictable.

I set up various passes within 5 render layers including one layer for mattes, all by using standard tools within Maya and Mental Ray. Some passes (sssBack and sssFront) are forced through writeToColor buffer nodes. Rendered using batch scripts.

The current result is quite simple and the depth of field is purposely weak for quick test exports. The final composite will include film grain, chromatic aberration, motion blur, and other effects. By using World Position and World Normals passes, relighting can be done in 2.5D. Water drops, separated and displaced on their own render layer, will have faked refraction simulated using Incidence and World Normals passes. The graph below in Nuke software is the basic setup I made in order to combine the passes rendered from Mental Ray.

Showing most of the passes rendered from Mental Ray using the built-in Render Passes system in Maya.

As I hinted at above, this is more of a teaser than an educational or potentially helpful post for those who want to learn something new. All that will be revealed later on when the project is complete!


  1. how did you learn to do all this stuff?? pretty amazing work man. especially for a hobbyiest. hehe

    Keep up the great work!

  2. hi!
    this is absolutely amazing! wish i could do somekind of that in the future...
    also,i would love to have a bigger resolution of your hypershade shader connections. ...

  3. stunning art. insects are incredible.

  4. Learning new technolgoy would help oneself at hard part of their career. And staying updated is the only way to survive in current position. Your content tells the same. Thanks for sharing this information in here. Keep blogging like this.
    PHP Training in Chennai

  5. This is an awesome post.Really very informative and creative contents. These concept is a good way to enhance the knowledge.I like it and help me to development very well.Thank you for this brief explanation and very nice information.Well, got a good knowledge.

    seo training in chennai

  6. i think you are master of the content and thank you so much sharing that valuable information and get new skills
    Digital Marketing Company in Chennai

  7. this is really too useful and have more ideas from yours. keep sharing many techniques. eagerly waiting for your new blog and useful information. keep doing more.
    SEO Company in Chennai

  8. Great Article… I love to read your articles because your writing style is too good, its is very very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.

    Hadoop Training in Chennai


  9. Being new to the blogging world I feel like there is still so much to learn. Your tips helped to clarify a few things for me as well as giving..
    Android App Development Company