title: Unity, modify standard shader to randomly flip texture?
body: <p>Imagine a scene with ten simple "cubes" all the same.</p>
  
  <p>They each have the same material "M1" which has the simple standard shader, and, a simple PNG as the texture.</p>
  
  <p>If you go to the material, and adjust the tiling,</p>
  
  <p><a href="https://i.stack.imgur.com/kPc32.png" rel="noreferrer"><img src="https://i.stack.imgur.com/kPc32.png" alt="enter image description here"></a></p>
  
  <p><a href="https://i.stack.imgur.com/XCz0e.png" rel="noreferrer"><img src="https://i.stack.imgur.com/XCz0e.png" alt="enter image description here"></a></p>
  
  <p>You can conveniently flip the texture around for different looks.</p>
  
  <p>Note that of course this will change <strong>all ten</strong> of the cubes all at once.</p>
  
  <p>Is it possible to modify the standard shader, so that, simply,</p>
  
  <ul>
  <li><p>on each object, which uses the material</p></li>
  <li><p>the shader randomly changes the tiling (and, say, the offset)</p></li>
  <li><p>again, I mean on a <strong>"per object" basis</strong>; in the example <strong>each</strong> of the ten would be randomly different.</p></li>
  </ul>
  
  <p>(So: one cube would show tiling -1,1, one cube would show tiling -1,-1 and so on ... each cube different, although all using the <strong>same</strong> material, only one material exists.)</p>
  
  <p>Note, </p>
  
  <p>(1) it's totally trivial to generate a few different versions of the material, each with different tiling, and randomly select one of those for each cube. that's not the way to go</p>
  
  <p>(2) note that if you vary a material, it of course makes more than one copy. you can't have thousands and thousands of materials.</p>
  
  <p><strong>The solution is to have (one) shader which knows to vary (say, randomly) the offset, inside the shader - on each object it is working on.</strong>  (ie on a per specific object basis)</p>
  
  <p>That's what I'm asking about here.</p>