[Plugin] TextureRandomizer
-
Thanks TIG.
However it does absolutely nothing here, no dialogue appears.
I got this in the ruby console:Error; #<ArgumentError; Cannot convert "1.0" to Length> C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/TextureRandomizer.rb;121;in `to_l' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/TextureRandomizer.rb;121;in `dialog' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/TextureRandomizer.rb;114;in `new' C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/TextureRandomizer.rb;96 C;/Program Files (x86)/Google/Google SketchUp 7/Plugins/TextureRandomizer.rb;96;in `call'
-
Awesome TIG! I am sure this can be used by a lot of people to leave their projects more realistic!
-
Here's v1.1 http://forums.sketchucation.com/viewtopic.php?p=392834#p392834
I fixed a stupid typo [and some incorrect 'default values'] that meant it didn't work if you use a ',' as a decimal point instead of a '.' is fixed...
[I hope this address's massimo's report] -
Does this a variation of only one texture or several textures ?
-
It affects ALL textured materials on ALL selected faces [fronts].
So if you want to tweak one particular face+material combo then 'select by same material' before running the tool...
Otherwise it randomizes everything !
Any selected non-faces, or faces with non-textured materials, are ignored anyway... -
Now seems to work fine. Thank you.
It would be nice if it worked also with groups... -
@massimo said:
Now seems to work fine. Thank you.
It would be nice if it worked also with groups...
A textured-material applied to a group is non-editable.
Only textured-materials applied directly onto to faces are editable.
If you mean it working on textured-faces that are inside groups, then if you edit the group/component you can randomize the textures on selected faces within the edit session...
It would be possible to add extra code to process selected textured-faces AND textured-faces inside selected groups/components...
Does this method appeal to anyone else ? -
@unknownuser said:
It would be possible to add extra code to process selected textured-faces AND textured-faces inside selected groups/components...
That's what I meant.
-
Here's v1.2 http://forums.sketchucation.com/viewtopic.php?p=392834#p392834
If there are any groups/component-instances in the selection, and they
contain textured-faces a dialog asks if you want to include those faces
too, answer 'No' to process selected faces only or 'Yes' to process all
textured-faces, including those inside other selected objects...
It does not 'mine' down beyond the selected context - so nested groups are
never affected. -
Cool effect!
Before use your plug above
[REQ]
Does it possible to apply to a selection of faces some textures randomly from the Texture library ? -
Great.
Now the problem is that all the selected groups are "randomized" in the same way (I've tried with an array of the same textured group). So at the end you have... a different uniformity. -
Nice plugin TIG. Thanks! Possible to add an option for color variation by HSB? Perhaps random slide by percent for Hue,Saturation or black value. Would be great for leaves, brick, stones, etc.
-
@massimo said:
Great.
Now the problem is that all the selected groups are "randomized" in the same way (I've tried with an array of the same textured group). So at the end you have... a different uniformity.
This is NOT a problem with the tool, rather one with the model itself.
So this is not entirely true.
If groups are multiple instances of the same group-definition they are just like component-instances of the same component-definition, so all changes to one will look just the same across all instances.
BUT if groups are unique because they have been edited [equivalent to what you can do with component-instances and 'make-unique' in the context-menu]... then the texture changes WILL be unique to each unique instance of the group.
So in essence what you are saying is, "Multiple copies of a group which refer to the same group-definition [which you can see in the 'Entity Info' count!] will display the same random-texture changes, because they are all 'clones'..." - which is exactly as you should expect.
So you need to edit the groups [without making any significant changes] which will make them unique, and then redo the texture-randomization and then each one will get a unique texture randomization...
To make your groups unique you can try this simple one-liner in the Ruby Console, use it on a preselected set of entities which include the groups you want to 'make unique'...Sketchup.active_model.selection.each{|e|e.make_unique if e.class==Sketchup;;Group and e.entities.parent.instances[1]}
You might get messages about '...deprecated methods...', but just ignore these as there's a long standing balls-up in the API !
-
@earthmover said:
Nice plugin TIG. Thanks! Possible to add an option for color variation by HSB? Perhaps random slide by percent for Hue,Saturation or black value. Would be great for leaves, brick, stones, etc.
This would require a new textured-material [which is of course quite possible] - but this specific tool only randomizes the position/scale/mirroring/rotate of the one textured-material without changing it in any other way except for its UV-mapping... -
Ok, ok...As I suspected. Now your one-liner works like a charm. Any possibility to "incorporate" it in the plugin perhaps as an option?
-
Here's v1.3 http://forums.sketchucation.com/viewtopic.php?p=392834#p392834
If there are non-unique groups in the accepted selection then you are asked
if you want to make them unique, so that their randomized-textures are also
unique... [groups should be 'unique', BUT Sketchup can have more than one
instance of a group !!]
If there are multiple instances of the same component in the accepted
selection then you are asked if you want to make them unique, so that their
randomized-textures are also unique... [use this with care as the advantage
of components - edit one, edit all - is lost by making instances unique!] -
Give a random colors to a volume is easy with the Random Painter by Chris Fullmer
but random textures from the Library of textures? -
Thanks for the reply. I guess it would be best served as a separate plugin called "Texture Variator" or something similar where one could enter the number of variations desired and the range of HSB, thus producing copies and replacing the existing. Texture Randomizer as you have created it works great in my tests and again I thank you for your efforts and generosity! It is a handy addition to your texture toolset which I use everyday.
-
Thanks again TIG. Your patience is equal to your abilities...
-
TIP: Using the same value for the 'max' AND 'min' settings will make that change with no randomization, e.g. set UXmax=1 and UXmin=1 will jump all of the selected faces' textures across by +1 unit.
Advertisement