Design Engine Release Notes
Design Engine is Carbon's premier design software for creating lattices, textures and more.
Education content updates
All embedded education content in Design Engine is now available via a new format that includes search functionality and AI-driven guidance.
Change to limitations on Boolean Operations
Boolean operations (Union, Intersection, and Difference) involving more than 1.5 million triangles are no longer directly blocked. Extremely complex Boolean operations involving a large number of overlapping triangles are still disallowed; if you encounter a failure, simplify models or break models into segments.
Union, Intersection, and Difference (Boolean Operations)
Three new operations are now available:
- Union: Merge multiple overlapping models into one
- Intersection: Create a new model based on the overlapping area of two or more models
- Difference: Remove the overlapping area of one or more models from another
Collectively, these operations are referred to as “Boolean Operations,” and the functionality should be familiar to users who work with other CAD programs.
These operations can be accessed from a new “More Booleans” drop-down next to “Combine” in the Operations Menu.
Boolean operations may be computationally complex, especially when lattices are involved. Processing times may run for several minutes or up to one hour. Boolean operations involving more than 1.5 million triangles (which would take more than one hour to process, and are unlikely to succeed) are not allowed; simplify models or break models into segments before retrying.
A note about the Combine operation The Combine operation (available prior to this update, and still available following the introduction of Boolean operations) is similar in function to Union in that it merges multiple models into one. The key difference between Combine and Union is whether or not overlapping geometries are preserved. In a Union, overlaps are subsumed into one geometry; in a Combine, overlapping geometries are preserved.
Combine can be useful for working with very large files, as the operation is computationally less demanding than Union and may run more quickly and succeed in more cases. For parts that will be printed on a Carbon printer, the slicer will treat a Combined or Unioned file the same, so the operations can be used interchangeably in many cases.
However, non-Carbon slicers and 3D printing software may handle Combined files differently; in such cases, a Unioned file may be more appropriate.
Previous access to Boolean operations as “Experimental Operations” Select users previously had access to Union, Intersection, and Difference Boolean Operations as “Experimental Operations.” With this release, the Experimental versions of these operations have been deprecated. Designs that include these older Experimental operations may experience errors when attempting to generate the design. To address any such errors, remove older Union, Intersection, and Difference operations and replace them with new operations.
Education content updates
Select embedded education content in Design Engine is now available via a new format that includes search functionality and AI-driven guidance.
Kelvin unit cell available for use with Hexahedron Meshes
Lattices can now be generated using the Kelvin unit cell within a hexahedron (hex) mesh.
Hex mesh-based lattices are often chosen for aesthetic reasons rather than performance because of their regular surface patterns and relative softness compared to lattices based on tetrahedron (tet) meshes. In the context of other hex lattice types, Kelvin falls in the middle of the pack for both stiffness and volume fraction (the % of the total volume).
To apply this unit cell, find the option for “Kelvin (Hex)” under the “Lattice type” drop-down within the Strut Lattice operation. Note that you must first generate a Hexahedron Mesh and select it as the input for your Strut Lattice in order for the Kelvin (Hex) option to appear.
Lattice Search does not include data for the Kelvin unit cell within a hex mesh at this time. Do not substitute Kelvin data associated with tet meshes, as the two are not equivalent.
In Design Engine, the Kelvin unit cell is not available as an option in the Strut Lattice operation for tet meshes, as this combination typically results in a lattice that is too dense for manufacturing and/or desirable end-part performance. However, performance data for Kelvin unit cells within a tet mesh is searchable via Lattice Search, and you can use the “Apply Unit Cell” command from within Lattice Search to generate a Kelvin unit cell upon a tet mesh if desired.
“Request unit cell performance data” removed from user interface
Because the Lattice Search tool does not contain data for every conceivable combination of unit cells and parameters, Carbon has long provided a “Request unit cell performance data” button to invite users to quickly alert us to combinations that may be helpful. Thanks to users’ input, we now have a solid body of request data to help guide future iterations of the Lattice Search tool, and are removing the button to streamline the user interface.
Users remain welcome to use the “Request Help” button for assistance with Design Engine when needed.
Improved UI performance
Application performance is improved for large models and complex projects, enabling Design Engine to feel more responsive.
The “Meshes” menu on the right-hand panel has been renamed to “Models” to better reflect the variety of formats that may be included in this directory.
- Meshes → Models
- Input Meshes → Input Models
- Generated Meshes → Generated Models
Additionally, scrolling behavior for the “Models” lists (formerly “Meshes”) has been improved to retain the header when scrolling through a long list to enhance usability for complicated projects.
Grouping Operations
Operations can now be grouped, allowing for easier management of large, complex design projects.
To create an Operation Group, select multiple Operations (use CTRL+click [Windows] or CMD+click [Mac] to select individual Operations, or SHIFT+click to select a series of Operations), then right-click and select “Create new group.”
Once an Operation Group is created, you can expand or collapse visibility of the grouped operations, re-order the operations with in the group, re-order the group's position in the operations list, move individual operations into and out of the group, duplicate the group, rename the group, ungroup the operations, and delete the group (including all operations within). Groups nested within groups are not allowed.
To move an operation into or out of a group, either click and drag to the desired location or use the operation menu (right click or (...) icon) and select “Add to Existing Group”/”Remove from group”.
To add/remove multiple Operations to an existing group, select them and use the context menu.
Duplicating a group does not maintain internal dependencies within the group. For example, a duplicated Solidify operation that is grouped with a Strut Lattice operation will reference the original group's Strut Lattice.
Operation groups are automatically applied to the resulting Generated Meshes, using the same schema and group name. These Mesh Groups can be expanded & collapsed independently of the operation group. The child's visibility state can differ from its siblings and the parent's visibility state. Toggling on the parent's visible state will show all children that are also toggled to be visibly on, while toggling off the parent’s visibility state will hide all children regardless of their individual state.
Lattice Search Includes Lattices Built on Hexahedron Meshes
In Design Engine, lattices can be generated on geometric scaffolding that is either a Tetrahedron Mesh (“Tet Mesh”), in which each unit cell is a single tetrahedron composed of polyhedrons with four triangular faces, or a Hexahedron Mesh (“Hex Mesh”), in which each unit cell is a single hexahedron composed of polyhedrons with six faces.
Lattices built on Hex Meshes are now searchable via the Lattice Search tool to more easily consider which lattice types might suit the needs of your project. Use the new “Scaffold Type” selector to indicate whether you want to survey Tet or Hex lattice results. When Hex is selected, you can opt to include/exclude any of Design Engine’s standard Hex Lattice patterns.
Creating a lattice based on a Hex Mesh: To create a lattice using a Hex Mesh, you must generate the Hex Mesh via the “Hexahedron Mesh” operation before you can select and apply unit cell parameters via the Strut Lattice operation (select your Hexahedron Mesh as the input mesh). The cell size of the Hex Mesh will dictate the size of your strut lattice unit cell.
Refining and interpreting Lattice Search performance results for Hex Meshes: When using the Lattice Search tool to consider lattice options based on Hex Meshes, restrict your search to cell sizes similar to the cell size of your existing or planned Hex Mesh to ensure a reasonable point of reference for performance. For performance statistics, Lattice Search assumes a gridded Hex Mesh with equal XYZ hexahedron dimensions. Your actual lattice performance may vary depending on your final design selections.
Applying lattice parameters directly from Lattice Search results: When you enter the Lattice Search tool directly from the Strut Lattice operation (select “Lattice Search” from the Lattice Type drop-down menu) and click “Apply Unit Cell” to adopt the characteristics of a lattice option, note that the cell size will not be applied, as the cell size of your Hex Mesh will be used. Only the lattice type and strut diameter will carry through.
Review Hex Mesh information: Review information about Hex Mesh and how they are represented in Lattice Search.
Improved Layout for the Operations List
The layout of the Operations List has been modified to provide additional space for longer, more complex design programs. No programs have been altered; this change only impacts the way the Operations List is displayed.
In the new layout, renaming an Operation will now display only the custom-edited name. The type of operation is communicated by the Operation Icon, or by clicking to view/edit the Operation.
Collapsible Meshes Lists
Lists of Input and Generated Meshes in the right-hand panel can now be collapsed to provide a better experience for working with complex projects.
Additional Controls when Adding Struts (BETA)
When editing a lattice by adding struts (BETA), the UI will now follow your mouse to snap to endpoints or to the midpoint of the selected strut (rather than just the endpoints). To place a strut end at a different point (neither the end nor the midpoint), hold the Shift key to disable snapping behavior.
Expanded Tile Texture Functionality
Users can now upload an image as a custom texture tile.
In the “Pattern” section of the Texture operation, find the new “Custom Tiles” section and use the provided tools to upload an image.
Best practices for images:
- Only .PNG files are supported
- Small file sizes are best; an image of a few hundred KB (and certainly less than 1MB) will suffice
- The white part of your custom image is the “active” part of the texture for embossing/debossing; specifically, when texture depth is set to a negative number (debossed), the white portion of your image will be debossed, and when texture depth is set to a positive number (embossed), the white portion will be embossed; use “Inverse Image” to swap this behavior
- Black/white or grayscale images are the easiest to work with, but color images are allowed; if a color image is used, it will automatically be converted to greyscale based on an average of the RGB pixel values
- Images do not need to be square; when non-square images are used, the top/bottom edge of the image (at the time of upload, before any rotations are applied) will map to the specified tile size.
Images with crisp black/white divisions may result in textures with jagged, pixelated edges; for best results, use photo-editing software to apply a blur to your image before uploading it as a texture tile
Tiled textures (including custom textures) can now be further adjusted using new “Tile Rotation” and “Tile Translation” tools.
Tile Rotation can be used to straighten or angle the image. Adjustments are measured in degrees.
Tile Translation moves the overall placement of the texture on your model. Adjustments are measured in the same units as your model (mm or inches).
Achieving the desired result may take some trial and error. To more closely track the impact of various rotation and translation changes, it’s recommended to alter one factor at a time and inspect the results before applying other adjustments.
Strut Info Tooltip
Hover over a strut in a lattice to view key information about the strut (diameter, length, and whether it has a special designation such as a boundary strut or a feature edge).
Detailed strut information can be useful when editing struts or reviewing the results of a zonal lattice structure that includes different strut parameters in different parts of the design.
Note that the tooltip is available for strut lattices only and not solidified lattices.
Lattice Search includes Foams in the Meta-Materials Library
Design Engine users can now easily find comparable lattice/material combinations that match or outperform common foams, without needing to cross-reference outside resources.
The following foams are available:
- Foam similar to D30 Aero
- Foam similar to D30 Decell
- EVA
- High Density
- Latex
- Memory
- Neoprene
- Packing
- Foam similar to Poron XRD
- Rebond
- VN1000
- VN600
- VN740
Additional helpful information about working with foam comparisons (such as retailer specs for listed foams and information about converting a shore hardness rating to modulus) is available in Lattice Search documentation.
Data is based on simulations for lattices and physical testing performed by Carbon for foams. Final part performance may vary. A blog post providing detailed information on Carbon’s performance testing will be published in the coming weeks.
Outdated lattice performance data deprecated
The “View Cell Analysis” button (sometimes shown in the Strut Lattice operation depending on selected input parameters) is no longer available. This tool referenced an older dataset that has since been superseded by the Lattice Search tool.
Rely on Lattice Search to understand performance characteristics of various lattice/material combinations.
Click “Request performance data” for any combinations you encounter that are not readily available.
Tiled Textures
In addition to random “noise” textures (released in Design Engine in 2023), users can now add decorative tiled textures to meshes. Tiled options appear as new entries in the “Pattern” drop-down menu within the existing Texture operation:
- Cube
- Diamond
- Dot
- Grid
- Hex
- Pyramid
Embedded controls allow users to control the tile size (the size of each individual texture feature) and depth (embossed or debossed) of the pattern. The selected texture can also be inverted to create a negative version of the pattern.
Note that patches must be contiguous for a successful texture application; process unconnected patches as separate Texture operations.
For users familiar with accessing tiled textures via the Print Preparation interface, applying textures via Design Engine should be faster and more robust. Additionally, editing a texture once applied (e.g. changing the pattern, tile size, depth, or boundary decay settings) will return a fast revision result for easy design iterations.
Remesh
Remesh creates a new triangle mesh representation of your geometry with more regular triangles. Remeshing may be useful if a poor-quality mesh is limiting the outcomes of surface operations (eg, texturing).
Remeshing typically creates more triangles to better-represent the desired geometry and therefore increases file size.
Replace Mesh
Any Input Mesh can now be replaced with an alternate mesh via the “Replace Mesh” feature. “Replace Mesh” will swap out the mesh in all operations in which that mesh is selected. This can be useful if you need to swap in an updated version of a file without re-doing Operations work, or if you wish to duplicate a previous project to reuse a list of Operations on a different model file.
Note that any patches present on the original mesh will need to be re-selected after replacing a mesh.
Replace Mesh is accessed from the menu options available for each Input Mesh.
Additional Part Info
Additional part information is now available for input meshes, including volume, units, and triangle & vertices counts. Click “View Info” from the meshes menu to access information. Note that some fields may be unavailable for some meshes and/or for some users.
Export a mesh from Design Engine directly to Cloud Prepare
Carbon users can now export a mesh from Design Engine directly to Cloud Prepare (Cloud Compass), without needing to download and then re-upload a file.
To access this functionality, right-click on a desired mesh or click on the menu options from the mesh menu, then select “Open in Compass.” A dialog will guide you though directly creating a Cloud Compass project using this mesh.
This functionality is only available for mesh types that are printable (Surface Meshes and Part Instructions); not every mesh generated by Design Engine is appropriate for this action.
If you use the “Part Instructions” Prism operation, supports and labeling instructions (including text-variable tokens) that were generated in Design Engine can be part of the mesh transfer. Note that in this case, supports will be transferred as additional separate meshes (not interactive Compass supports); click “keep original part positions” to preserve relative position of parts and supports.
Decimate
Large, complex meshes (typically >50MB and/or >1,000,000 triangles) can be challenging to work with due to long processing times. Decimating a mesh reduces the number of vertices and triangles to simplify mesh geometry.
Consider decimating a mesh whenever your file is >50MB, has >1,000,000 triangles, or when you know that your model contains more triangles than is necessary to accurately represent the desired geometry. Experiencing lagginess or slow processing may also be an indication that decimation could be helpful.
Decimate is a new option in the top menu, near “Upload” and “Add Shape.”
Decimate is intended for input meshes only; Carbon does not recommend decimating generated meshes.
Note that decimation can cause your model to lose detail as triangles are removed/combined. This impact will vary based on geometry; there is no single “right” level of decimation or target number of triangles for all geometries. Decimation is reversible and alterable; consider trying different decimation percentages to get the desired outcome.
Below is an example of how decimation can impact model geometry. The optimal level of decimation for a model will depend on your use case.
Decimate is released as Beta functionality at this time; please submit any feedback to [email protected].
“Zoom to fit” navigation control (center on this point)
A new “Zoom to fit” navigation control allows users to quickly center a part in the project area and zoom to the extents of the mesh. To access this command, press the F-key, select “Zoom to Fit” from the top-bar View menu, or select “Zoom” from the Meshes menu for a specific input or generated mesh.
Import STEP Files
STEP files can now be uploaded to Design Projects. The entire assembly will be converted to a single triangle mesh.
Note that meshes cannot be downloaded in STEP format (STL, PLY, and OBJ are the available download format options).
Reordering operations preserves inputs and dependencies
Moving operations within the operations list now retains inputs and other dependencies.
Note that an operation may need to be updated after it or a related operation is moved; watch for a red marking on an operation to indicate that it requires edits before proceeding.
New interface for “Settings” menu
Historically, clicking the Design Project name has revealed a drop-down menu with various options (eg, Duplicate, Rename).
These options have now been moved to a “Settings” control panel. Here, you can Duplicate a design, Lock a design (see below for more information on this new feature), change the project name or material, or Delete a design. Access “Settings” by clicking the Design Project name.
Lock Design
A Design Project can now be locked to protect against unwanted or unintended edits.
Click the design name to launch “Settings,” then click the “Lock” icon. This action can only be performed by the project owner.
A locked Design Project can still be duplicated by any user with access, and a project owner can unlock a project at any time.
Access Lattice Search from Toolbar
Carbon offers a robust Lattice Search tool to help you identify an effective metamaterial (a combination of a material and a lattice design type) for your application based on desired performance and design requirements. Lattice Search can help you get started on a new project by quickly narrowing the vast field of potential lattices to the ones most likely to accomplish your goals.
Lattice Search has long been accessible from within the latticing operation; you can now access Lattice Search directly from the top-bar menu.
Learn more about using the Lattice Search tool, including an example of finding a lattice to substitute for a specific foam material.
Release notes were not published for changes to Design Engine prior to January, 2024.