PDA

View Full Version : Alien Nature - Making Of


PascalR
06-10-2009, 05:33 PM
Hi there,

Here is a tutorial I have been writing to explain a little bit my work flow to create the picture called "Alien Nature".
Here is the final image thread:

http://www.cgfeedback.com/cgfeedback/showthread.php?t=2

I started in 2d, doing random shapes in Corel Painter, and then refined the ideas.

So let's get started!

Cheers,

Pascal

PascalR
06-10-2009, 05:41 PM
Here is the first step of the design process. I like to paint my designs first in 2d and forget about any 3d limitations..freedom!!!!
I am basically painting rough shapes in Corel Painter to get the proper profile without paying attention to any kind of details.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/design01.jpg

PascalR
06-10-2009, 08:17 PM
Then I add outlines to get a more defined profile.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/design05.jpg

PascalR
06-10-2009, 08:18 PM
Adding volumes and color on character. Adding also more details in the lines. The creature must look like it is part of his environment, doesn't need to have human features. It breathes through open lungs, I want to add a fragile side. This creature is old and could break easily. Leafy aspect.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/animation.gif

PascalR
06-10-2009, 08:19 PM
After trying different skies from photos I took in Wellington, I decided to go with a sun rise.
Added a few foreground elements to get a frame, and help with the composition of the picture. The idea is to stick with it when doing the 3d version.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/sketchFinal.jpg

PascalR
06-10-2009, 08:20 PM
Using Maya and renderman for Maya, I am now modeling the scene in 3d quickly.
I use the artwork as a background image to match in Maya. I usually set the imageplane to be in front of the geometry and animate the alpha channel from frame 1 to 10 to quickly check the model against the artwork.
By doing this first quick 3d pass, we get a good idea of how many assets I will need to build, I can easily tweak the depth of the image if needed and play with a temp comp to know which part will be out of focus / in the fog.
http://www.cgfeedback.com/galleryPascal/tutorialAlien/lowPoly.JPG

It's a good way to get a rough idea about where I will need to spend more time, and put some temporary lighting.
Here I am using only 3spotlight casting deep map shadows to get a fast render.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/lowPolyRender.JPG

PascalR
06-10-2009, 08:20 PM
Now adding details into Zbrush and mudbox for the ground. I like to use both application has the brushes don't feel the same and the results are often different.
The malletFast brush can give you nice and sharp details quickly, and I love mudbox to change the proportions add new design features.
It's very handy to know where the camera is looking at as you don't need to add much details on not visible areas.


Here my model is 2.5M polys for the ground.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/MBGroundResized.jpg


Once I am done detailing the ground I extract the subd level 0 from mudbox and zbrush. I do the UVS in maya and UV layout to achieve less stretching as possible, which will help at extraction time. Mudbox does a great job at extracting 32 bit maps, and renderman will render them perfectly.
If I get some spikes in the displacement I just clamp them in the shader in maya using the clamp node. (could be done in shake too.)

Some Zbrush screenshots for the creature itself (8 M using ariund 20 subtools)

http://www.cgfeedback.com/galleryPascal/tutorialAlien/headZB.jpg

http://www.cgfeedback.com/galleryPascal/tutorialAlien/footZB.jpg

Here is a render of the hero SUBD model + extracted displacement maps using a simple 3 spotlights rig. Renderman deep shadows can help faking occlusion for faster renders.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/extDsp.jpg

PascalR
06-10-2009, 08:21 PM
Same process applies for all objects, modeling-uvs-textures
Here I am using BodyPaint but this could be done in zbrush or mudbox, I just like the brushes in BodyPaint.
You will need to go to projection mode if you intend to work smoothly over uv seams. So it means a lot of projections for cylindrical parts. Therefore whenever I can start from an existing texture or photo the better, as I will only have to fix the seams.
I used a photo with lots of manual paint over for the ground, and then re used that texture for other background elements. You can create brush presets from customized alphas, which I find very handy.
The highest resolution texture I used was for the ground, an 8k map, most of the time I use 2K.
Again, I am only focusing on visible from camera areas.
I must confess, I am only using few texture layers, color, ext dsp, bump and spec (from color channel).
Here are some screenshots from BodyPaint:

