Render time difference with and without Victoria 5 Elite Ponytail
inthanity
Posts: 89
Any ideas as to why there would be a drastic time difference between a scene rendered with the Victoria 5 Elite Ponytail applied to a figure, and an identical scene without the ponytail applied? A render I did was 12 minutes faster than the other when I simply removed the ponytail from the scene. The problem seems to be centered around the base of head where the tail actually begins.
render-wo-ponytail_NO-ERROR.png
800 x 450 - 456K
render-w-ponytail_ERROR.png
799 x 450 - 397K
Post edited by inthanity on
Comments
Render time depends on your render settings, lighting, and on what you have in the scene. Hair is something that can often drastically increase render time. I have a hair tutorial which discusses some strategies for rendering hair more quickly. There's also a product in the store (UberHair) that is designed to help with that.
To give a more direct answer to why this is happening, my guess is it is because the opacity maps (or "transmaps") of the hair take a lot longer for your computer to calculate the lighting and shadows in that area.
Thanks! The tutorial helped, and I reduced it by 9 minutes!
Great! :) Glad you found it useful.
Note that it isn't just hair that can cause this. Anything else — clothes, props, scenery — using the same type of multi-overlaid transparencies can make the render time very sensitive to other factors like render quality, light type, or shadow quality settings.
This brings me back to the age old discussion about what we should be focused on the most in CG, with the lighting, or with the textures. It's my opinion that lighting is always most important, and that we need to be wary of choices that make us afraid to use good lighting due to long render times. Never for example use maximum Anti Aliasing when using under developed lighting, its silly. Better to use better light and use standard AA. I diverge, this discussion is about light and shadow ans materials. I will explain.
Good lighting and transmapped textures make horrible render time returns. Avoid transmapped textures any time you can if you want to exercise more advanced lighting. This is true in just about every rendering software I have ever worked with. Light rays are easy, the drama is in the shadow rays. I will explain it as I understand it. It has the do with the basic logic of raytracing. It's a little complicated so here is my raytracing 101 speech as I will cover a lot of ground to make certain the issue with transmapping is clear. But before we get to transmapping I need to make certain we are on the same page about light and shadow in general.
Raytracing Basics
Point Lights vs Geometric Lights
Light rays in CG are most often fired from infinitely small points called point lights with no surface area so all rays travel along the divergent pathways never "criss-crossing." Point lights give hard edged gradient free shadows due to this lack of criss-cross (no two rays travel in a similar direction so there is no opportunity for disagreement between the rays about where the edge of the shadow should occur) so shadows are hard edged. If however the light source is geometric and 3d in nature like a real world light sources (lights such as those of Octane and Lux), then it will have some amount of physcial size and surface area/volume which will allow its rays to criss-cross resulting in naturally softened shadows based on the scale of the light source. The larger the light source the more the rays will criss-cross resulting in seemingly softer illumination and softer shadows (rays can now travel in similar directions since they are fired from more than one point in space, this means they can disagree about where the edge of the shadow should occur, this creates a softened edge as more rays strike the main area of the shadow and fewer strike the edges creating a gradient edge) aka soft shadow. More on that in a second, as this current render discussion isnt geared to be full Gi. We are dealing only with point type lights here casting hard shadows.
Shadows and how they work:
Often we discuss lights as "casting shadows." In truth however, Shadow rays are fired by the geometry itself.
Example. When you add a light source to a scene in theory all surfaces facing in the direction of the light source can see it and feel its influence. If you want to create the look of occlusion (ray absorption by an object's surface), one must introduce shadow rays to cancel out the otherwise ever-present and all surface penetrating light rays. As stated above, the shadow rays are cast by the geometry, not by the light sources themselves. One surface fires its (negative) shadow rays onto another nearby surface as a subtraction from the light rays which were already there to create the look of a shadow. The baseball casts its shadow rays onto the ground plane beneath it. If the ball didn't cast any shadow rays then the area beneath the ball would be just as bright as the rest of the ground plane because as stated, all parts of the ground plane can technically feel the influence of the distant light source. When we "disable" shadow casting for a light source, what we are really doing is disabling the casting of negative shadow rays that would have been fired by the geometry in response to the influence of the primary rays from this light source. Luckily a ball is an opaque object, with a defined and hard physical edge, so calculating its shadow cast is easier than if the edge of the ball had been "fuzzy" as with transmapped textures.
Opaque vs Transparent vs Transmapped vs Translucent vs Sub-Surface Scattered (SSS) surfaces
Opaque surfaces absorb all light rays which strike them. End of story.
Transparent surfaces allow rays to pass through them and can refract (redirect) light rays within the volume of the material, and the basis of optical refraction is a value which must be set based on the type of material you plan to create. Water has a different refraction than a diamond. Caustic patterns tend to emerge due to refraction (redirection and clustering) of light rays due to the curves of the surface. Transparent surfaces which are smooth also naturally produce a certain degree of surface reflection as well. Reflections occur on the surface, not within the material and reflection rays are always bounced based on the angle of the incoming ray plus the influence of the surface bumpiness. Typically, light rays exit a smooth surfaced /low refraction rate transparent object in generally the same direction it has entered, there is no internal scattering, rays are never sent out int eh opposite direction that they came in.
Transmapped surfaces are basically opaque surfaces that allow light to penetrate so there is no refraction element (rays are not redirected), nor is there a surface reflection element to consider. The problem comes with the fact that transmapped surfaces are "fuzzy" along the edge.
Translucent surfaces like leaves or a sheet of paper are similar to transparent surfaces except that some light rays are absorbed, while others are refracted and scattered within the volume of the material (scattering), but there is no reflection element! Translucent objects are almost always paper thin.
Sub-Surface Scattered surfaces are exactly like translucent surfaces but usually for things which are thicker, like human earlobes and skin. Light enters in one direction and is bounced around beneath the surface and will exit in almost any random direction and is not entirely based on the direction of the incoming rays thus scattering occurs.
How this relates to Transmapping and render times
Lights are not the only entities can that fire "rays." In fact, surfaces themselves also cast light rays, and surfaces also cast all of the shadow rays in a render, all of them (unless the light itself is negative). Detailed models cast more complex shadows that simplified ones. A transmapped model is in theory similar to a highly geometrically complex object when it comes to render calculation
Due to the fact that most lights are fired from points yet most shadows are fired from volumes with surface area, 99% of the time CG renders require many more secondary shadow ray firings than primary light ray firings. And if the shadows are meant to be softened along the edge, the number of shadow rays needed to form gradients is much higher yet which is why soft shadows are so expensive on render time generally. As a general rule, for every primary light ray fired in a scene, hundreds to thousands to millions of dim shadow rays are needed to compensate. If the surface is transmapped as well, the issue is exponentially worse.
Rays
The logic of transmapping means that lots more of both light and shadow rays need to be fired than in a typical opaquely rendered surface. A ray can only do one thing at a time and rays are almost always absorbed or redirected (refracted), but for now its the absorption that matters most. A Primary ray strikes the surface and is absorbed, and if the surface is opaque the surface will simply fire a shadow ray in the opposite direction of the incoming light ray creating the look of a proper shadow. But with transmapped surfaces, the primary ray strikes the surface and is still absorbed just as with opaque surfaces, so to create the look of light continuing to pass through the object, the object's surface itself must fire additional light rays continuing in the same direction as the original ray, but it must also cast some shadow rays too since the object is only partially transparent. See the issue? This easily adds up especially if you use better lighting, because better lighting always means more primary light rays, which means exponentially more secondary shadow rays.
Too often we sacrifice lighting and shadow quality in favor of faster renders when working with scenes comprised of transmapped textures. Finding geometry based hair uses much more ram but tends to render hundreds of times faster than transmapped hair, leaving you the overhead to employ more accurate lighting which will almost always result in a better looking final render. Fun fun!
I've been doing dark and evil things with Jack Tomalin's Invetero set over the last few weeks. Any scenes with a lot of the fountain water in the background always take significantly longer to render. This is a pity since Jack's water texture is better than almost any other PA's.
Water can potentially be much, much worse. As well as the transparency, you also have the calculations for reflections and refractions depending on how thoroughly the water material is set up. All of this number crunching takes time, again, heavily dependent on your precise render and light/shadow settings. And that's just for the 3Delight render engine used by D|S — I'm slowly getting my head wrapped around Luxus, and with that an overnight render is not unusual. Sometimes longer. :ahhh: