Skip to main content

Actions v1.0.0

Introduction

Actions present a turn-key way to instantly transform and optimize 3D assets by wrapping more complex RapidPipeline 3D Processor features with simplified controls and optimized defaults.

Import Actions

Import CAD Format

illustration for RapidPipeline action "Import CAD Format"

Imports a CAD model from any supported file format into the application. This includes tessellation into a 3D mesh.

Engine 7.1.0 and higher

OptionDescription
Tessellation ResolutionTessellation resolution for imported CAD surfaces.
Fine: The most detailed and dense tessellation. This is the default.
Medium: A medium-resolution tessellation.
Coarse: A simple more approximated tessellation for preview or proxy purposes.

tesselation-resolution
CAD Sewing ToleranceTolerance for the sewing operation on the boundary representations (b-reps) before tessellation. This helps merge multiple surface parts into coherent patches.
Remove T-JunctionsAttempts to remove T-Junctions after CAD tessellation, where neighboring patches may not be meeting up exactly with one another. This is an experimental feature.
Convert Z- to Y-UpTurns rotation to z-axis pointing upwards on/off. Helpful if origin axis system is Z-Up and target system is Y-Up.

convert-z-up-to-y-up
Fix Winding OrderAutomatically fix the winding order of parts on import.
Remove Occluded PartsRemoves invisible (occluded) parts from the 3D model on import.

remove-occluded-parts
Simplify MeshDecimates the tessellated mesh to a certain amount of faces during import.

Paintable UVs per Material

illustration for RapidPipeline action "Paintable UVs per Material"

Imports a 3D/CAD model and assigns paintable UVs per Material. Materials are kept retaining any Material Colors and Names. UVs are non-overlapping and global.

Engine 7.4.0 and higher

OptionDescription
Convert Z-Up to Y-UpTurns rotation to z-axis pointing upwards on/off. Helpful if origin axis system is Z-Up and target system is Y-Up.
CAD Sewing ToleranceHelps with sewing CAD surface patches before conversion into triangles (tessellation). By default it is set to 0.05 mm, meaning if two surfaces have a gap greater than 0.05mm, they will not be sewed.
Fix Winding OrderAutomatically fix the winding order of parts on import.
Remove Occluded PartsRemoves invisible (occluded) parts from the 3D model on import.
Simplify with UVsSimplify mesh to a certain amount of faces, while preserving UVs.
Merge Meshes per MaterialMerging of mesh nodes. Default is no merging (none) potentially resulting in multi-material assignments - byMaterial will merge meshes per material but will replace original node names if needed.

Paintable Single Atlas

illustration for RapidPipeline action "Paintable Single Atlas"

Imports a 3D/CAD model and assigns a single paintable UV Atlas. Materials are merged. New UVs are non-overlapping and global. UVs are created through segmentation, unwrapping and atlas packing.

Engine 7.4.0 and higher

OptionDescription
Convert Z-Up to Y-UpTurns rotation to z-axis pointing upwards on/off. Helpful if origin axis system is Z-Up and target system is Y-Up.
CAD Sewing ToleranceHelps with sewing CAD surface patches before conversion into triangles (tessellation). By default it is set to 0.05 mm, meaning if two surfaces have a gap greater than 0.05mm, they will not be sewed.
Fix Winding OrderAutomatically fix the winding order of parts on import.
Remove Occluded PartsRemoves invisible (occluded) parts from the 3D model on import.
Simplify with UVsSimplify mesh to a certain amount of faces, while preserving UVs.

Tiling UVs

illustration for RapidPipeline action "Tiling UVs"

Imports a 3D/CAD model and assigns tiling UVs. These UVs are non-paintable, but great for material assignment workflows. UVs are created through triplanar mapping.

Engine 7.4.0 and higher

OptionDescription
Convert Z-Up to Y-UpTurns rotation to z-axis pointing upwards on/off. Helpful if origin axis system is Z-Up and target system is Y-Up.
CAD Sewing ToleranceHelps with sewing CAD surface patches before conversion into triangles (tessellation). By default it is set to 0.05 mm, meaning if two surfaces have a gap greater than 0.05mm, they will not be sewed.
Tiling UV ScaleScale factor for the tiling UVs. By default, the scale is 1.0 meaning the unwrapped tiles correspond to the respective scale of the 3D surfaces in meters.
Fix Winding OrderAutomatically fix the winding order of parts on import.
Remove Occluded PartsRemoves invisible (occluded) parts from the 3D model on import.
Simplify with UVsSimplify mesh to a certain amount of faces, while preserving UVs.

