Adverti horiz upsell
Rendering realistic prehistoric animals
Rendering realistic prehistoric animals
andrewkerr, added 2009-06-07 20:56:13 UTC 119,500 views  Rating:
(6 ratings)
Page 1 of 1

Rendering Realistic Dinosaurs

Having many tons worth of digital prehistoric animals under our belt.  A number of  people have asked about my rendering set-up at dotnamestudios.  This tutorial is not about displacement maps or how to model but taken from the point after you have your model finalised and now don't want it too look like plastic.

click for larger version
Huangosaurus without depth-of-field pass.

The general word of thumb is that there is no magic formula, and each scene has it's own unique requirments but I'll try give some pointers that might help. This is also more of a broad strokes than a detailed step by step tutorial, but you can always track down how to do the final steps once you know what you are after.

In the words of Jeff Labowski "it's just like....my opinion, man"

The only time we use Maya's native render is occasionally for fur ( using shave and a hair-cut ) it seems to produce a different look to mental ray that is sometimes quite cool and pretty fast, other than that I only use mental ray. There are a few other good rendering engines out there but mental ray is free and generally does the trick.

After importing the model, in this case a spikey dinosaur called Huangosaurus, make sure it is grounded ie feet are flat in the grid at zero and it is not floating. If the foot pads are rounded sink it in a little, it is flesh not marble.
For size of the object in Maya, it shouldnt be too small, when you render in mental ray with FG, if you scale an object up to 10x in maya it does look a little differnt to the same object at  1x scale.
I generally go for making the object about 5 times the size of a standard grid. ( I cant really say more as everyone uses differnt scale methods and grid sizes )

In the mental ray tab at the bottom click HDRI and select an HDRI image that you have downloaded off the net somewhere. Just type in HDRI download into google, there are a lot out there these days. Select one that represents the enviroment you want your dinosaur to be in. Desert, dark wooded jungle ect...

In the HDRI attributes I turn off primary visability and trun on emite photons. Next on the mental ray tab make sure finalgather is ticked and you can start off with the default of 300.

The next thing that is quite important is a plane for the animal to stand on. You dont actaully want to render it, but you do need it to reflect light onto the belly. Make a poly plane that is somewhat bigger than the animal and in it's attributes turn off primary visibility, cast shadows, recive shadows ( you can do a shadow pass later ) and under the mental ray tab of the poly plane atrributes - unclick final gather receive.

Now you have a plane light will bounce off but otherwise it might as well not been there.
If you want more light on the belly just make the plane a lighter colour....if you want some variation of colour assign a colourful texture to the plane, it needs to be quite saturated to make a differnence but it can add that extra little bit of  zing especially in animation.

Test render, I generally have the render quality quite high but the model as quite a low poly version. At this point the model can be a default lambert or grey blinn with no relfection and quite matt.
The idea is to have no pitch black areas and a general even wash.

click for larger version

Next up the "sun" given dinosaurs generally lived outside.

I use a simple spot light ( less heavy rendering wise than a directional light ) and set it wide open 75 or something. Select it and in a panel click "look through selected" and then just use the view port to position it to your satisfaction. Think of the time of day you are aim for a place the "sun" accordingly.
Under shadows I mostly only use raytracing shadows and for test renders have radius and rays to 1.

Test render and check if everything is working out more or less.
No need to get too picky quite yet as right now we are only after the broad strokes and quick test renders.

click for larger version

A great trick for realism and an important step if you are doing an underwater scene is to attatch an image to your light colour. In traditional film these are called gobys.

If the animal is in a wooded area then you need some sort of shadow cast by the trees, if the animal is underwater then you need some sort of caustic image. These can be grey scale but a bit of colour, particularly in underwater scenes goes a longway.

Below is a group of Effigia dinosaurs and the goby map I placed as the colour in the light.

click for larger version

note it's high contrast of the texture.  Feel free to use it if you like.



Obviously this blocks a lot of the light and your scene becomes darker. You can up the light power or adjust the texture to be more grey, or adjust the HDRI colour gain and colour offset.
Actaully I often add a bit of colour into the colour HDRI colour gain and colour offset anyway.

Below is an odd looking primitve shark called Stethacanthus

click for larger version

and the caustics map below- feel free to use it, I find with caustics they need to be fairly high res as many of these images get rendered at 4000pix and up.

click for larger version

I also used a plane with a colour map to reflect onto its belly.

Of equal importance to the scene is the shader. You can get away with cheap tricks for making brick walls or download fantastic out the box shaders for rendering cars unfortunatly for animals there are few short cuts.

The colour maps generally need to be hand painted and need a good deal of detail to be convincing. We generally use a mix of z-brush, body paint and photoshop. Complex patterns really need to be painted in a 3d
enviroment such as bodypaint or zbrush, however once you have the basics down you can add some "dirt and scratches" quite quickly in photoshop.  Download some detailed rusty metal or good grunge maps from somewhere like https://www.cgtextures.com/ and use overlay, softlight or whatever looks good then fix the seams with the clone tool in bodypaint.
I often export out the cavity map from zbrush and use it as a mask. Generally in between scales, animals often have a lighter coloured skin so I use the cavity map to quickly achive this effect.

The cavity map also has another important place. In the diffuse channel. The diffuse channel is for want of a better word...a dullness channel. By making folds and skin creases duller and darker it brings out the finner details.
I am rendering off animals generally in excess of 4000 pixils, at this resolution I find bump maps never hold thier own and get exposed for the cheap trick they are, so I very seldom use them apart from occionally as a secondary seamless texture.
In a perfect world you would spend as much time on the diffuse and specualar map as you do on the colour map. In a perfect world we would get unlimited time and budget.
For spec I occasionaly work it by hand and it is a good idea if you have time. 2 of us needed to pump out 93 rigged, textured animals, half of which were in enviroments over a period of just over 5 months.  Thats an animal every 40 hours if you dont sleep, eat, make coffee, have Christmas or do any of the other things you like to do for 5 months. There was no time for spec maps.

I developed a cheap trick, cheap but it worked pretty well....

click for larger version


Basically we used ramps and samplerInfo nodes for spec and ecc maps. This made the outter edge of the animal lighter and more reflective than the middle for want of a better way of decribing it.  Animals have this bending of light around thier body especially if they have small hairs covering the skin. The effect can be seen put to good use on this Deinotherium, a prehistoric elephant.
click for larger version
Once all is looking good it is time for a grainness check...it is most likely a little grainy particualarly on the large renders. That is because you dont have enough final gather points...remember we left it at 300, crank it up to 600, or 900 until you up the amount and cant see any difference.

Depth of field adds a lot.  I apply it afterwards using the excellant Richard Roseman DOF filter, as I want the control and flexibility. You can render DOF in mental ray but then you have to rerender if you want a wider focus or a differnt focal point.
I render off ground shadows and fur separatly but otherwise for the most part I render it off as one hit rather than various layers. It is good practice to render off in layers so pretand I didnt say that.

Eyes, tusks, teeth and tougues all get thier own shaders with some reflectivity and adjusted spec ( I generally have little or no reflectivity on the skin )  My eyes are all from a shader rather than a texture as in close ups it is very important that the eyes have a feeling of depth and life.

Then when it is finally time to hit render the full res image, with the highpoly model, I dont. I have a little .bat file on my toolbar in windows called render_me where I type in the name and details of the file to be rendered and collect them all during the day so i can just click it when I go to bed.

I did a tut on how to make them, just search for andrewkerr tuts, which I will update, but here is a typical sting:

render -r mr -rd -proj D:\tRex_tarbosaurus\3d D:\tRex_tarbosaurus\3d\images scenes_mb\RenderAttack.mb

Hope this helps point you in the right direction and answers some questions
Andrew Kerr - lead
www.Dotnamestudios.com