ScriptSpot

Script

Fit the UVW Mapping Gizmo

By Anubis · 2011-09-17

Version
1.0
Version requirement
3ds max 2008 and higher (or need [AVG] Avguard Extensions for previous)
Date updated
2011-09-17
Votes
3
Description

Perform Fit gizmo operation on UVW mapping modifier on all selected objects.

example

Features:

  • Written as macro script
  • Optimized measurements
  • Allows UVWmap on any level in the mod-stack
  • Perform Fit operation on all selected objects

Thanks to Borislav "Bobo" Petrov for the nice tutorial:
http://www.scriptspot.com/bobo/mxs9/uvwgizmofit/index.html

Additional Info

QUERIES AT ALL ARE WELCOME OF COURSE BUT PLEASE READ THIS CAREFULLY BEFORE ASK WHATEVER! When you add/apply NEW UVWmap modifier it AUTO Fit (so you NO need any script to re-fit your UVWmaps gizmo) AFTER changing settings of EXISTENT UVWmap modifier ONLY THEN you need to Re-Fit it gizmo (and this is the PURPOSE OF THIS SCRIPT)! The script take care of the CURRENT UVWmap settings and AUTOMATIZE the Fit operation on multiple UVWmaps. Also IMPORTANT! Adding/applying Any modifier at ONCE to multiple objects produce One INSTANCE modifier for All objects, AND as you guess (or not), this is NOT the same AS applying UNIQUE modifier to EACH object. Just to append for clarification, there is NO any modifier in 3ds Max that support MULTIPLE GIZMO'S (!) So NOT expect an instance UVWmap modifier to do miracles. IF we could somehow fit "personally" multiple gizmo's ONLY using ONE instance UVWmap modifier THEN we do not ever need to wrote any script. Well, this is an essential, common knowledge of Max. If you have any common usage questions about UVWmaps then just ask in the forum instead. Thanks
Attachments

Tags: fit, gizmo, macroscript, modifiers, uvwmap, multiple, anubis

Comments (7)

Needs tweaking

danieljhatton · 2011-12-15

What I wanted to do with this script is create a large number of windows. Use the detach poly script. Center all pivots to each individual pane of glass, THEN, apply a Uvw map to everything at once, make said Uvw map unique in respect of everything, THEN hit uvw fit. I presumed this would apply a Uvw fit unique to each object, but what it does is apply one Uvw map in the middle of everything, not unique to each object.

Hi Daniel

Anubis · 2011-12-15

Well, as I see, you intend to integrate the functionality of my script to your own script (which has some setup before uvw fit operation).

So, whats do my script though? Its NOT create OR apply UVW modifiers, ONLY perform Fit operation on Existing UVW Map modifiers. In other words, make sure your script WAS applied Unique UVWmaps to each object. Else, you know, no way 1 instance mod to fit to multiple objects, right?

To integrate my code to your script, you need to copy all 3 functions inside -

UVWMapModFit

(main function) +

isModOnNode

&

getModIndex

. And at the end of my code you can see how I call my main function on each selected object:

for obj in selection do UVWMapModFit obj

.

Cheers!

Thanks for the comformation

othoap · 2011-09-21

My original need was to APPLY fitted UVWmaps to a selected group of objects at one time. Max applies the maps to a group but dose not fit them to each individual object.

This maybe confusing to people who don't know this project started on a different thread.
http://www.scriptspot.com/forums/3ds-max/general-scripting/how-can-you-a…

Thanks for all your help.

Me so stupid

othoap · 2011-09-20

Sorry just not getting it.

Are you saying add the UVWmap to each box one at a time? Then if the map get out of wack you can select mutiple objects that all have gismo and your script will refit them?

"Fit the UVW Mapping Gizmo" is meant to work on refitting not apply the UVWmap to a group?

not clear?

Anubis · 2011-09-20

As title and description say - the script only refit the gizmo on existing UVWmap's (not apply new modifiers). When add new UVWmap's you not need those script because they're auto fitted.

Hi Othoap

Anubis · 2011-09-20

I think you add UVWmap as instance to both boxes. Add unique modifier to each object ;)

P.S. - When we add UVWmap it zigmo auto-fit, but if you change #maptype or #axis of the mod after applying, you'll need to press Fit button and this is the task that current script automatize.

how Dose this work?

othoap · 2011-09-19

-I made two box's
-Selected the two box's
-Applied a box UVWmap
-Ran "Fit the UVW Mapping Gizmo"

Result - The UVWmaps were resized and placed between the two box's. Guess I'm doing it wrong.