Import 3D Format

illustration for RapidPipeline action "Import 3D Format"

Imports a 3D model from any supported file format into the application.

Engine 7.1.0 and higher

OptionDescription
Convert Z- to Y-UpTurns rotation to z-axis pointing upwards on/off. Helpful if origin axis system is Z-Up and target system is Y-Up.
FBX Normal Map Y FlipFlip normalmaps Y axis on import. Only affects fbx data.
USD ProfileDefines how input USD files are interpreted.
USD PurposeDefines the purpose of rendering a prim, used to control render visibility and classify prims into visibility categories.
USD Convert Display ColorsHow to convert USD display colors. Into material colors or vertex colors.
Discard CamerasIf set, discards any cameras on import.
Discard LightsIf set, discards any lights on import. Currently only glTF point lights are supported.
Discard AnimationsIf set, discards any animations on import.
Discard Morph TargetsIf set, discards any morph targets (blend shapes) on import.
Discard unused UVsIf set, discards any unused UVs on import. Unused UVs are defined as UVs not associated with any texture map.

Processing Actions

Cleanup Mesh

illustration for RapidPipeline action "Cleanup Mesh"

Fix mesh assets by re-calculating surface normals, merging disconnected vertices, and flipping inverted meshes.

Engine 7.4.0 and higher

OptionDescription
Recompute Input NormalsDiscards the original normals and recomputes them. This can help with flipped, broken or flat-shaded input normals.
Normal Hard Angle ThresholdHard threshold (degrees) used for normal generation (0 = everything flat, 180 = everything smooth).
Normal Computation MethodWeighting method for mesh normals. Angle works well for most surfaces, whereas Area (face-weighted normals) especially well when a model has bevels or fillets.
Vertex Merging DistanceDistance between vertices that should be merged, as a percentage of the model bounding box size.
Prevent cross-mesh vertex mergingEnable this to merge vertices only within the same meshes. This avoids merging vertices across neighboring mesh chunks.
Fix Winding OrderAutomatically fixes the winding order of mesh parts on import.
This is helpful when importing CAD assets, if patches are showing up inverted after being imported and tessellated. It will attempt to detect flipped mesh chunks, and flip all the faces of each affected chunk.
To check whether chunks are flipped, it helps to enable backface culling in your application's view settings.

Decimate Mesh

illustration for RapidPipeline action "Decimate Mesh"

Simplifies a mesh by reducing the number of faces while preserving materials, UVs and textures. This is useful for reducing file size, and improving performance by reducing memory usage.
Vertices are collapsed and merged by distance and angle, while attempting to preserve the original volume and curvature. The decimator is capable of reducing mesh complexity while keeping important properties such as original UV coordinates, normals and topology in place.
Mesh Decimation is computed from the original mesh, therefore the quality of the result highly depends on the quality of the input topology.

Engine 7.4.1 and higher

OptionDescription
Face TargetThe target amount of faces (triangles), default is 200,000 triangles. RapidPipeline will attempt to get as close as possible to the chosen value, though sometimes a mesh may require a slightly different final triangle count to preserve surface continuity.
Deviation PercentageTarget percentage of deviation relative to the original mesh. Smaller values tend to cause higher triangle counts.
Works in conjunction with face target as a cap. Depending on the deviation, the final face count can be lower or equal to the face count.
We recommend a percentage of 0.05% or less for complex highly detailed 3D assets, to achieve a reasonably small deviation. For a medium deviation from the input, we recommend a percentage around 0.3%.
Size on Screen TargetCalculates optimal mesh and texture resolution for a given display size on screen in pixel. Default is 0 (=off).
It utilizes mesh deviation and a pixel per unit metric in order to calculate the optimal mesh and texture resolution for a given display size on screen in pixels. The pixel target is limited to one value, which is used for width and height of the given size on screen.
This method is optional and can work standalone or in conjunction with other targets.
Preserve Mesh NormalsPreserves vertex normals during decimation, rather than recalculating normals after merging vertices.
Disabled by default, since this acts as a constraint on the decimation and thus the desired face target might not be reached.
Preserve TopologyPreserves topological features like holes during decimation.
Disabled by default, since this acts as a constraint on the decimation and thus the desired face target might not be reached.
In most cases it is recommended to decimate meshes without attempting to preserve the exact topology constraints from the input shapes. This allows the simplification algorithm to remove small holes or handles, for example, when creating a low-triangle approximation.
However for some applications and input models, it may be desired to better preserve the exact topology of the input shape. Preserve Topology applies limits on decimation that holes should never be closed, handles and different surface parts should never be merged, and geometric details like fine strands should be preserved.

