Jump to content

new tool for looking at render complexity


Nyx Linden
 Share

You are about to reply to a thread that has been inactive for 4788 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

  • Lindens

As I mentioned in the usergroup meeting today, I hacked together a bit of a demo on visualizing the render complexity of various objects in a given scene. Check out a demo of it here:

http://www.youtube.com/watch?v=8aIelrNTnFU

For reference, Blue = good render complexity, Green = fair, Red = poor. For those of you who like specific numbers, the colors scale from 0 (blue) to 1500 (green) to 3000 (red). Anything over 3000 is colored as red. Note that this is using the new (unfinished and unpublished) render complexity algorithm, which is different than what you see in the current mesh viewer, so your objects will be weighted a bit differently.

If you want to check out the effect, you can grab a test viewer here:

http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/nyx-viewer-mesh/rev/225046/index.html

A few caveats:

1) This is an untested build on an unstable branch. I make no guarantees!

2) The new render cost algorithm is not currently finished/correct. The numbers *will* change in the future. Particularly in the following areas:

 - Meshes (weighted and unweighted)

 - prims with animated textures

 - prims with media textures

 - prims with fullbright faces

 - possibly some other areas I'm forgetting at the moment

 

3) This feature has seen no formal QA, its a test I put together quickly. I appreciate constructive feedback, but know that it is unlikely to be perfect at this point.

 

In order to see the new display, turn it on by going to Develop > Render Metadata > Render Complexity. Note that the specific scores of each linkset are brough up in addition to the colored highlight.

You can control the effect with the following debug options:

Render ComplexityColorMax - color of the most expensive objects (default: red)

RenderComplexityColorMin - color of the least expensive objects (default:blue)

RenderComplexityColorMid - color of a mid-range complex object (default: green)

RenderComplexityStaticMax - set a static value for what render complexity equates to "max". Any objects at or over this value will have a highlight of the color RenderComplexityColorMax. If this value is -1, the scale will be recalculated each frame to color the objects based on the current view. (default: -1)

RenderComplexityThreshold: objects less than this threshold will not be colored. This does not have any impact on the color scale's minimum.

 

Let me know if there are any questions, comments, or requests!

 

 -Nyx

  • Like 1
Link to comment
Share on other sites

 


Nyx Linden wrote:

Anything over 3000 is colored as red. 

I have a feeling that the majority of the main grid will be red. Have you thought about adding some more colours for a finer grained scale. Maybe a higher maximum as well, you can use black for those "Might as well be a griefer toy" objects.

 

Link to comment
Share on other sites

EDIT:

At first, I was expecting to see some gradual color changes, it seem too strong on their color tone as if it's only two-color toned theme.

Basically like from red to orange to yellow to lime to green.

 

I've watched the video a few times and... I think your scoring system is off by a bit.

 

What's the break down in the score?

Texture size

Alpha-contained textures

Prim type/cut (polygon count)

Shader effects (Glow and Shine)

....what else?

Link to comment
Share on other sites

  • Lindens

Its a three color scale, though I'm not convinced the blending between the three colors is the smoothest. Its a pretty rough demo at the moment :)

I had set the max scale to 3000 for the video to demonstrate the tool - the default scale recomputes each frame to scale across the range of visible items, so you can see what is the most expensive object in your view.

As for the new algorithm, I'll be documenting it (and how I reached the numbers) once I have a few more of the factors figured out. I've been doing performance testing to ensure that each factor is scaled appropriately. Some of the results have surprised me a bit, but make more sense when I think about it, and I've made sure to get repeat tests for things that seem....unlikely. More details later!

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4788 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...