Forum: Poser - OFFICIAL


Subject: Faster rendering?

Dorie0924 opened this issue on Jul 04, 2006 · 12 posts


bagginsbill posted Wed, 05 July 2006 at 9:17 AM

I've let a couple of these "tips" go a few times, but I have to speak up because it's really bothering me that people are lowering their render quality for little benefit.

In the attached image, I've rendered Jessi, hair, and some clothes at exactly the same render settings, but for one change. The image on the left has max texture size set to 512, because the suggestion was "Don't use a Max texture size larger than the size of your render" and the render was 512 by 512. On the right, the same render was done with a Max texture size of 2048. You may disagree, but I see a really big difference. The scarf texture is totally muddied on the left, and totally clear on the right. The details on her face, lips, eyebrows, hair, all improved by using the larger texture size. Please click the image to look at it in full size. You should easily be able to see the differences. If I were doing a large render, over 1K, you'd REALLY see a difference.

Render times: Left Image = 1 minute 27 seconds, Right Image = 1 minute 29 seconds.

That's a 2 second difference :)

Carefully examine the hi-res skin texture for Jessi's head. The image file that comes with Poser 6 is 4000 pixels by 2110 pixels. If you tell Poser to limit that to 512 pixels, then the part that has all her facial details ends up being only about 150 by 150 pixels. If you are rendering her face in a picture that is 512 by 512, then her face texture is being reduced to 150 by 150, then blown up in the render to 512 by 512. This grossly ruins all the details.

So if you really are trying to optimize memory use, which only loosely translates into speed, then you have to calculate the effective area of the texture file that is being displayed, and scale accordingly. In the unmodified texture file, Jessi's facial details roughly occupy the center 1000 pixels of the image. So if you're rendering a closeup of her face at, coincidentally about 1000 pixels, then you want the full 4K image, otherwise you'll lose detail. If you're rendering her face at 500, then a 2K image size works fine. But don't go below that.

Of course, if her face is only a small part of a large scene, for example her face is only occupying 100 pixels in the render, then a max texture size of 400 (1 / 10th) works great. But be aware that is not the only texture you're shrinking - the setting is a global one and applies to all textures in the image. Basically you have to take into account all the elements of the scene and adjust the setting to the one that needs the most detail. But I don't bother unless I've used up all of memory.

Texture size loading is only a small part of the render time, so reducing it makes only a couple seconds difference. However, if you are out of memory, then a totally non-linear problem occurs and you must reduce the texture size. The issue is that if Poser needs to hold more stuff in memory than you have, it will start swapping pieces to disk, which HUGELY slows it down. But, if you are not swapping, then there is very little speed change, because all your textures fit into memory at the same time.

A far larger effect on render time is the "Min shading rate" parameter. When you set this to below one, Poser does extra samples to decide what color to make each pixel. This produces more accurate rendition of your detailed textures. I did the above render with Min shading rate set to .25. If you raise it to 1, you'll get nearly the same amount of detail, but here and there individual pixels will be wrong. But this does cut the render time to 45 seconds, about half. However, really busy textures, like on Kozaburo hair, will end up showing artifacts.

So for test renders you're just trying to get the overall lighting and colors adjusted, use a high Min shading rate, like 2 to 4. When you go to make your final image, drop it to the range of .25 to .5.


One other thing - turning off ray tracing to save time has no effect unless you are actually using some feature of ray tracing. For example, if your scene uses no ray-traced shadows, no reflection, and no refraction, then it doesn't matter if you turn ray-tracing on or off. Every timing test I've done confirms this. On the other hand, if you do use ray-tracing elements, like reflection, refraction, or ray-traced shadows, and you turn it off, it will go faster, but it won't be doing the same image at all.

The moral of the story is, I leave ray-tracing on all the time. When my scene doesn't need it, Poser ignores it and goes the fastest possible speed. When my scene does need it, it's on like it should be and I get the right picture.


Renderosity forum reply notifications are wonky. If I read a follow-up in a thread, but I don't myself reply, then notifications no longer happen AT ALL on that thread. So if I seem to be ignoring a question, that's why. (Updated September 23, 2019)