Bake Materials

illustration for RapidPipeline action "Bake Materials"

Bake materials into new PBR textures, using existing tiled texture coordinates, or generating new atlas UVs. This can help improve performance by reducing the number of materials and textures.

Engine 7.1.0 and higher

OptionDescription
Texture Baking ResolutionResolution for the new baked textures. Default is 2048x2048 pixels. It is best to enter a powers-of-two number, for example 256, 512, 1024, etc. Using any non-pow2 value will cause the baker to round up to the next higher pow2 resolution.
Normal Map ModeNormal map baking mode.
- always: Normal maps are baked for every material. The baked maps will include details from both the original normal maps and the input geometry.
- ifInInput: Normal maps are only baked for materials that have normal maps already.
- never: Normal maps are not baked.
. Normal map baking can be either always enforced, only performed if the input material already has normal maps, or not performed at all.
Bake Occlusion MapBakes an ambient occlusion texture.
If 'Preserve Tiling' is enabled, then a 2nd UV is generated using an 'atlas' layout and the occlusion is baked into it.
If 'Preserve Tiling' is disabled, the first UV is re-generated using an 'atlas' layout and the occlusion is baked into it.
Texture Resolution Auto ScalingWhen enabled the value for 'Texture Baking Resolution' is used for the largest atlas in terms of occupied 3D surface. Materials on smaller meshes will use smaller power of 2 resolutions, according to their size in 3D space.
When disabled, all atlases will use the same texture resolution, as set by the 'Texture Baking Resolution' parameter.
Preserve TilingPreserves repeating texture coordinates (UVs) and associated texture maps. UVs are considered tiling if they extend 150% outside the 0-1 UV space.
Atlas ModeHow many materials are created, each with its own UV atlas and set of PBR textures (color, normal, etc.).
- single: Bake a single material for the whole asset.
- separateAlpha: Bake two materials, one for parts using alpha, and the other without alpha. This reduces texture file size because the non-transparent material doesn't need an alpha channel. If no alpha was present in the input, then only one material is baked.
- separateNormals: Bake two materials, one for parts with textures already, and the other for untextured parts. For the untextured parts, this bakes normal maps without having to bake any other PBR textures.
- separateAlphaNormals: This combines the features of both separateAlpha and separateNormals.
- separateMaterials: Bake the same number of materials as the input.
By default atlases are separated by opacity (separateAlpha).
Multiple Atlas FactorIncreases the number of texture sets. Each material atlas is divided by this value, so a value of 2 means each atlas becomes two atlases.
This can help improve texture resolution in the output. This can be paired with a lower value for 'Texture Baking Resolution' as a good alternative to using fewer atlases with a higher texture resolution (e.g. two 2048s vs. one 4096).
Mesh and Material MergingHow meshes are merged together.
- none: Do not merge meshes.
- full: Merge all meshes into a single node using a single material.
- byOpacity: Merge all opaque meshes into a single node using a single material, and keep alpha meshes as they were.
- byMaterial: Merge meshes together by material, so there will be a single combined mesh for each input material.
- auto: Same as 'byOpacity'.
Full merge vs. none (no merge), or byOpacity leaving alpha parts separately, byMaterial will keep parts associated with different materials separate.

Remesh and Bake Atlas

illustration for RapidPipeline action "Remesh and Bake Atlas"

Remeshes to a lower face count, creates a UV atlas and bakes material properties such as color, normals, and occlusion into textures. This improves performance for real-time assets in games or XR.

Engine 7.3.1 and higher