http://www.cgfeedback.com/galleryPascal/tutorialAlien/bodyPaint01.jpg

http://www.cgfeedback.com/galleryPascal/tutorialAlien/bodyPaint02.jpg

http://www.cgfeedback.com/galleryPascal/tutorialAlien/bodyPaint03.jpg


Here for the creature I am dealing with different pieces so I import them all as obj using the merge option in BodyPaint. This ensures good texture continuity across the different objects.
I like to get the shader working as I am painting the maps so let's talk about shading network.

PascalR
06-10-2009, 08:23 PM
I am re using always the same blinn shader as a base and tweak the specular, bump and reflection. I am using these maps channels:
-displacement
-bump
-spec
-subsurface
-color


And I tweak the reflection intensity in the blinn shader, also adding a reflection blur attribute so it doesn't look too shiny.
It is now time to get the environment light in play with the HDRI maps.
After trying a few free hdr maps I found on the web, I found a sunrise which was the right atmosphere I wanted for this picture.

So I create my env light in renderman for maya using a HDR map and baking occlusion using point clouds.
Here is a screenshot of my settings.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/envLight.jpg

and a first test render:
http://www.cgfeedback.com/galleryPascal/tutorialAlien/hdriTest.jpg

I am not 100 % satisfied with the intensity , color,etc which means I will need to add extra spotlights to have more control over the lighting.

Oh here I 've added a floating drone for composition but not too sure about it.

PascalR
10-10-2009, 11:29 PM
Here is a view of my generic shader in the hypergraph. Very basic shading network, but I found handling subsurface scattering in rfm correctly was the tricky part.

Here as I am using HD textures (2K, 4K, and 8K), the hypershade preview gets truncated.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/hypershade.jpg

Here is the attribute editor screenshot for the body blinn shader (note how low the diffuse value is)

http://www.cgfeedback.com/galleryPascal/tutorialAlien/attr.jpg

And here are the renderman extra attributes at the bottom of the shader (reflection and subsurface scattering)

http://www.cgfeedback.com/galleryPascal/tutorialAlien/attrRfm.jpg

So let's now have a deeper look at SSS (sub surface scattering).

PascalR
11-10-2009, 09:42 AM
So, renderman is going to render a diffuse pass and bake it as a point cloud. Then it will process the point cloud to get the sss effect. The command is ptfilter, and the nice thing about rfm is that you can edit this command line within maya.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/ptfilter.jpg

Here I have plugged an albedo texture map (desaturated version of color map) into the shader. Usually to specify the diffusemeanfreepath, a single value is set using rfm sss attributes, but here I have entered rgb values instead (ideally we would use a texture map). Be carefull with those values they define the distance the light is travelling inside the object before scattering. The smaller the object, the smaller the values may be.
Here is my full ptfilter line.

"\${RMANTREE}/bin/ptfilter" -filter ssdiffusion -albedo fromfile -diffusemeanfreepath 1.5 0.7 0.7 ${ARGS} "[passinfo this/0 filename]" "[passinfo this filename]"


Here is a part of one of the numerous point clouds I used to render my scene (displaying the sss channel here)

http://www.cgfeedback.com/galleryPascal/tutorialAlien/pointCloudsss.jpg

I found rfm would not give you 100% what you see in the ptc at render time, even when baking the sss pass and then set the diffuse to 0. And I spent a lot of time trying to find the right balance diffuse vs subsurface. You end up very quickly with an over bright shader when mixing them.
Another way to have more control over how to mix those channels is to output them from different AOVs and then use a compositing software.

Here an early test using Nuke for mixing sss and diffuse.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/sss.jpg

PascalR
11-10-2009, 09:33 PM
As I mentionned, I 'd like to add more contrast to the image, get some spec brighter,etc...
Once I got the occlusion and reflections working with the HDR map, I can just re use the baked point clouds , so rendering time is still not too bad.
One trick is to render passes at a lower resolution , bake them and then increase the render resolution.
I am then adding lights to tweak the image locally. Some of them are here only to crank up specularity and don't affect diffuse, others are for specific objects only (working with object sets).

