Wrapit must be first downloaded and installed to purchase a license.
How to Install
Wrapit must be installed in each version of 3d Max you plan to use it in, and for each User. Once downloaded you may install Wrapit by one of two means:
Drag and Drop the wrapit_1-58_installer.mzp into a 3ds Max viewport.
Open 3ds Max and go to the 'Maxscript' menu, chose 'Run Script' and select the wrapit_1-58_installer.mzp file
How to Authorise
Note:Wrapit can only be authorised when 3ds Max is run with Administrator priviliges. Once authorised by an Administrator account all other windows accounts are automatically authorised. Wrapit needs to be installed for each version of 3ds Max required and for each user account required.Once installed Wrapit will generate a machine specific request code, which must be entered when purchasing. After a successfull transaction you will be supplied with a machine specific serial number (your license).
A single license validates Wrapit for use in any compatible versions of 3ds Max, for any user on that machine.
Wrapit requires 3ds Max v 2009 - 2019 to function. The system requirements are therefore those suggested by Autodesk for these packages. If you experience issues with the Nitrous Viewports in 2012 or newer then we recommend using legacy DirectX viewports.
NOTE: Wrapit is a plug-in for 3ds Max, and as such assumes the end user has good working knowledge of the base package, and in particular the editable poly workflows.
Customising User Interface
Once Wrapit is installed it can be found under Customise/Customise User Interface. In the MainUI Group you will find a "ThePixelHive" category which contains Wrapit
You will need to assign Wrapit to a button/menu/keyboard shortcut/right click menu to launch. If you are unsure how to do this you will need to read the Max help files, see: Autodesk 3ds Max Help/ Customizing the User Interface/Customize User Interface Dialog.
Usage should be pretty straight forward: Select your "HIGH" target object (object to work on the surface of), select "LOW" source object (start with whatever you like, this is the retop mesh) and click autowrap. The Source object will snap to the surface of the target object, then you are free to work with editable polygon tools as usual. Autowrap monitors the mesh for changes then snaps any verts that may have moved or been created to the surface of the target object. This snapping occurs on the release of the mouse button, or in the case of some editable poly tools, when they are committed by pressing "Apply".
Target Object (HIGH POLY)
The Target Object is the high-res mesh or meshes you wish to wrap to. Pressing the button brings up a 'select by name' dialogue, allowing you to select one or more geometry objects. The spinner controls the opacity of the target object(s). Target objects remain unselectable until Wrapit is closed or another target is selected. It is advisable to reset xforms on your target object(s).
Source Object (LOW POLY)
The Source Object is the object you will work with on the surface of the Target Object. You may select any existing geometry, or start using the painting tools to create a new Source Object from scratch.Existing geometry will be collapsed into an Editable Polygon object at the base level, leaving the stack intact so far as the modifiers allow. Once a Source object is chosen Wrapit will actively maintain the source object as an Editable Poly when the stack is collapsed.To prevent unpredictable results the source object's transforms are locked, so all transforms/editing should be done at the sub object level.You can right click on Source Object button to use the 'select by name' dialogue if preferred.The spinner controls the opacity of the source object.
">" Button: QuadGen
This launches QuadGen. QuadGen is used to automatically create quad based meshes based on the Target objects. QuadGen has the following options:
QuadSize: This is the approximate size of 4 sided polygons (quads) in the generated mesh.
Preview: This projects a grid onto the surface of your high poly target object to give an indication of the Quadsize spinner value. Note this is not an indication of actual topology.
Hide Target: This allows for the target to be easily hidden and unhidden, facilitating the process of checking your generated model.
Optimise Quads: This performs a level of optimisation to the final quad mesh, whilst retaining only quad faces. It produces far cleaner results, but can be slow on denser meshes.
Project UVs: This will attempt to project UV's from map channel 1 of the High poly Target object to the Quadgen mesh. Target objects with fewer seams and Quadgens with smaller quads will produce better results.
Project Material IDs: This will attempt to to project the face material IDs from the High Poly Target object to the QuadGen mesh. Quadgens with smaller quads will produce better results.
Apply Materials: This will assign the material from the High Poly Target object to the QuadGen mesh. In the case of multiple Target Objects, a SubObjectMaterial will be created with each material, so Project Material IDs should be checked.
Copy Pivot: This will align the generated objects pivot to that of the target object.
Apply Mesh back to Wrapit. This will generate a quadmesh, and return it to Wrapit as the Low poly source object. Any currently assigned source object will be released.
GENERATE: This will generate the QuadMesh using the above options. You are free to create multiple QuadGen objects/experiment with quad sizes.
When working with target meshes with internal faces, or multiple overlapping target meshes QuadGen should only create a solid water-tight outer hull. When target meshes have open edges you may find that Quadgen creates double sided meshes (coplanal faces). These can be cleaned up some degree by using the 'ignore backfacing' and 'by angle' options in editable poly face mode, to isolate the back side.Smaller quad sizes will result in longer generation times. If you need a really high res Quadmesh, then it will be quicker to experiment with the Quadsize to generate a mesh that basically describes the target volume with the lowest value, then take the QuadMesh into Wrapit itself and subdivide with autowrap switched on.
This toggles the 'show selected with edged faces' mode in Max. This allows you to see your edges on the source object without having them on the high res target object, which would be visually messy and slow. Maxscript offers no way to check whether edges faces is on or off, only to toggle, so this may appeared ticked when off or vice versa.
The slider works as a cross-fader between the target and source object, allowing you to easily see whats going on. Adjusting this overrides the individual opacity spinners.
Toggles the main Wrapit engine on and off. When 'on' any alterations made to your source mesh will snap to the target object. This is evaluated on mouse button release. Certain commands like the interactive manipulation dialogs of extrude, chamfer etc are evaluated when the 'Apply' button is pressed. (see update/brute force) Update (icon)
Certain editable poly commands may create verts that are not assessed by the Wrapit autowrap algorithm. Pressing this will force Wrapit to re-assess all verts, any rogue verts should snap to the surface. When Brute Force method is used this button is greyed out, as Brute Force is essentially doing this automatically. Brute Force
Most of the time you'll want to leave this switched off. It causes a re-evaluation of the entire source object after each mesh change. This helps catch all the exceptions that the speedier default method misses, like bridging, painting relax, etc. As your source object increases in complexity you may find this option slows things down. Distance
This acts as an offset from the target mesh surface, to which your source mesh will snap to. Adjustment happens when the mouse is released and only when Autowrap is on. Adjustments to this figure force Wrapit to reinitialise, which cause a noticeable pause on dense target object(s), this is normal.NOTE: The distance spinner isn't directly reversible. For instance, If you start at 0.1, move it to 1.0 and then back to 0.1 your verts wont necessarily be in the same location as when you started. With very small increments it should be practically unnoticeable, but large changes can be unpredictable. If you do change the distance spinner and find the results undesirable, then undo the change rather then put the figure back to it's initial setting. That way you are sure to get back to the state you left it in.
These radio buttons control how the AutoWrap function works.
"C" Closest point: verts snap to the closest point on the High poly object. This is the default option and by far the fastest of the 3.
"S" Screen Mode:Verts snap to the high poly object in screen space. Rays are fired from the camera/viewport through each vert until they hit the target object. Care should be taken in this mode, as the results of your actions are not always clear through your viewport, eg performing a relax would snap everything to the view facing surface.
'V' Vertex Normal Mode: Verts snap to the high poly object along their normals. This is the slowest option. Once you have initially projected in this mode it makes sense to switch to C mode to continue working."
Does a global relax on the whole object. If AutoWrap is switched on the relaxing will occure over the surface of the target object. Very handy for even out retopology over your target object.
Select an edge or edges and click, the resulting edge loop is relaxed.
Relaxes the current sub object selection on the surface of the target mesh.The A and I sliders are directly comparable to the Amount and Iteration amounts in the Source Object relax dialog, as is the Hold Boundary toggle. Altering them in the Wrapit rollout or the Editable Poly rollout has a direct effect on the other.
Extend edges. This is a kind of automated 'shift drag open edges'. The spinner is the distance to extend.
Inserts an edgeloop crossing the current edge(s).
Removes edgeloop based on current edge(s) selection.
When in edge subobject mode any selections are automatically converted into loops.
Makes the current edge loop/loops planar in their local plane. More reliable method than that under editable poly, and works with multiple loops around their local centers.
Flattens the current subobject selection, in the designated axis, in world space, around the selection center. Good for tidying loops. Is progressive, so keep clicking to refine result. There may not be a point on your mesh that falls on this plane, in which case the nearest point is used. When used in edge mode, with multiple edgeloops each loop will be considered individually.
Lock Verts Wrapit uses the vertex color channel to control which verts are considered during the wrapping process. This enables you to lock down areas you are happy with, or to build away from target surface as you would normally work. Locked verts are ignored by Wrapit, but still editable in the normal way. Locked vertices are not effected by the distance spinner, which allows for verts to be locked at different distances.Max automatically interpolates vertex colors of newly created geometry based on the surrounding existing vertex colors, so adding new geometry to a locked area will be locked at creation time.
Locks the verts based on the current subobject selection (use verts, edges or faces)
Unlocks the verts based on the current subobject selection (use verts, edges or faces)SelectSelects all locked verts.
Toggles the vertex color display, to help visualise the locked verts. Pure white (255,255,255) verts are considered unlocked, everything else locked.
Painting tools should be used in perspective views only, orthographic views can lead to alignment issues.There are two basic modes of painting, Stip painting and Branch painting. Strip painting is used for painting single strips of quad polygons onto a surface. Branch painting is a 3D painting tool which is used for quickly retopologising cylindrical objects.
Strip Paint Tools:
There are two variants of strip painting: Free Paint and Click Paint.
Free paint allows freehand painting of mesh strips on the target mesh(es). The spinner controls the size of the quads making up the strip. When initially painting a stroke you need to move the mouse more than one of your spinner units before the first quad is drawn.
Shift click to start from an existing edge nearest the mouse pointer. A gizmo will appear highting the chosen edge, hold shift and drag to change edge. Release Shift and start painting to branch off.
Alt click to bridge to an existing edge. Paint close up to your desired edge then hold Alt to bridge the remaining gap to the closest edge. It is important to make sure you paint up close to the desired edge then press Alt, as Wrapit will bridge to the nearest valid edge, which can actually be back on the stroke you've just painted, and is usually undesireable.
Ctrl click activates the tweak brush. The tweak brush allows for single vert editing. Move the mouse over the vert you wish to move, click Ctrl and drag it into position. If the vert is placed within the Tweak Weld threshold to another vert, then these will be welded.
Click paint allows a more controlled 'click painting' of mesh strips on the target meshes. Left click to form a new quad segment. The spinner controls the width of the strip.
Ctrl click to end a strip, the next stip will be started anew. Hold Ctrl to activate the tweak brush. The tweak brush allows for single vert editing. Move the mouse over the vert you wish to move, click Ctrl and drag it into position. If the vert is placed within the 'Tweak Weld' threshold to another vert, then these will be welded.
Shift click to start from an existing edge nearest the mouse pointer (hold shift and drag to see this edge highlighted).
Alt click to bridge to an existing edge. Wrapit will only create quads, so if you try and bridge to an edge that would result in a triangle Wrapit will find the next nearest edge which will create a quad.
When inherit size is ticked and you use shift-click to start a stroke from an existing edge, the brush size is inherited from the length of that edge.
When in paint mode you should left click on the mesh where you wish to start your branch. At this point a gizmo will appear which is indication where Wrapit will place the next branch segment if clicked.When in M mode (see below) these segments are orientated depending on the last clicked position. This allows clean topology aligned along the flow of the target object. Shift+Left click to start a branch from an existing border on the source object. The nearest border to the click point is chosen and highlighted. If the "'Inh'" tick box is checked then the branch Sides will be inherited from the selected border edge count. If 'Inh' is not checked and the number of sides from an existing edge differs from the current sides spinner, then Wrapit will start a branch with appropriate non quad faces.To end painting simply click the Paint button again, press 'escape' or right click.
NOTE: Keyboard shortcuts are inactive whilst in this mode, but 'undos' can still be achieved by clicking the undo icon. This is a restriction imposed by Maxscript when using this specific mouse tool.
The number of sides for the branch brush. Think of this like "Sides" spinner on the Cylinder primitive. The sides can be changed whilst in mid branch creation, although this will create non quad polys.
These control the orientation of the the segments created by each click of the branch brush. The default is 'M', which stands for 'Mouse' and means each segment is orientation depending on the position of your previous segments.X,Y and Z lock the orientation of each segment to that axis. The axis can be changed whilst in mid branch creation, and gizmo will reflect this.
Save settings stores certain Wrapit UI states for convenience.
Show Warnings: When checked Wrapit will display certain warning messages, such as the need to collapse the source mesh to an editable poly object. Default value is true.
Opacity: When checked the individual opacities for the source and target objects are stored. Default values are 0.7 and 0.3 for source and target respectively.
Wrap mode: Currently inactive
Wrapit Distance: When checked the distance spinner value from the Wrap rollout is saved. The default value is 0.0
Lock Sym Thresh: When checked the threshold value for locking center verts is stored. Default value is 0.1
Brush Type: When checked the Strip painting tool default value is stored, either click paint or free paint. Default is free paint.
Brush Size: When checked the Strip paint brush size is saved. The default value is 5.
Branch Sides:When checked the number of sides for the branch tool is saved. The default value is 8
Branch mode: When checked the branch mode orientation mode is saved, the default is 'mouse'.
Wrapit Dialog pos: When checked the last position of the Wrapit rollout is stored.
When unchecked the default values are used. If the wrapit.ini file is deleted then it will be recreated with the default values.Clean Save: For debugging purposes, but should generally be left ticked. Uninstall: Removes the current Wrapit installation Debug: Creates a text file with some system information, for debugging purposes Reqcode>Clipboard: Copies your request code to the clipboard for debugging purposes
Here are some Frequently Asked Questions, which are regularly updated:
Purchasing and licensing:
-How does licensing work for Wrapit?
-Each Wrapit license is tied down to one machine. Wrapit can be installed and operated on multiple versions of 3ds Max on that machine with just the one license. Max must be run as Administrator to initially authorise Wrapit, but will then work for restricted users too.
-I've paid for Wrapit but haven't received my serial number, what's going on?
This should be a fairly instant process, but if you have not received your serial within 24 hours then please contact us. It is, of course, also worth checking your spam folder. If you chose to pay with an echeque this will have to clear, which can take several days. See the PayPal website for details.
-Can I transfer licenses?-No, a license is not transferable. Cases of machine failure/upgrade/serial breaking should be emailed to firstname.lastname@example.org and will be dealt with at the discretion of The Pixel Hive.
-Is there a demo version?
-A demo version is being prepared and should be available soon.
-What are the system requirements for Wrapit?
-Wrapit is a scripted plugin for 3ds max 2009, 2010 and 2011 (& Design). The system requirements are therefore as those products state. For retopologizing multi-million polygon meshes 64bit versions of Max are recommended, with at least 4GB RAM, and industry standard graphics cards.General opertation:
-Show edges doesn't seem to work properly?-Show Edges allows you to see the edges on your low poly object, without showing those on the hi res mesh (which tends to bog down the viewport and makes things hard to distinguish). It uses Max's "Show Selected With Edged Faces" option. Unfortunately Maxscript doesn't allow Wrapit to query the state of this condition (ie: whether it is on or off), but only to flip it to the other. Hence, sometimes you may find the tick box is checked, but the Edges are off and vice versa.
-Why do I get a "Select from scene" dialog box for the High Poly object, but not for the Low Poly object?
-It's by design because you can select multiple High Poly objects to wrap to, but only one Low poly object to work with. You can, however, right click the Low Poly button to bring up the select by name dialog.
-Can I override the cross fader to see both the Low and High meshes at once? I have the distance value set so that it I don't really need to cross fade
-Yes, the individual spinners next to the High Poly and Low Poly buttons can override the cross fader and both be set to 1.0. Moving the cross fader again will then itself override those.
-Why can't I move my High Poly/Low Poly object once selected by Wrapit?
-This is by design. High Poly objects are cached and frozen for speed and ease of use. Low poly objects must be edited at a subobject level, where you can perform any translation you wish.On closing Wrapit these restrictions are lifted again.
-How does Branch Paint work?
-It helps to understand the inner workings of the branch tool to avoid some of the problems that can be experienced. When you click on the target mesh a ray is fired through the mouse viewport position into the target mesh. Hopefully this will return a bunch of faces that were intersected, if not then they you have either selected somewhere outside the mesh, or have only hit one face (for instance as you would on a plane primitive). In the latter two cases the brush will not do anything, and report "Nothing Hit" in the listener.Assuming we have hit a bunch of faces, the next step is to discard all but the closest hit and the furthest hit. From these we compute the mid point, which should be inside the limb you are trying to retopologise*From here Wrapit fires further rays out in a radial pattern to try and hit the inside of that limb, the orientation of these rays is based on the M,X,Y,Z buttons.Because of this overlapping target geometry, or target geometry with internal faces are not suitable for branch painting.*It is important to keep the viewport orientated to ensure that the area you are painting over doesn't overlap with other geometry. Branch painting on a characters leg whilst the other leg is in the firing line (eg in a side view), would cause Wrapit to consider both legs as one, and would actually create the branch in the void between the legs. Ouch.Areas were limbs connect to the body, like where the arm meets the shoulder, need to be treated carefully as in this instance the branch will want to shoot out and fill the void of the torso. This should be evident from the gizmo.
-What are Wrapit_temp_Layer and Wrapit_temp_object?
-These are used by Wrapit by certain background operations, and should be ignored. Wrapit tries to prevent any tampering with them as this can cause instability. Wrapit maitains both the layer and object, and they will not show up in any saved scenes or autobacks.
-Why doesn't AutoWrap work in 'local' transformation mode?
An ongoing bug was leading to mesh corruption, so for now Autowrap is disabled when in Local mode.
-When relaxing in Vertex Projection mode I sometimes get strage results.
Once you have snapped verts to a surface I recommend using Closest Point mode. Not only is it many magnitutes faster, but it doesn't exhibit ray firing errors, which can lead to vertices snapping to incorrect places.
-Why is there no Help File included?
The online help is constantly being updated and is in a state of flux, but will hopefully be included as part of the installation in future, when it is more complete.
-Help, Wrapit crashed!
-Wrapit has been in beta for nearly 2 years, and has proven to be quite stable in production environments, but mistakes to creep in from time to time. If you can recreate the bug then all the better, but a brief explanation of what happen to email@example.com will help get it fixed. Note that once an error occurs closing the Wrapit dialog will attempt to restore the scene as best as possible. It is then recommended to restart Max.