OptionDescription
Texture Baking ResolutionSteers the Resolution of the baked textures, default is 4096x4096 pixels.
Bake Occlusion MapBakes ambient occlusion map for the whole model. If UVs are preserved, the occlusion is baked into the 2nd UV set.
Texture Resolution Auto ScalingIf set, the texture resolution only applies to the largest atlas in terms of occupied 3D surface, smaller atlases will receive a smaller power of 2 resolutions depending on their mesh size in 3D.
Face TargetThe target amount of faces (triangles), default is 50,000 triangles.
Remeshing ResolutionInitial mesh resolution before face target is applied. High resolutions (max 11) capture more surface detail, lower resolutions (e.g. 6) simplify more (including closing of holes in the mesh).
Remeshing ModeDecides if remeshing creates one mesh, separate meshes, or according to a method; byOpacity remeshes alpha parts separately, byMaterial remeshes parts associated with different materials separately.
Atlas ModeMode used to assign atlases. By default atlases are separated by opacity (separateAlpha), separateMaterials creates an atlas per material for all meshes associated with them.
Multiple Atlas FactorDivide each atlas into new atlases. This leads to duplicated atlas count which paired with a low texture resolution (2k) can be a good alternative to fewer atlases with higher texture resolution (4k).

Remesh and Bake Holes

illustration for RapidPipeline action "Remesh and Bake Holes"

Remeshes to a lower face count, creates UVs and bakes surface details such as holes and material properties into (alpha) textures. This improves performance for real-time assets in games or XR.

Engine 7.3.1 and higher

OptionDescription
Texture Baking ResolutionSteers the Resolution of the baked textures, default is 4096x4096 pixels.
Face TargetThe target amount of faces (triangles), default is 50,000 triangles.
Remeshing ResolutionThe initial (re)meshed resolution before any face target is applied. Higher resolutions (max 11), preserve more holes as geometry, lower resolutions (e.g. 6) close more holes in the actual mesh.

Remesh and Bake Decals

illustration for RapidPipeline action "Remesh and Bake Decals"

Remeshes to a lower face count, flattens scene graph and merges materials, creates UVs and bakes decals (garment details, logos) and material properties. Improves performance for real-time, games, XR.

Engine 7.3.1 and higher

OptionDescription
Texture Baking ResolutionSteers the Resolution of the baked textures, default is 4096x4096 pixels.
Face TargetThe target amount of faces (triangles), default is 50,000 triangles.
Remeshing MethodVoxelization creates backsides and mesh smoothing, better for multi-layered geometry (apparel). Shrinkwrap removes backsides and preserves the original shape, better suited for hard-surface models.

Remove Occluded Parts

illustration for RapidPipeline action "Remove Occluded Parts"

Removes occluded parts from the 3D model, for the whole 3D model or individually for each mesh. Per triangle or per part. Option to treat transparent parts as occluders (ignore transparency).

Engine 7.4.0 and higher

OptionDescription
Culling QualitySpecify how thorough triangle visibility should be determined.
Per MeshSwitches visibility computation between per mesh or global for the entire (selected) model.
Ignore TransparencyCulling will not consider geometry as visible anymore, if occluded by geometry associated with transparent materials.
Visibility Per PartIf set, visibility is decided per part (mesh lump), otherwise per triangle.

Remove Small Parts

illustration for RapidPipeline action "Remove Small Parts"

Removes small parts from the 3D model. You can select the size threshold in scene units (usually meters) under which small parts should be removed. The algorithm works on a per part (mesh lump) basis.

Engine 7.1.0 and higher

OptionDescription
Value (scene units)Absolute value (in scene units), defining the largest part's (mesh lump) sidelength considered small.

Decimate and Bake Atlas

illustration for RapidPipeline action "Decimate and Bake Atlas"

Decimates to a lower face count, creates a UV atlas and bakes material properties such as color, normals, and occlusion into textures. This improves performance for real-time assets in games or XR.

Engine 7.4.1 and higher

OptionDescription
Texture Baking ResolutionSteers the Resolution of the baked textures, default is 4096x4096 pixels.
Bake Occlusion MapBakes ambient occlusion map for the whole model. If UVs are preserved, the occlusion is baked into the 2nd UV set.
Texture Resolution Auto ScalingIf set, the texture resolution only applies to the largest atlas in terms of occupied 3D surface, smaller atlases will receive a smaller power of 2 resolutions depending on their mesh size in 3D.
Face TargetThe target amount of faces (triangles), default is 200,000 triangles.
Deviation PercentageTarget percentage of deviation relative to the original mesh. Works in conjunction with face target as a cap, depending on that the final face count can be lower or equal to the face count.
Size on Screen TargetCalculates optimal mesh and texture resolution for a given display size on screen in pixel. This method is optional and can work standalone or in conjunction with other targets. Default is 0 (=off).
Preserve TilingPreserves repeating texture coordinates (UVs) and associated texture maps. UVs are considered tiling if they extend beyond 0-1 UV space.
Atlas ModeMode used to assign atlases. By default atlases are separated by opacity (separateAlpha), separateMaterials creates an atlas per material for all meshes associated with them.
Multiple Atlas FactorDivide each atlas into new atlases. This leads to duplicated atlas count which paired with a low texture resolution (2k) can be a good alternative to fewer atlases with higher texture resolution (4k).
Mesh and Material MergingMerging of nodes before decimation. Full merge vs none (no merge), or byOpacity leaving alpha parts separately, byMaterial will keep parts associated with different materials separate.

Export Actions

Export ctm

Exports a model to the ctm format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.

Export fbx

Exports a model to the fbx (binary) format. Current exported material model is 3ds max physical material.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
FBX Flip Normal MapsFlip FBX normalmaps Y axis on export (DirectX vs OpenGL).
FBX UnitsDesired FBX system unit.
Axis SystemDesired FBX axis system.
Export binary formatExports in binary fbx format (default). Otherwise exports fbx in ascii format.

Export glb

Exports a model to the glb (binary) format.

Engine 7.1.0 and higher

OptionDescription
Geometry CompressionDesired geometry compression method for glTF/glb exports.
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Separate OcclusionExport occlusion as a separate map instead of including it in the ORM map.
Exclude Material ExtensionsIf true, no glTF material PBR extensions are exported. Transmission/Volume will fall back to alpha blend.
Force Double Sided MaterialsExports all materials as double sided.
Force Unlit MaterialsEnables that all materials are specified as unlit, for .gltf/.glb export.
Convert to MetalRoughnessConverts materials from spec/gloss to metal/rough.

Export glTF

Exports a model to the glTF format.

Engine 7.1.0 and higher

OptionDescription
Geometry CompressionDesired geometry compression method for glTF/glb exports.
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Separate OcclusionExport occlusion as a separate map instead of including it in the ORM map.
Exclude Material ExtensionsIf true, no glTF material PBR extensions are exported. Transmission/Volume will fall back to alpha blend.
Force Double Sided MaterialsExports all materials as double sided.
Force Unlit MaterialsEnables that all materials are specified as unlit, for .gltf/.glb export.
Convert to MetalRoughnessConverts materials from spec/gloss to metal/rough.

Export obj

Exports a model to the obj format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Displacement to Normal Map Alpha ChannelBakes displacement values into the normal map's alpha channel.
Preferred UV ChannelIf an export format does not support multiple UV channels, pick the one set here.

Export ply

Exports a model to the ply format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Export binary formatExports in binary format (default). Otherwise exports in ascii format.

Export stl

Exports a model to the stl format.

Engine 7.1.0 and higher

Export usd

Exports a model to the usd (binary) format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Export ProfileDesired USD output usage.
USD UnitsDesired USD system unit. Default is original which adobts the units from the imported or internal file.
Force Double Sided MeshesExport all meshes as double sided.

Export usda

Exports a model to the usda (ascii) format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Export ProfileDesired USD output usage.
USD UnitsDesired USD system unit. Default is original which adobts the units from the imported or internal file.
Force Double Sided MeshesExport all meshes as double sided.

Export usdc

Exports a model to the usdc (binary) format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Export ProfileDesired USD output usage.
USD UnitsDesired USD system unit. Default is original which adobts the units from the imported or internal file.
Force Double Sided MeshesExport all meshes as double sided.

Export usdz

Exports a model to the usdz format.

Engine 7.1.0 and higher

OptionDescription
Texture Map FormatFormat for exported texture maps. Default is auto = jpg + png for alpha textures.
Normal Map FormatFormat for exported normal maps. Default is auto = jpg + png for alpha textures.
Texture ResolutionResolution for exported texture maps. Default is 4096x4096.
Export ProfileDesired USD output usage.
USD UnitsDesired USD system unit. Default is original which adobts the units from the imported or internal file.
Force Double Sided MeshesExport all meshes as double sided.

Further Documentation

For the full Documentation on all available data operations commands and system settings, please refer to the 3D Processor System Schema & Settings.