Author Topic: Images in a graph and performances  (Read 2057 times)

Hi there,

I was wondering how exactly existing images in a graph impact the graph's evaluation.
I'll make an example.
I am putting several images in a graph, but not all of them are actually used: through a network of switch nodes I will later decide which image will influence the node network.
Now, from what I understand, if I set the graph resolution to "Parent", all the images in the graph will be resized, even if I will not be using them, impacting performances... am I right?

It would be awesome to dynamically exclude nodes from the graph's evaluation with a boolean button :)

Furthermore,  I noticed that calculating a graph with only four or five 4K textures can be very slow, even when the only other nodes in a graph are just blend operators (no fx or masking).
From what I know SDesigner uses the gpu. Personally at home I work on a laptop with a Geforce 555M (3GBram).
Now, I understand it may not be the most performant videoboard out there, but still these are specs from a laptop that is just 2 years old.
Also, many studios where I worked, never have the latest videocard, for example where I work now I have a GTX 660.

Are there any plans to improve graph evaluation drastically?

Thanks!


Hi there,

I was wondering how exactly existing images in a graph impact the graph's evaluation.
I'll make an example.
I am putting several images in a graph, but not all of them are actually used: through a network of switch nodes I will later decide which image will influence the node network.
Now, from what I understand, if I set the graph resolution to "Parent", all the images in the graph will be resized, even if I will not be using them, impacting performances... am I right?

It would be awesome to dynamically exclude nodes from the graph's evaluation with a boolean button :)

Furthermore,  I noticed that calculating a graph with only four or five 4K textures can be very slow, even when the only other nodes in a graph are just blend operators (no fx or masking).
From what I know SDesigner uses the gpu. Personally at home I work on a laptop with a Geforce 555M (3GBram).
Now, I understand it may not be the most performant videoboard out there, but still these are specs from a laptop that is just 2 years old.
Also, many studios where I worked, never have the latest videocard, for example where I work now I have a GTX 660.

Are there any plans to improve graph evaluation drastically?

Thanks!

Hi Mario,

I am putting several images in a graph, but not all of them are actually used: through a network of switch nodes I will later decide which image will influence the node network.
Now, from what I understand, if I set the graph resolution to "Parent", all the images in the graph will be resized, even if I will not be using them, impacting performances... am I right


The images will be resized if the graph is setup correctly. Images that are imported have their output size set to Absolute. If you want to have the images resized, the very next node connected to them needs to have its Output size changed from Input to Parent. Even if you resize the graph, the embedded images will not be scaled because they are set to absolute. Only the the nodes afterwards are adjusted.

The devs are always working on optimizing the graph evaluation. The Substance GPU engine for 4K is GPU driven so it does require a beefy card. I know the devs are aware of the increasing need for 4K, so they will be working on solutions.

Cheers,

Wes
Head of Substance Demo Art Team
the3dninja@adobe.com
Twitter: The3DNinja

Hi Wes,

glad to know that devs are working on improving performances :)

The images will be resized if the graph is setup correctly. Images that are imported have their output size set to Absolute. If you want to have the images resized, the very next node connected to them needs to have its Output size changed from Input to Parent. Even if you resize the graph, the embedded images will not be scaled because they are set to absolute. Only the the nodes afterwards are adjusted.
I see what you mean: leaving absolute size for the imported images in a way they aren't recalculated, and, after the switching (filtering) operations, set the very next node to Parent.
Oh yeah, that will work, thanks!  ;D