Wrap Change Log
Wrap 2024.11.10
Released November 2024
New Nodes
- SelectPointPairsWithSplines
Provides the full functionality of the SelectPointsWithSplines editor for point pairs
- BlendTransforms
Smoothly blends geometry rotations, e.g. for scaling or limiting eye angles
- LoadCameraTransform
Transforms and rotates cameras, including those imported from Agisoft™, RealityCapture™, Autodesk Maya™, and similar software
- SaveCamera
Exports camera data in FBX format, compatible with Autodesk Maya™, Blender™, Cinema 4D™, Unreal Engine™, and more
- MirrorGeom
Mirrors geometry vertices, e.g. allowing effortless blendshape cleanup duplication
- SwitchGeom
Chooses and passes through one of the inputs to preview experimental changes
- TransferVertexMask
Retains the same vertex mask across geometries with different topologies
- ComparisonVertexMask
Displays differences between two geometries as a vertex mask for easy visualization
- VertexMaskToImage
Creates an image from a vertex mask to use as a texture or import into e.g. Autodesk Maya™ or ZBrush™
- ImageGrid
Composes a parametrized layout of images with labels for organized previews
- CorrectBrightness
Adjusts brightness, gamma, contrast, saturation, and other image properties
- DistortImage
Simulates lens distortion to match renders with raw camera photos
- SavePolygons
Automatically saves a sequence of polygon selections
- SmoothGeom
Smooths high-frequency artifacts on geometry surface
Major Features
- Graph & Editor Features:
Group Nodes: Divide and simplify node pipelines with groups. Use CTRL + SHIFT + G to group selected nodes.
Node Search: Navigate large projects faster with the find menu, activated by CTRL + F.
Matching Connections: Create nodes faster by auto-connecting inputs using type matching. Activate by hitting Tab or RMB during a connection.
Disable Nodes: Temporary disable slow or reference nodes to speed up project computations using CTRL + D.
Switch Between Nodes Shortcut: Move between selected node editors without Mouse by hitting PgUp and PgDwn.
- Gallery:
Change Gallery Dir with just one button click.
Add Gallery and Show Containing Folder introduced to simplify navigation and gallery management.
- Brush:
Optimized for Tablet usage.
Added Reference Image Projection for easier geometry editing. Cycle views with SHIFT + Space.
Added new brush types: Move Surface, Relax Surface, Mirror Clone, Clone Project and Erase.
Switch Vertex Masks and Visible Polygons with sliders right inside the node.
- Single Alembic export:
SaveAlembic: Export a geometry sequence in a single file using the new Save as Sequence flag.
- VertexMask:
Optimized for Tablet usage with the new Draw Interval parameter.
Use Draw and Fill modes to define stroke overlap behaviour.
- Cameras:
Export Wrap cameras as FBX with the new SaveCamera node.
Camera and LoadCamera now support rotating created/imported cameras. LoadImage now also supports image rotation and EXIF reading.
Added global transform support and improved error handling during imports.
Added imported camera name collision resolution.
- StickContour:
Added Screen Points inputs alongside with Close By 2D Reference and Stick By 2D Reference modes.
- Load Nodes:
Secured Data Integrity: Geometry files with invalid (
NaN
) values now trigger an error instead of being silently converted to zeros on reading.Improved CLI Handling: When using the Command Line Interface, failed file reads are no longer cached, allowing for replace faulty inputs without restarts.
- Python Project Script:
Added a dry run output window for testing scripts before using them in expressions.
Now recomputes when depending on functions like
frame()
,projectDir()
.
Minor Features
Compute All Nodes: Added Ignore Error to compute the whole range without interruption.
Command Line Interface: Fixed some Command Error Codes.
Node-Graph Editor: Now both Node and Find menus now support text selection, coping, and pasting.
Python Scripting: Added a popup completer for
nodeParamValue
function.Brush and VertexMask: Revisted shortcuts and stroke visuals, enhanced perfomance and caching.
FixIntersections: Introduced Detect Self-Intersections parameter, useful for expressions with tight lips or closed eyes.
LoadCamera: Added Override Resolution param to adjust the view of loaded cameras.
LoadImage: Added support for image rotations, flipping, and HDR format.
LoadTransform and CopyTransform: Added new parameters Apply Translation, Apply Rotation and Apply Scale to apply transforms partially.
PointDetector: Added a Reset Missing button to resolve mistrace cases without recomputation.
ReplaceImageChannels: Now supports non-premultiplied space. Fixed incorrect hue processing in CPU mode.
SelectPoints: Added Symmetry option for selection. Added support for high-DPI monitors.
SelectPointsWithSplines: Added exporting splines as a set of control points to import it with SelectPoints to other geometries and topologies.
SelectPolygons: Added UDIM support for group selection. Introduced a convenient context menu accessible via RMB.
TextImage: Added an Image input, allowing faster image labeling by skipping the MergeImage stage.
Bug Fixes
Compute All Nodes: Removed starting delay when computing ranges over 100K frames.
Gallery: Corrected UV of the
WrapHead2
OBJ geometry.Python Scripting: Fixed code editor freeze on long lines (over 10K symbols).
Undo: Fixed a bug when node removal undo erases node’s param scripts.
FastWrapping: Fixed caching issues where computed results were discarded (e.g., on wireframe changes).
LoadCamera: Fixed bugs related to importing XML camera files from Agisoft™.
LoadGeom: Fixed bug that prevented loading files named with extended Unicode charset.
MergeImage: Fixed a byte offset on merging RGB images.
PointDetector: Fixed crash on computation interrupting or missmatching free polygons.
Render: Fixed an incorrect overlaping of scaled input geometries.
Replace: Fixed mesh movement on Seamless Fitting and a crash on different topology inputs.
SelectPointsWithSplines: Fixed spline snapping on high DPI monitors and rotated inputs.
StickContour: Fixed incorrect contour deformation in both regular Lattice and Geodesic Lattice modes.
Wrapping nodes: Fixed an occasional crash when terminating a computation by pressing ESC.
Wrap 2023.11.4
Released November 2023
New Nodes
- StickContour
adds a sticky-lips effect, closes lips and eyelids and minimizes manual cleanup.
Functionality
In SelectPointsWithSplines node improved drawing splines, added spline continuation on SHIFT + LMB.
In LoadTransform and CopyTransform nodes, added Apply Translation, Apply Rotation and Apply Scale params.
In SelectPolygons node, moved and renamed the Topological Mirror and + Topological Mirror buttons to Mirror and + Mirror.
In ModifyVertexMask node added Normalize mode.
In AlignGeomToCameras added Rotation Center Type parameter.
In Command Line Interface changed default value of
WRAPCMD_NO_OPENGL
to false. Thus OpenGL is enabled by default.Added the following shortcuts in SelectPolygons node: * SHIFT + LMB double-click to add polygroup to selection, * CTRL + LMB double-click to remove polygroup from selection, * ALT + LMB double-click near selected polygons to select a loop.
Bug Fixes
In SelectPointsWithSplines node fixed a bug with incorrect cursor snapping on rotated geometry.
In SelectPointsWithSplines node fixed a bug after starting to draw a spline using the Alt + LMB shortcut.
In SelectPolygons node fixed a crash, when selection was loaded from file and input was disconnected.
In Brush node fixed a title mistake Hidden polygons to Visible polygons.
In VertexMask node fixed a bug, when clicking Inverse button leads to resetting the mask if no geometry was connected.
In Node-Graph Editor fixed a bug, when selecting half of selected nodes didn’t alter a selection.
In the gallery fixed UV of
WrapHead2
OBJ geometry.
Wrap 2023.10.3
Released October 2023
Functionality
In WrapCMD restored running
compute
without args as computing frame 0. Interactive mode is now available with--interactive
flag. Check Command Line Interface for details.Finishing dialog after Compute All Nodes now is showing total computing time.
In MergePoints added a Visual Editor, Geometry input and Show Labels param.
Bug Fixes
In RemoveSpikes node removed geom connectivity requirement.
In PointDetector fixed OpenGL requirement. It’s now unnecessary for providing accepted result, only for computing.
In WrapCMD fixed error printing order.
In Compute All Nodes fixed progress bar freeze.
Fixed a crash when disconnecting multiple ouputs from multiple inputs in a specific order.
In Python code editor fixed highlighting with all unicode characters.
Wrap 2023.10.2
Released October 2023
Functionality
In Node-Graph Editor you now can select multiple nodes and Node Editor, Visual Editor and rest will still be shown for one of them, the active one. You can change the active node by clicking on one of selected ones or throught a list in the top of Node Editor block.
In Viewport2D Color Picker improved. Now shown hex is compatible with other softwares color pickers, such as Photoshop.
In Python code editor improved syntax highlighting.
Bug Fixes
Fixed a crash in WrapCMD when computing LoadVertices node without OpenGL context.
Fixed slowdown in ImageFacialWrapping node computations in batch mode over time on Windows.
In Python parameters expressions converting from color hex now assumes sRGB input format to match other softwares. Also expected colors are now stated as unpremulted.
In Compute All Nodes dialog fixed an error when nodes with errors prevent progressbar from moving.
In VertexMask visual editor fixed a bug when clicking in any place in viewport forces recomputing node’s output.
In LoadVertices fixed error formatting when can’t open file. Filepath isn’t appearing twice now.
In MergeVertexMask and Blendshapes fixed error when adjusting sliders couldn’t be undone with CTRL + Z.
In Blendshapes fixed incorrect normals in Visual Editor.
In Compute All Nodes dialog fixed an error when you could accidentally press ESC and hide a progress dialog forever.
Fixed an error when pressing Ctrl while dragging a dock panel didn’t make panel floating.
Wrap 2023.10.1
Released October 2023
Functionality
In FixSymmetry node added caching for finding symmetry.
In the WrapCMD added an environment variable
WRAPCMD_NO_OPENGL
to ignore OpenGL while computation.
Bug Fixes
In OpticalFlowWrapping fixed a crash when computing with empty point correspondences.
In SelectPointPairs fixed a crash when loading poits from file with missing input geometry.
In Node-Graph Editor fixed an error when releasing MMB or RMB during dragging a connection resulted in connecting to the closest plug.
Wrap 2023.09.5
Released September 2023
New Nodes
- SelectPointsWithSplines
lets you to draw precise splines on a model and sample them to named points
Functionality
Added a SelectPointsWithSplines node and example gallery project.
In Compute All Nodes dialog added settings cache and range progress info, fixed post-compute summary.
In LoadVertexMask improved error handling.
The project is now marked as unsaved when timeline range is changed.
Bug Fixes
In Compute All Nodes fixed an error where selected frame ranges are cleared when focus is removed.
In several nodes fixed Null point correspondences error when missing optional input.
In Node-Graph Editor fixed a crash after multiply clicking on node’s plugs.
Wrap 2023.09.3
Released September 2023
Functionality
Added TexturingXYZ project to the gallery.
Added Python project global script support.
Added expected type hints to Python parameters expressions and improved editor actions.
Added custom ranges support and Step Size param to Compute All Nodes.
Added several new shortcuts for the common menu tools.
In Command Line Interface added new options and mode helps.
In ImageFacialWrapping node added second facial detection support and additional caching, which speeds up computations after the first frame by 33%.
In FastWrapping node added Sampling Type param.
In LoadAlembic node added Frame and Frame Per Second params.
In SelectPolygons and ModifyVertexMask nodes added topological mirror and symmetrize tools.
In Node-Graph Editor added connection transparency and highlighting and removing elements with CTRL + LMB.
In MergeImage changed blend modes to work correctly with semitransparent images.
In MergeVertexMask added new modes and simplified formulas.
Added the ability to work with 32-bit images to node UndistortImage.
In saving nodes File Name defualt value changed to
Frame######.ext
for consistensy.In image and camera nodes added Lock Aspect Ratio check to Resolution param and changed default resolutions to the common ones.
Bug Fixes
Fixed crashes with several cases using
nodeParamValue
.Fixed an error when editing multiple params partially defined by a Python expressions led to a crash.
Fixed errors when adding, removing and copy-pasting nodes with multiple inputs.
Fixed missing and wrong nodes recomputes on changing global values.
Fixed an error when node depending on
$PROJECT_NAME
orprojectName()
, didn’t recompute after saving project with new name.Fixed an error when Path Interpretation worked too greedy and matched
$PROJECT_NAME
in the file names.Fixed Compute All Nodes crash during computation Render node in CPU mode.
Fixed an error when Render node in CPU mode interpolates the texture with half pixel offset.
Fixed an error when Render node’s visual editor backgrounds reset to default on every project saving and preferences editing.
Fixed an error when Blendshapes node’s result had incorrectly directed normals.
Fixed an error when Wrappings computation was available during incorrect Point correspondences input.
Fixed an error when saving project with Python scripts containing brackets inside the quoutes lead to appearance of extra spacebars.
Fixed an error when Viewport2D UV fits to view only first UDIM of multiple UDIMs geometry.
Fixed an error when LoadFrameFromVideo default Frame expression reappears on reloading or copying.
Fixed an error when in param with Python expression of type
list of strings
could read a string as a sequence.
Wrap 2023.06.4
Released June 2023
New Nodes
- UndistortCamera
undistorts a camera
- UndistortImage
adapts an image to the camera’s undistorted view
- KeepDistance
maintains a given distance between two geometries given
- CartoonWrapping
wrap cartoonish characters and creatures easily
- OffsetSurface
moves geometry’s vertices along it’s normals
- StickToSurface
transfers topology between blendshapes sequences
- FixIntersections
resolves geometry’s self-intersections or intersections with a collider
- FillHoles
fills holes in geometry with triangles
- MergeGeom
merges multiple geometries into a signle one
- ProjectTextureThroughCameras
creates a texture, which is a sum of masked projections of several other textures
- AngularImageBlur
blurs an image by rotating around the given origin
- BakeTransform
bakes geom’s transform into vertex positions
- LoadFrameFromVideo
loads a frame from a videofile as an image
- LoadVertices
loads vertices from the PLY format to geometry
- SaveVertices
saves geometry’s vertices to the PLY format
- LoadCamera
loads a camera from variety of formats
- SavePoints
saves named points on triangles to file
- LoadVertexMask
loads a vertex mask from file
- SaveVertexMask
saves a vertex mask to file
Major Features
Autosave has been added. Turn it on in Preferences >> General.
Multiple Node Inputs has been added. In addition, several existing nodes have been updated, such as Render, Blendshapes, MergePoints, etc.
Floating images support has been added to LoadImage, SaveImage, MergeImage, ExtrapolateImage, ReplaceImageChannels, etc. In addition, most of Image nodes and Render can now be computed without OpenGL.
Large size images support has been added, such as 8K, 16K. Currently algorythms are still RAM-greedy. In Viewport2D now a downscaled image preview is shown instead.
In Viewport2D the top toolbar has been added. It supports changing Colorspaces and toggling Channels of image view. A Color Picker tool has been added, as well.
In node Node Editor Panel color choosing dialog has been improved. It supports Colorspaces, Ranges, HSV, and colors history.
Minor Features
Paste with Connections action has been added in Node-Graph Editor.
Path variables $PROJECT_DIR and $PROJECT_NAME have been added to the Path Interpretation. As well, added to Python scripting as projectName() and projectPath().
Save Project dialogs in Wrap now opens in more convinient dirs.
In SaveAlembic, SaveTransform, SelectPointPairs, SelectPolygons a Create Intermediate Directories param has been added.
In Blendshapes added Python parameter expressions support.
In Camera and LoadCamera a Save Camera option in pop-up menu has been added.
Sequence Selection in Load nodes has been improved.
In Node-Graph Editor tab menu new lookup method has been added.
Major Bugfixes
In LoadGeom has been fixed memory leak while loading a Draco.
While Compute Range memory block has been fixed. Previously, memory was freed only once you press OK in a dialog.
In Node-Graph Editor recursive connections crash has been fixed.
In many of Geometry nodes caching has been improved. Previously, changing Visual Param of input geometry such as color or wireframe visibility could break already cached nodes. It affects such node as RemoveSpikes, DeletePolygons, Blendshapes, etc.
In FastWrapping inconsistense Compute and Auto-Compute results has been fixed.
In FastWrapping freeze and crash on selected point on noisy detached geom has been fixed.
In Python parameter expressions several errors have been fixed. Now comments and semicolons can’t break one-liners.
License Activasion crash has been fixed on Linux.
Minor Bugfixes
In LoadGeom specific geom loading crash has been fixed.
In Node-Graph Editor ALT + LMB crash has been fixed. As well, the bug of removing nodes while moving it or it’s connection has been fixed.
In FastWrapping, Wrapping and other nodes with Auto-Compute a problem with no changing flag after closing the node’s editor has been fixed.
More detailed error messages of loading and updating projects have been added.
In Compute Range a proper error message has been added.
In Node-Graph Editor node names generating mistakes has been fixed.
In SelectPoints editor several UI problems have been fixed.
In SelectPointPairs visual editor missing point updates have been fixed.
In SelectPolygons visual editor the problem has been fixed. Display Mode is no more seted to Polygroups when the input geom has no polygroups.
In LoadPoints visual editor missing transform bug has been fixed.
Licenses
You can still use your existing R3DS licenses to activate Wrap. If such Nodelocked or Floating licenses would be found on your computer, they would be silently used to activate latest products, if possible. The more accurate scheme is: - If there is a new Faceform license already in the newest Faceform settings, then nothing will change. - If there is no old licenses on your computer, the License Dialog will work as previously. - If there is an old license on your computer, and there are no new, an old license would be taken and used as a new one. - Anytime, running Wrap, you still can go to License >> Activate License to activate new license instead of the old one.
Wrap 2021.11.3
Released November 2021
Bug Fixes
In Brush node, fixed crash on changing the symmetry mode.
Wrap 2021.11.2
Released November 2021
Functionality
Loading Wrap projects from a command line added.
In search node menu added more prior to first letters and capital letters. For example, searching for “lg” will quickly find LoadGeom node.
Bug Fixes
In Brush node, fixed crash on connecting geometry.
Upcoming Version
New Nodes
- FastWrapping
works up to 20 times faster than a regular Wrapping node. The speed up is especially noticeable on highpoly base meshes
- PointDetector
automatically detects facial markers on FACS scans. Please check this tutorial to see how this node can significantly speed up the point selection process. This video explains how to setup this node to work with your custom topology.
- UnsubdivideGeom
restores previous subdivision levels for meshes produced using Catmull-Clark subdivision
- MatchTopology
matches the vertex order of your model with a given reference
- FindTransform
computes transformation between two models with the same topology
- DeltaMush
moves mesh details from reference geometry to target geometry
- ImageToVertexMask
converts an
Image
into aVertexMask
- LoadPoints
loads named points
- VertexMaskToPolygonSelection
converts a
VertexMask
into aPolygonSelection
Functionality
In SelectPointPairs node: if you select a set of points on one model, clicking Ctrl+F shortcut will fit the camera to the location of the next point on the second model. Please check this tutorial to see how it helps to speed up a point selection process.
Added a tooltip panel at the bottom left corner of the viewport and visual editors. It shows a list of shortcuts supported by the current tool. The tooltips are added to SelectPoints, SelectPolygons, SelectPointPairs, Brush, VertexMask, OpticalFlowWrapping, and PointDetector nodes.
WrapCmd and Node applications no longer require OpenGL. It makes it easier to run them on a farm and machines without graphics cards. The only nodes that require OpenGL 2.1 to compute are the ExtrapolateImage and Render nodes. When running on machines without graphic cards or with no OpenGL 2.1 available, these nodes will return an error.
Viewport3D and VisualEditor now support antialiasing.
In SaveGeom and SaveImage nodes have a new Create Intermediate Directories parameter. If it’s turned on, the node will create all the non-existing folders in the file path.
In SaveFacialDetection node computation can be performed in multiple parallel processes.
Render node has a Show Backfaces option.
DeletePolygons has an option to delete selected or non-selected polygons.
In MixGeom node: the Mask input parameter is now optional.
Added commonDir(), projectDir() and galleryDir() Python functions.
Nodes that have
VertexMask
as output data type has the ability to saveVertexMask
from the context menu in the graph editor.When dragging-and-dropping a file into the graph editor a node will take the name of the source file.
Improved Preferences dialog.
Improved search in node menu.
Bug Fixes
In SelectPoints and SelectPointPairs nodes: fixed selection pixel tolerance for 4K screen.
In SelectPoints and SelectPointPairs nodes: fixed points selection for transformed meshes.
Changing Timeline current frame with Shift now doesn’t force all nodes to recompute.
Fixed a bug with saving node colors.
In MergeImage node: fixed transparent background bug.
In DeletePolygons node: fixed incorrect polygon group mapping.
In Wrap4DCmd fixed error tracing.
In several nodes, fixed $PROJECT_DIR support.
Improved file filters in some nodes that allow to import/export files.
Wrap 2020.12.2
Released December 2020
Functionality
When application crashes, it automatically saves its latest state to a crash dump file. A user can then manually send the file to the developers to help them the diagnose problem. The crush dump files can be located at
$USERPROFILE/AppData/Local/Faceform/Wrap/CrashDumps
for Windows, and at$HOME/.local/share/Faceform/Wrap/CrashDumps
for Linux.
Bug Fixes
Fixed incorrect UV winding order when loading meshes from Alembic files.
Wrap 2020.12.1
Released December 2020
Bug Fixes
In TransferTexture node the value of V parameter is now interpreted as flipped.
Wrap 2020.10.2
Released October 2020
Bug Fixes
In SelectPolygons the File Name parameter dialog was fixed so that one can specify a file name for not yet created file
Wrap 2020.10.1
Released October 2020
Functionality
MixGeom node has a new Blend parameter. It controls the mix amount between the two models.
Camera node can now import a camera from Reality Capture and Metashape. For Reality Capture version 1.0.3.9696 and earlier the import can be done only from an FBX file. Please check the documentation for more details.
Camera node has a new Principal Point parameter that allows changing the center of the optical axis.
Bug Fixes
A memory leak has been fixed in the MixGeom node during loading of files in Draco format. Previously it led to RAM overflow during processing of large sequences in batch mode.
Wrap 2020.08
Released 17 August 2020
New Nodes
- Camera
creates a camera that can be used for rendering, projecting
ScreenPoints
and other purpoces- CreateImage
creates an image filled with a solid color
- LoadAlembic
loads geometry from Alembic format
- LoadTransform
loads a transform from a file in JSON format
- MergeImage
overlays a foreground image over a background image
- MergePoints
merges two sets of points
NamedPointsOnTriangle
- MixGeom
blends vertices of two meshes based on the value of a vertex mask
- PointsToPointPairs
converts two sets of points
NamedPointsOnTriangle
intoPointCorrespondences
- PolygonSelectionToVertexMask
converts a
PolygonSelection
into aVertexMask
- Render
renders an input geometry through a Camera
- ReplaceImageChannels
replaces image channels of a given image. A second image can be used a source of the channels
- SaveAlembic
saves geometry into Alembic file
- SaveTransform
saves transform to a file in JSON format
- SelectPoints
lets you select named points on a model
- TextImage
creates an image with a text on it
- VertexMask
allows painting a vertex mask on a mesh
Functionality
Support of path variables (
$GALLERY_DIR
,$PROJECT_DIR
,$COMMON_DIR
) for all file name parametersSelectPoints node type was renamed to SelectPointPairs
OpticalFlowWrapping node has a Projection Mask option that prevents distortion artifacts on a mesh borders, especially on a neck
OpticalFlowWrapping node has an optional VertexMask input that defines which vertices should not be moved by the optical flow
OpticalFlowWrapping node is up to 2 times faster providing the same results
ProjectGeom node now accepts VertexMask input which allows projecting vertices using soft masks
SelectPointPairs node has different symmetry modes including topological symmetry
SelectPointPairs node highlights points the first point that doesn’t have a pair
Wrapping node has a Terminate button in the wrapping dialog
Wrapping node is up to 2 times faster providing exactly the same results
Dockable panel system for UI customization
Bug Fixes
Fix camera navigation in the Brush node
Wrap 3.4.8
Released 17 June 2019
New Nodes
- BlendWrapping
provides an example-based wrapping method that reuses pre-existing wrapped meshes to improve the wrapping quality for further models. This node reduces the need for cleanup to a minimum
- Brush
provides a variety of brushes for mesh sculpting and cleanup. It is especially handy for fixing mesh artifacts after wrapping
- CopyTransform
copies a transformation from one object to another
Functionality
Copy and paste of nodes
Drag and drop of models and images into the node graph
Compatibility with projects made in all the previous versions of Wrap3
New base meshes in Wrap gallery. Includes female fullbody, skull, and teeth
Improved gallery which includes project samples and can be extended with extra packs downloaded from our website
Support of non-latin characters in file paths
Menu of recently opened projects
Improved node-graph UI
Node alignment in node-graph
Node connection with click-and-drag
Saving a node result from the node context menu
UVs are no longer smoothed by SubdivideGeom node
3D points in world-space coordinates (x,y,z) can now be imported into SelectPointPairs and SelectPoints nodes
Wrap 3.3.17
Released 05 April 2018
Functionality
Floating licenses support
Wrap3 now can be used in floating license mode. Instructions how to set up license server one can find in floating documentation section.
Wrap 3.3.11
Released 24 November 2017
New Nodes
- OpticalFlowWrapping
Uses optical flow to fit a textured basemesh to a textured scan. The node can be used to fit a neutral mesh of an actor’s face to 3D scans of his facial expressions. It renders pairs of images of both models from different angles and finds optical flow between the images. For each image pair it generates a set of decisions on where to more each pixel. All the decisions are then combined into a global solution.
- Blendshapes
Blends input geometry according to blendshape weights. Along with geometric blending the node also provides a real-time preview of texture blending.
- Transform
Adds a new transformation to a current transformation of an input geometry. Supports interactive transformation in the 3D-viewport.
Functionality
Fast Ray-Tracer
Texture projection and geometry projection works much faster even for meshes with big triangles. Point selection works with small-scale models.
35 Facial Blendshapes
Wrap’s gallery now incudes 35 anatomically correct blendshapes. The blendshapes were captured from real person and then transered to a generic face. Thanks to Alexey Bodatirev for careful post-processing of each blendshape.
6 Facial Scans
A set of facial scans have been included into Wrap’s gallery.
Bug Fixes
LoadGeom node crashes when polygon indices refers to non-existing polygons.
Wrapping node crashes when plugging non-geometrical data into the first input.
Ray tracing fails for models in small scale. The problem arose for point and polygon selections, ProjectGeom node and TransferTexture node.
OBJ-files with polygroups exported from Houdini cause crash on loading.
In SelectPolygons node a 100K polygons limit is removed for loop selection. Now loop selection works for any meshes except for ones that contain only triangles.
RepairGeom node crashes when input geometry contains invalid polygons and doesn’t have texture coordinates.
Wrap 3.2.0
Released 5 December 2016
New Nodes
- Replace
Takes two models in the same topology and seamlessly replaces a part of one model with a part of the other.
- Subset
Detaches a selected part of a model to a separate geometry (a subset). The subset can further be modified, saved, loaded, wrapped or transformed. Any changes in vertex positions of the detached geometry can be later brought back to the original model using ApplySubset node.
- ApplySubset
Works in pair with a Subset node. Copies vertex positions of the subset back to original mesh. The topology and the vertex order of the subset geometry should not be modified.
Functionality
Command Line Interface
Wrap can be run through a command line interface. Find more about command line arguments here.
Fullbody Basemesh
The basemesh was designed specifically for wrapping purposes by Alexey Bogatyrev. It can be used for commercial purposes.
MTL Reference Preservation
Wrap preserves reference to .mtl file when loading and saving model to OBJ-file.
Auto-compute is off by Default
Auto-compute option of Wrapping node is off by default.
Bug Fixes
Wrap freezes if the basemesh contains isolated vertices.
Parameters of some node reset to default after removing them and undoing remove operation.
RepairGeom node does not remove isolated vertices if the input geometry is manifold and does not contain invalid polygons.
Wrap 3.1.0
Released 17 October 2016
New Nodes
- FixSymmetry
Converts a non-symmetrical model to a symmetrical one by changing its vertex coordinates. The input mesh is assumed to have a symmetrical topology.
Functionality
Camera to World Axis Alignment
Click
S
key in a 3D-viewport to align camera rotation to the nearest world axes. Lets you quickly align the camera to Front, Left, Right, Top, Bottom and Back views.
Bug Fixes
SelectPointPairs: clicking on a model to set a point sometimes missed the proper polygon and set the point behind it.
Fit to View with LoadGeom node being selected caused to crash if there were no geometry loaded.
SubdivideGeom: the node didn’t preserve materials.
RigidAlignment: the node ignored transformation of the left input.
Clicking
Tab
orDelete
while connecting nodes caused to crash.Wheel zoom was reversed (comparing to Maya) in 3D-viewport.
Wrap 3.0.3
Released 5 September 2016
Functionality
Node-Graph Workflow
Wrap 3 is the first step toward node-graph based scan processing. By creating and connecting nodes it allows you to define a recipe of how a scan should be processed and later apply the recipe to dozens of new scans.
Project saving
Projects can now be saved to .wrap file. Internally the file has JSON text format. The structure of the file is simple enough so that one can easily edit node parameters, create and connect nodes using text editor or Python script. That provides access to basic automation.
Undo/Redo
Undo/redo system allows undoing of most operations using
Ctrl+Z
andCtrl+Y
.Enhanced Wrapping Algorithm
The wrapping algorithm is much faster and much more robust now.
Viewports Synchronization
When using SelectPointPairs node the left and right views can now be synchronized to speed up selection processing.
Enhanced Points Editor
While working with SelectPointPairs node editor one can click and drag a point and adjust its position. Any point can be removed with
Ctrl + LMB
.Enhanced Polygons Editor
When working with SelectPolygons node editor the following new operations are supported:
double click
selects a set of connected polygonsShift + LMB
or lasso selection adds new polygons to selectionCtrl + LMB
or lasso selection removes polygons from selectionShift + double click
near selected polygons will create a loop selection (only for manifold geometry)+Polygroup
/-Polygroup
button adds/removes selection from polygroup+Material
/-Material
button adds/removes selection from material
Node Graph Editor
Click
Tab
to show the list of all the nodes that can be created. To create the node choose one from the list or start typing its name and pressReturn
when the desired node appears in look-up menu.Click on an output then click on an input or vice-versa to connect two nodes.
Left-click
on connection then Disconnect from context menu to disconnect nodes.Hold down
MMB
over a node to see node information and errors.Hold a mouse over a node input to see input name and type.
Batch Processing
At the bottom of Wrap window there is a time line. Every loading node (like LoadGeom or LoadImage) allows to select a sequence of file names. When you switch between the frames of the time line the loading nodes will be recalculated to load new file from the list. Each saving node (like SaveGeom of SaveImage) allows to insert # sign inside an output file name. For example ‘WrappedBasemesh###.obj’. When you click ‘Compute current frame’ Wrap will substitute # signs with the current frame number producing ‘WrappedBasemesh001.obj’ In order to process multiple frames in batch mode create and connect the output of your recipe to saving node then click ‘Compute frame range’ inside the node editor. Each frame is computed in parallel in separate process. If you want to compute multiple saving nodes at a time please use main menu
Nodes > Compute All
.
Known Issues and Workarounds
Texture and Geometry projection
Texture and geometry projection slows down significantly when target geometry contains some huge polygons that overlap big number of small polygons. Such models are often produced by RC. You can remove large polygons beforehand.
Small models
Point selection and some other operations may suffer from loss of precision if a model has very small scale. The default units in Wrap are centimeters. You often face small-scale problem when trying to load scans that were saved in meters. Up-scaling the scan by changing ‘Scale’ parameter of LoadGeom node will take no effect. Up-scale the scan and save it in new units, then load saved file and use it.
Wrapping
There’s no termination button for wrapping process yet.