http://www.cgfeedback.com/galleryPascal/tutorialAlien/light.jpg

As you can see here I kept some of the ground elements separate objects so it makes it easier to move them closer to the camera for fog or DOF effects.

We need to output the z channel to be able to add those in any compositing program.
You just need to chose the rgbaz channels as output, and run the batch render.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/compMaya.jpg

PascalR
12-10-2009, 09:08 AM
Once we have all the passes we want, we can go and re assemble those in a comp app.
Here I am using nuke, but my preference still goes to shake ;)
The main thing here was to get the DOF and fog work using the z channel from the image.
Nuke has a great node for DOF, called ZBlur. It has a fast preview using colors to show you where it will be blurred using the z channel.
I have applied a light blur node to the z channel as there is no anti aliasing for this channel.

Here is my graph:



http://www.cgfeedback.com/galleryPascal/tutorialAlien/comp.jpg

Also adding grain to get rid of the smooth and too prefect cg look.
Here is a before and after:

http://www.cgfeedback.com/galleryPascal/tutorialAlien/grain.jpg

PascalR
12-10-2009, 10:56 PM
Finally, I painted out some minor things I didn't like in Painter, and drew some elements in the background that get blurred quite a bit at comp time.
Here is a part of the raw painted bg.

http://www.cgfeedback.com/galleryPascal/tutorialAlien/paintedBG.jpg

I know... it's cheating :)
Hope this thread was somehow helpful, and please feel free to comment on it.

Cheers

Pascal

Richardr
13-10-2009, 08:45 PM
Awesome Work Pascal !!! And very useful !
Thanks a lot for the tips :)

PascalR
13-10-2009, 09:29 PM
ahahah love your new avatar Richard, thanks for the post :)

jeffunay
16-10-2009, 05:42 PM
pascal, this is just too cool. i love how you've shown your whole process. this is so helpful.

PascalR
17-10-2009, 12:19 AM
Cheers Jeff and welcome here !:welcome:

Pascal

:dance:

Peter Syomka
19-10-2009, 12:46 PM
Thanks Pascal for sharing such a nice tutorial. Great job!

collings
21-10-2009, 01:36 PM
cool workflow pascal thank you for sharing it .

GregStrangis
13-12-2009, 10:36 AM
Really love how organic this piece is! Thanks as well for the breakdown!

Best Regards,
Greg Strangis

ViCoX
01-01-2010, 05:57 PM
Renderman looks great, too bad xsi dosen`t have it ;_; Clever use of pointclouds remained me of image engines work on district 9. They have really nice set of tools to nuke and 3Delight to renderout floatingpoint images that re-present worldspace pointcloud in the scene(and other stuff). Then they can take it to nuke and tweak the lighting and other stuff in post. It looks great!
FXguide has nice episode about it LINK (http://media.fxguide.com/fxguidetv/fxguidetv-ep071.mov)

Thanks for this, really interesting. : )

PascalR
03-01-2010, 12:05 AM
Thanks guys, great link ViCoX, thanks for sharing!

P.

oglu
12-01-2010, 08:29 AM
Renderman looks great, too bad xsi dosen`t have it ;

use 3delight for xsi instead... its not so diffrent...


thanks for these great tutorial PascalR..!

weiluntsai
10-02-2010, 11:15 AM
Thanks for sharing workflow and awesome concept :thumbsup::thumbsup:
I used to have renderman in my final render, the displacement + sub is just awesome !!

Razeem
02-04-2010, 11:41 PM
@pascal
awesome thread!
The way u explained the whole process step by step is just so helpful
at the moment m doing a personal project and using Maya and renderman for the first time!
would really need your help on renderman!
I'll post it soon in the WIP section soon inshALLAH.
Regards :notWorthy:

Cpullma1
16-12-2010, 07:40 PM
I am so glad I came across your Beethoven tutorial so I could find this site! This tutorial is totally awesome! It is great to see the workflow of such a master in the industry! I look forward to more tutorials, they help so much! :notWorthy: