Randomize UV coordinates

7 votes
v 1.2
Date Updated: 

This script randomizes UV Offsets of selected objects or selected object's elements. It's an irreplaceable tool to bring some variace to your models!

1)MaxScript --> Run Script
2)Customize User Interface --> Toolbars --> Category "# Scripts"
3)Drag and drop "randomize UV coordinates" to any panel you want

Video URL: 
randomizetexture1.2.ms2.95 KB


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
MichaelFahmy's picture

Good Job

Thanks, Works just fine.

1rv's picture

logged in just for up-vote.

logged in just for up-vote. So helpful for imported meshes from Sketchup!

super gnu's picture

uv channel

works great for me, but no way to change the uv mapping channel? its more than a little common to have mapping in channels other than 1. any chance of a fix/workaround?

deathevor's picture

As mentioned by somebody in

As mentioned by somebody in comments:

Worth to add Float number to offset. Like:
i.modifiers[#UVW_Xform].u_offset = (random -2500.00 2500.00)
i.modifiers[#UVW_Xform].v_offset = (random -2500.00 2500.00)

As in some cases offset by 1 (or any integer) means full tile offset, so txture stays in the same position.

So by using float or at least decimal will fix that.

klyde's picture

Very useful script

Marobaro, if you disable rotation, you'll got that you want.

klyde's picture

no shift

Marek, I wrote this script to the real world map size approach.

theedge's picture

Making the shift work

I got the UV shifting to work (max 2015) by replacing these two lines

i.modifiers[#UVW_Xform].u_offset = (random -2500 2500)
i.modifiers[#UVW_Xform].v_offset = (random -2500 2500)

By these ones :

i.modifiers[#UVW_Xform].u_offset = (random -1.0 1.0)
i.modifiers[#UVW_Xform].v_offset = (random -1.0 1.0)
marobaro's picture

no shift

Hi Alexander

I don't know if you keep an eye on this thread. If you do - the script doesn't quite work the way, which I think you intended in max 2014 (x64). In your video, it is clearly demonstrated that you are able to just shift the UVWs by element (the beginning of the vid). Sadly this functionality is missing for me (and I suspect others judging by their questions). I am only able to rotate UVWs by element. Random shift is not working :(
Is this something that you could look into, by any chance?
Thank you

marobaro's picture

Very useful script

Very useful script Alexander.
Would it be possible to add option to shift (randomly) the UVWs rather than rotating them? Important if you want to break the continues pattern, but retain directionality (i.e. wood grain on panels, or parquet, etc.)
Thank you

klyde's picture

Yes it's possible, but if you

Yes it's possible, but if you can persuade me, that it is so important, I'll recommend you to use split commad for all edges of an object instead.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.