Skip to main content
Known Participant
November 12, 2024
Answered

How to give each new instance a new random seed?

  • November 12, 2024
  • 2 replies
  • 1524 views

I make a lot of custom SBSARs to use in Substance Designer and each time I add one I manually change the seed value to make it unique.

I would love each one of my new custom nodes that I add to my graph to have a totally random seed.

 

So far I tried generating a random number using the random function in a value processor but I came up against two problems:
1. I can't figure out how to assign the random number to the node's random seed

2. The random generator is pseudo random ad not truly random so it would be the same value each time.

 

TLDR:

Is there a way to make each new instance automatically use a new random seed number?

 

 

 

This topic has been closed for replies.
Correct answer Luca Giarrizzo

Hello,

 

There is currently no way to automatically assign a random value for the random seed of new instance nodes. That would indeed be useful and I have shared that suggestion with the rest of the development team.

 

In version 12.4.0, we have added a button to the 'Random Seed' parameter to quickly generate a random value, although I understand this is still a manual operation for each new node.

 

I appreciate your patience regarding the current limitations of random seed management.

 

Best regards.

2 replies

davescm
Community Expert
November 13, 2024

Hi
Thinking this through, I think there is a way - but it is a bit clunky.

 

Within the node(s) to be instanced add the following:

a. An integer input node - I've called mine Randomise and labelled it _randomise

b. A short node chain that increments that value. I added 5 as the rounding process sometimes missed single values.

 

 

The uniform colour has its grey value output set by this function

The value processor has this function

 

c. Now you have an incrementing value passed from input to output within the instance it can be used to drive any nodes within the instance which use a random seed. To each, add an input and use that input to drive the random seed value for that node. As an example I have a perlin noise to which I added an input, called #_inRandom, connected to the incrementing seed value

 

and then added this function to the Random Seed value for Perlin Noise

 

With the instance node set up, you can use it in another graph and chain those input & output values

 

It seems to work, although you may need to recompute the node thumbnails to see the effect.

As I said, it is clunky and I would much rather see a switch to use a unique random seed for each instance.

 

Dave

 

Luca Giarrizzo
Community Manager
Luca GiarrizzoCommunity ManagerCorrect answer
Community Manager
November 13, 2024

Hello,

 

There is currently no way to automatically assign a random value for the random seed of new instance nodes. That would indeed be useful and I have shared that suggestion with the rest of the development team.

 

In version 12.4.0, we have added a button to the 'Random Seed' parameter to quickly generate a random value, although I understand this is still a manual operation for each new node.

 

I appreciate your patience regarding the current limitations of random seed management.

 

Best regards.

Luca Giarrizzo | Quality Engineer, 3D & Immersive | Adobe
Known Participant
November 13, 2024

Thank you very much Luca. It's good to know that I'm not missing something somwehere.

The generate button is a great step forward.