Release Notes for Modo 10.1v1
Release Date
15 June 2016
System Requirements
Officially Supported Operating Systems
• Mac OS X 10.9.x, 10.10.x, and 10.11.x
• Windows 7, Windows 8, and Windows 10 (64-bit only)
• Linux 64-bit operating system (RHEL 5.4+)
Minimum Hardware Requirements
• Intel processor(s), Core i3 or higher
• 10 GB disk space available for full content installation
• At least 4 GB RAM
• Display with 1280 x 800 pixel resolution
• Internet connection for product activation and online videos access
• The Advanced viewport mode requires an NVIDIA or AMD graphics card with at least 512 MB of graphics memory and drivers that support OpenGL 3.2 or higher
Recommended System Requirements
Note: This information is our best recommendation for the average user. Requirements vary by usage, and individual users may have different requirements from those listed here.
• 2.5+ Ghz quad-core processor
• 250+ GB disk space available for caching and temporary files, SSD is preferable
• 16 GB RAM with additional virtual memory*
• Display with 1920 x 1080 pixel resolution
• An NVIDIA or AMD graphics card with the latest drivers
• 2+ GB of graphics memory
• OpenGL 4.4 or higher support
*The use of virtual memory improves stability and helps prevent data loss on large projects.
Tested Workstation Hardware
The configurations listed below are those that The Foundry have tested with Modo 17.1v1. Due to the constantly changing nature and wide variety of computer hardware available in the market, The Foundry is unable to officially certify hardware. The list below can be used as a recommendation and does not guarantee that it meets your particular needs.
Please download and install the latest graphics driver from the NVIDIA or AMD websites. Make sure that you are using 8.982.8.1 drivers or higher for AMD cards.
If you encounter any issues, please contact support@thefoundry.co.uk.
Tested Workstation Hardware |
|
---|---|
Apple |
• MacPro4, 1 • MacPro5, 1 • iMac13, 2 • MacBookPro10, 1 |
Dell |
• Dell T1700 • Dell T3610 • Dell T3620 • Dell T5810 • Dell T7610 • Dell T7910 • Dell Precision Rack 7910 • Dell Precision 5510 • Dell Precision 7710 • Dell M2800 • Dell M6800 |
HP |
• HP Z440 • HP Z600 |
Tested GPU Hardware |
|
---|---|
AMD Prosumer Graphics Cards |
• Radeon™ HD 1900 XT • Radeon™ HD 2400 XT • Radeon™ HD 2600 Pro • Radeon™ HD 3870 |
AMD Enterprise Graphics Cards |
• FirePro™ W4170 • FirePro™ W5000 • FirePro™ W8000 • FirePro™ W2100 • FirePro™ W5100 • FirePro™ W4100 • FirePro™ W7100 • FirePro™ W8100 • FirePro™ W9100
|
NVIDIA Prosumer Graphics Cards |
• Geforce GTX 680 • Geforce GTX Titan • Geforce GT 650M |
NVIDIA Enterprise Graphics Cards |
• Quadro® K6000 • Quadro® K5000 • Quadro® K4000 • Quadro® K2000 • Quadro® K600 • Quadro® K5200 • Quadro® K4200 • Quadro® K2200 • Quadro® K1200 • Quadro® K620 • Quadro® M5000 • Quadro® M4000 |
New Features
Modo 10.1 introduces a powerful, flexible, and robust new procedural modeling system that works side-by-side with Modo's best-in-class direct modeling toolset. With Modo 10.1, artists can iterate more freely with the ability to manipulate modeling operations at any time in a flexible layer stack. Create infinite variations using procedural operations that can be driven by textures, falloffs, or dynamically changing inputs; and easily accommodate change requirements with the ability to edit selections and swap out input meshes after the fact. New curve tools, constraints, deformers, and enhancements to the MeshFusion toolset complete the Modo 10.1 modeling updates.
Mesh Operations
At the heart of the procedural toolset are mesh operations. These are single layers within the procedural stack that are evaluated to modify the input mesh in some way. The operation can be simple, such as setting a material tag, or can be complex, such as filling a closed curve with polygons. The mesh operations are layered on top of each other in the procedural stack, and the stack is evaluated from the bottom up, passing the modified mesh from one operation to the next.
In addition to the new mesh operations, a subset of existing tools also have procedural equivalents.
Assign Selection Set
The procedural Assign Selection Set mesh operation stores a collection of mesh elements - vertices, edges, and polygons - in a selection set, so they can be re-used at a later stage in the procedural evaluation. This can be useful for operating on the same set of mesh elements across a series of operations, or to store a selection for later use.
Curve Fill
The procedural Curve Fill mesh operation fills closed curves with quads. External curves are filled, and internal curves can be used to cut holes in the closed shape. The operation provides two filling methods: grid and paving. The grid method creates quads aligned to a world axis, whereas the paving method fills a closed curve from the outside in, attempting to maintain a nice border around the edge of the filled shape. Settings are provided, allowing control over the fill density, polygon type, and UVs.
Curve Rebuild
This mesh operation rebuilds an existing curve, placing new vertices at fixed spacing along the curve. The vertex spacing can either be controlled using a fixed point count, or a spacing distance along the curve.
Material Tag
This mesh operation sets the material tag on all marked polygons on a procedural mesh. These tagged polygons can then be used in the Shader Tree to mask textures and shaders.
Merge Meshes
This operation merges multiple mesh items into a single procedural layer. An option to maintain the world transform, it transforms the merged mesh by its world transform.
Transform UV Map
This operation transforms a specified UV map on a procedural mesh item. You can manipulate the tiling, position, and rotation of the UV map.
Freeze
This mesh operation rasterizes non-face type polygons into face polygons. This is useful for converting text polygons into regular polygons, which can then be used with other procedural tools.
Edges to Curves
The Edges to Curves operation converts edges into a series of curves of various types. The operation can either create multiple disconnected curves for each edge, or it can create one continuous curve from a series of connected edges. When combined with the Select by Border selection operation, the Edges to Curves operation can be used to easily convert a polygon island into a curve outline to be used with the Curve Fill mesh operation.
Lace Geometry
This operation extrudes a profile shape along a guide curve. The profile shape can either be provided by a custom mesh, a content preset, or a pre-defined shape, such as a circle, square, or rectangle. As the name suggests, this operation is useful for creating geometry, such as laces on a shoe.
Spline Primitives
The Spline Primitive tools allow simple spline shapes to be created, both procedurally and non-procedurally. You can create a series of shapes, such as Circles, Stars, Squares, Rectangles, and so on.
Sub-tools
Content Preset
The Content Preset sub-tool allows procedural tools to utilize content preset files to modulate the shape that they create.
Path Generator
The Path Generator sub-tool provides a curve path for other tools, such as the Sweep Effector, to sweep along.
Path Segment Generator
The Path Segment Generator generates particles along a curve from the Path Generator. This feeds into a Sweep Effector to perform operations, such as a Curve Extrude.
Pen Generator
The Pen Generator provides a polyline to tools, such as the Sweep Effector tool, allowing a linear sweep from point to point with sharp, well-defined angles at corners.
Selection Operations
Selection Operations exist within the procedural stack and are special items, which can be associated with a mesh operation in the selection graph. They are evaluated per element to determine if a specific element should be modified by a procedural operation.
The following selection operations are available:
• Select by Border - This selection operation selects all mesh elements of the specified type, around the border of a polygon island.
• Select by Falloff - This selection operation selects all mesh elements of the specified type, based on the weight of a falloff item. A threshold channel is provided, allowing you to specify the minimum weight that is required for the element to be selected. The associated falloff can be any of the standard falloff item types, and can also be textured for further control of the effect.
• Select by Index - This selection operation allows element selection to be specified by element index. The selection can be defined either by a list of indices separated by commas, a range of numbers separated by a hyphen, or a combination of the two. When creating a procedural operation, if you have an element selection using the traditional Modo selection tools, a Select By Index item is automatically created and populated with the indices of the selected elements. Commands are also provided to allow elements to be added and removed from the procedural selection, using the traditional Modo selection tools.
• Select by Range - This operation selects all elements within a particular range. You can define a start index, an end index, and a step amount. If the index of an element is within the specified range, then it is selected. The step control allows you to skip certain elements in the range. For example, if the step value is 2, every other element index within the range is selected. If the step value is 3, every third element within the range is selected.
• Select by Selection Set - This operation allows an existing selection set to be used to define a procedural selection. This selection set can either be defined procedurally using the Assign Selection Set mesh operation, or it can be defined on the base mesh, using the traditional selection set commands.
• Selection Operators - These are a special class of selection operations that allow more technically-minded users to build complex selection rules using the Modo rigging toolset. On each selection operator, the information about the element is provided as an output channel, for example on the Polygon Selection Operator, information such as the position, normal, area, and index is provided as a channel, and a single input channel called Select allows the selection state to be driven by a rig. When the selection is evaluated, the rig is evaluated per element and is provided with the properties of that element. You can set up complex rigs using channel modifiers to determine the selection state, using the element properties we provide, to create unique and interesting selection rules that can be shared with other users.
Workflow
Preset Browser
The Add Item button of the Procedural panel allows you to add items to your scene through the Preset Browser, instead of a dropdown menu. The Preset Browser also gives you searching capability, and different viewing options for the familiar item types.
Curve Particle Generator
The Curve Particle Generator allows you to generate particles along a curve. Additional controls allow you to control which way the particles are pointing, how many particles to generate, the particle size parameter, and to slide the particles along the curve.
Freeze Mesh Operations
Modo provides an option to freeze the stack up until a certain point. Everything above the selected mesh operation is maintained, but the selection operation and all items below it are baked into the mesh, becoming uneditable. A second option provides a Duplicate and Freeze method, which duplicates the stack and freezes the mesh up to a particular layer. This is useful if you want to freeze the stack, but maintain a copy as a backup.
Particle Modifier Enhancements
The Particle Generator has a new option to have the particles it creates center around its location, rather than having particles start at its location and expand only in the positive axis direction. The Particle Look At Modifier has also been given a new additional option, which allows you to specify an explicit X,Y,Z direction for the particles to point towards.
UV Constraint
The UV Constraint modifier allows item position and rotation to be constrained to a position on the surface of a mesh, defined by its UV coordinate. You can specify a position on a target UV map, as well as an optional UDIM, and the modifier outputs a position matrix and a rotation matrix for a corresponding surface position in world space.
Push Influence
The new Push Influence deformer pushes geometry along its surface normal, providing the effect of inflating the mesh. The push amount can be modulated by distance, as well as using a falloff to modulate the push amount per vertex.
Texture Falloff
A Texture Falloff allows you to use a texture to attenuate the effect of a tool, for example, a bevel.
Texturable Falloffs
Falloff items now expose a texture input in the Schematic viewport and Mesh Operations stack, allowing textures to be connected directly to the falloff, rather than requiring you to use the complex FX tree section of the Shader Tree.
B-Spline Curves
A new B-Spline polygon type has been introduced that provides a much nicer interpolation between points, and is simpler to manipulate than Bezier curves. A weight option is provided on each point to control the weighting of the B-Spline knot.
MeshFusion
Strips
Improvements have been made to the systems that create Strips, the geometry that connects the surfaces of a Fusion Model.
Strip Density
Along with the new density properties, the UI has been enhanced to improve how all strip properties are edited. This includes improved stepper controls (offering easier control with complex models that respond slowly to edits). Variable density along the strip has been enhanced to automatically adapt to curvature and corner requirements.
Strip Corners
New Strip Corner properties have been added to strip items, individually controlling rounding and densities. Internal systems have been created to smoothly reconcile disparate strip densities meeting at any given corner. A new UI has also been added to set these properties, including conveniences for propagating settings and compensating for density changes to maintain rounding.
MeshFusion Schematic
Schematic Editing
Inactive input channels have been added to Fusion operation nodes, matching each node's normal input channels. Right-click context menus for links and the operation nodes have been added to support activating/deactivating links (including conveniences like toggling, activating/deactivating all, deactivating all except the clicked link).
Schematic Drag&Drop
Scripted methods have been added supporting 3D viewport drag and drop Schematic Fusion editing.
Feature Enhancements
• The Qbic Browser has been enhanced to better support its use with Schematic Fusion models, and offers broader, better-organized placement options.
• Mesh Preset placement has been improved and expanded, including options to add multiple copies of the preset mesh as either individual meshes or combined into a single mesh (each method has advantages for subsequent Fusion modeling/editing goals). More thorough support has been added for placement based on selected target mesh elements (vertices, edges, and polygons). Schematic fusing support has also been added.
Main Bug Fixes
This is a list of the most important bug fixes. For a full list, see The Foundry Community site.
• Bezier tool: Changes behavior to create straight segments with clicks.
• The default turn speed of the Game Input Mode was 2.0 instead of 1.0.
• The absolute input mode was enabled when using the Game Input Mode, which caused issues on systems set up to use tablet input.
• The Generator Particle Modifier had no Center option.
• The up vector was incorrect when the Look At Particle Modifier was set to Planar. The Target channel had no Direction option, so there was no way to set an explicit vector to define the direction.
• Unreal and IBL Roughness did not work correctly. No reflection type was initialized for Unreal and Unity materials.
• Double-clicking an Assembly preset didn't add it to the current group in the Schematic.
• Unity and Unreal materials generated incorrect Image Based Lighting (IBL) textures due to the diffuse roughness not being 0.0.
• Unreal Material: There was no GLSL clearcoat shader. Clearcoat caused black edges. The shading model didn't have an option to switch between standard shading and clearcoat shading for the Advanced viewport. Clearcoat was applied twice for Unreal material, which caused energy issues.
• Improvements have been made to Unreal Screen-Space Reflections.
• ID 14371 - Render outputs were not working correctly with Item masks and Instances.
• ID 36261 - Foreground and background alphas were not working properly with Parametric Ink.
• ID 36430 - Color Picker: HSV numeric values greater than 360 became 300 instead of 359.999.
• ID 37130 - Shader Tree: Layer and Group masks could cause halos and fringing around them.
• ID 37272 - Some materials were not evaluated in fur layers when using multiple fur layers.
• ID 37643 - Vertex Illumination Baking didn't work with offset geometry.
• ID 38235 - Items imported through FBX didn't respect the viewport visibility settings.
• ID 38624 - Brush Blending Mode didn't function correctly with RGBA images.
• ID 41160 - Preview: there was no option to save to layered images when rendering an animation.
• ID 41732 - Changing fur spacing caused the fur width to change.
• ID 41913 - Fur rendered differently than it displayed in GL.
• ID 42480 - The gamma applied to images using image ink changed after saving and reloading the scene.
• ID 43236 - Windows only: Modo didn't have support for multiple processor groups, so it couldn't fully utilize systems with more than 64 processors.
• ID 43399 - Fur was tapering to absolute length, not parametric length.
• ID 44062 - When painting, the first click when painting on an image map was delayed.
• ID 44077 - In Full Resolution mode, clicking in Preview did not select materials in the Shader Tree.
• ID 46509 - Image maps created at the root level could not be duplicated.
• ID 46707 - Implicit UV textures on area lights were not supported.
• ID 47572 - Bezier Deformer: deformation popping occurred on animated meshes.
• ID 47829 - Topology layout: Active mesh has been set to Shaded mode to improve the visibility with color correction and transparency. The default rig lights have been made brighter to match the original Topology layout (MODO 601).
• ID 47857 - Preview: Layered EXR could be saved with incorrect channel names.
• ID 48117 - Use Clip UDIM was not working for UDIM 1001.
• ID 48448 - Item List: Layer visibility icons didn't update if a layer's parent group was made invisible.
• ID 48639 - Rendering animations to some formats didn't save the alpha channel.
• ID 48734 - Fur: Vector maps and Weight maps couldn't be used together.
• ID 48765 - Preview: Right-clicking did not show the light contributions.
• ID 48979 - RayGL synchronous update mode was grainy.
• ID 49038 - Area lights blocked indirect environment light with Environment Important Sampling (EIS) enabled, and Preview and Final render did not match.
• ID 49435 - Renders using EIS sometimes produced NaNs.
• ID 49594 - Images saved from Preview did not have an alpha channel if Render All Outputs was disabled.
• ID 49603 - The Spline Effector's visibility state didn't work.
• ID 49673 - Deferred Meshes: Items that support instancable interfaces now include automatic instancing. Render memory use was high when using instances of deferred meshes.
• ID 49897 - Double-sided meshes were not displaying correctly in the Default viewport.
• ID 49916 - Auto-added Alpha render outputs (used for border expansion) were saved when baking render outputs using bake items.
• ID 49960 - Camera Matcher: The origin position derived from the line length control landed off camera.
• ID 50376 - OBJ I/O: The Importer failed to load files that other applications could load, due to it containing non-standard OBJ elements.
• ID 50395 - Bake Wizard: Bake items couldn't save each UDIM clip after baking, only all at the end.
• ID 50509 - Game Export: The texture sub-path wasn't changing in the FBX Export > PBR XML preset settings.
• ID 50608 - Particle Modifiers: Tries to maintain particle IDs from source items when multiple sources are connected.
• ID 50620 - Volumes driven by OpenVDB could not be scaled.
• ID 50634 - Editing the material of an invisible item made it show in Preview.
• ID 50696 - De-selecting certain image map layers in the Shader Tree wasn't updating in GL.
• ID 50786 - Mac OS X only: The Render window remained in focus and on top of other windows even when switching to another application.
• ID 50958 - Vertex Maps: Subdivision Weight Map values could not be cleared from vertices in Catmull-Clark polygons.
• ID 50972 - Game Export: Relative paths were being used when disabled.
• ID 50991 - Bump and Displacement were not affected by nodal shading.
• ID 50995 - FBX I/O: The UV Distortion map was exported.
• ID 51001 - Vertex Illumination Baking ignored GI and gave incorrect values.
• ID 51022 - Edge Slice: the multi-slice option was creating holes in the mesh in some circumstances.
• ID 51070 - The Bake Wizard did not have a viewport group, and couldn't be added to layouts.
• ID 51205 - Motion Vector didn't support cylindrical and spherical cameras.
• ID 51207 - Baking to Render Outputs with an animated environment was not updating after frame 1.
• ID 51325 - Game Export: the script ignored the Export PBR setting if there was an Unreal or Unity Material in a group.
• ID 51344 - A memory leak occurred when assigning image clips to shaders.
• ID 51389 - Vertex Illumination Baking: baking errors occurred on rigged/skinned meshes.
• ID 51426 - Reflections did not work in orthographic views.
• ID 51485 - Bake Wizard: The cage value was not set on the bake item.
• ID 51502 - Unreal Material: The default specular has been changed from 100% to 50%.
• ID 51524 - Windows only: In Preview, not all processors were used if there were more than 64.
• ID 51543 - The Advanced viewport often displayed environment reflections and lighting incorrectly.
• ID 51549 - In the Occlusion Processing Texture, convexity and concavity could not be represented differently, due to the lack of a Curvature option.
• ID 51557 - Unreal Material: Roughness was incorrect in the Advanced viewport compared to Unreal Engine and Preview.
• ID 51558 - The Screen-Space Reflections in the Advanced viewport did not default to off.
• ID 51598 - Replica Mirror: The BG meshes Effector option was not working.
• ID 51649 - Render Pass groups were disabled when first loading a scene.
• ID 51676 - Subdividing certain shapes created polygons with flipped normals.
• ID 51679 - MeshFusion: Fusions caused jagged meshes when strip widths were reduced.
• ID 51843 - The Apply to Item instances channel has been added to the shader group to control the behavior with instances, which is necessary, because without it the behavior is ambiguous. The new channel defaults to enabled.
• ID 51901 - Mesh Paint: Normals were flipped in some cases, when painting geometry in Item mode.
• ID 52092 - Linear Falloff: Several fields were missing from the Properties panel.
• ID 56826 - The default value of the Texture Offset Amplitude was 1 instead of 0.
• ID 57134 - Network Rendering: The Render window didn't show the last frame rendered, if rendered on a worker.
Developer Notes
Here are the changes relevant to developers.
Bug Fixes and Enhancements
• Cache System/SDK: A generalized COM-based caching system has been implemented, accessible from the SDK.
• Scripting: !app.quit used to save changed scenes.
• SDK: CLxQuaternion class has been added. ClxVector, ClxMatrix classes, and CLxBoundingBox have been updated. linear.cpp and orbitem to use updated CLx classes.
• SDK: There were no comments for the SDK for the IsProcedural method on the LayerService.
• SDK: MeshPolygons.new() didn't return a MeshPolygon object.
• SDK: The CLxMatrix class has been updated. CLxMatrix4 constructor has been added to take three vectors. CLxMatrix construct from vectors and Euler rotations now sets to identity matrix first. A determinant has been added to CLxMatrix().
• ID 28300 - SDK: The Xcode project was missing newer SDK example projects.
• ID 31401 - SDK: lxvertex.h, lx_vertex.hpp, and lxw_vertex.hpp were not included in the Xcode project.
• ID 49410 - SDK: The ILxPolygon::IntersectRay thread was not safe.
• ID 51546 - SDK: Adds stdio.h to fix compile error on linux.
• ID 51761 - TD SDK: Initializing a Group item modified the scene.
• ID 51790 - TD SDK: The lxu.utils.ThreadBody() thread state class has been added, where the util class makes the usage explicit, preventing a crash calling lx.out from a Python spawned thread.