Select your language

Unity

Table of Contents

  1. History and uses of Unity in industry
  2. Unity's geometric engine and its capabilities
  3. Import and export formats supported by Unity
  4. CAD-Unity interoperability solutions by CAD Interop
  5. Best practices for exchanging models with Unity

CAD data interoperability with Unity represents a major challenge for industrial companies wanting to leverage their 3D models in virtual reality applications, interactive visualization, or training. The transition of complex CAD models to real-time environments like Unity poses numerous technical challenges: format conversion, geometry optimization, preservation of essential information, and performance management.

This guide explores the essential aspects of CAD-Unity interoperability: supported formats, available software solutions, best practices, and tips to optimize your workflows between your CAD systems and Unity.

History and uses of Unity in industry

Unity is software developed by Unity Technologies for the creation and utilization of interactive real-time 3D content (RT3D). Since its creation in 2005, this platform has evolved considerably to become a versatile tool beyond its initial domain of video games.

Although its adoption was initially concentrated in the fields of video games and cinema, Unity quickly found its place in industry and architecture for several professional applications:

  • Interactive technical visualization of complex products
  • Virtual reality-assisted training and maintenance
  • Virtual prototyping and collaborative design reviews
  • 3D product configuration and customization
  • Ergonomic simulations and assembly tests
  • Immersive marketing and client presentations

Unity's constant evolution, with the addition of features like HDRP (High Definition Render Pipeline) and tools optimized for mobile devices and virtual reality, has considerably expanded its field of application in industrial environments.

Unity's geometric engine and its capabilities

Unity uses a geometric engine optimized for real-time rendering rather than for the precision of CAD models. This fundamental difference explains why direct import of CAD data into Unity often presents technical challenges.

Characteristics of Unity's geometric engine:

  • Representation by triangular meshes rather than by B-rep (Boundary Representation)
  • Optimization for fast rendering rather than mathematical precision
  • Limited handling of NURBS and parametric surfaces
  • Native absence of support for geometric tolerances and PMI
  • Limited functionality for repairing defective geometries

Unity imports 3D models through a processing chain based on the FBX format. This means that all other formats are first converted to FBX before being interpreted by the engine. This architecture explains why the FBX format is recommended as best practice for importing models into Unity.

Import and export formats supported by Unity

Unity natively supports several standard and proprietary 3D formats. Here is a detailed table of supported formats:

Standard formats

FormatExtensionImportExportRecommendations
Filmbox .fbx Preferred format, best compatibility
Wavefront .obj Good for simple geometries
COLLADA .dae Support for complex scenes
3D Studio .3ds Limited to simple models
DXF .dxf Limited to simple 2D/3D models

Natively supported proprietary formats

FormatExtensionImportExportNotes
Autodesk Maya .mb, .ma Requires Maya installed on the workstation
Autodesk 3ds Max .max Requires 3ds Max installed on the workstation
Blender .blend Requires Blender installed on the workstation
Modo .lxo Requires Modo installed on the workstation
Cheetah3D .jas Requires Cheetah3D installed on the workstation

CAD formats accessible via plugins

FormatExtensionVia paid pluginsNotes
STEP .stp, .step Industrial standard format
IGES .igs, .iges Old but widespread exchange format
Parasolid .x_t, .x_b Format for volumetric models
CATIA V5 .CATPart, .CATProduct Dassault proprietary formats
CATIA V6 .3dxml Recent Dassault format
SolidWorks .sldprt, .sldasm Dassault proprietary formats
NX .prt Siemens proprietary format
Creo .prt, .asm PTC proprietary format
JT .jt Siemens visualization format
ACIS .sat B-rep modeling format
Rhino .3dm Format for NURBS surfaces

It is important to note that importing native CAD formats into Unity generally requires specialized plugins or dedicated CAD-Unity solutions.

CAD-Unity interoperability solutions by CAD Interop

CAD Interop distributes several solutions to facilitate interoperability between CAD systems and Unity. These tools allow you to prepare, convert, visualize, and efficiently utilize CAD data in the Unity environment.

3DViewStation: visualization and analysis of CAD models

3DViewStation is a powerful and efficient CAD visualization solution that offers advanced features for analysis and interaction with 3D models. Its main features include:

  • Fast and fluid visualization of complex CAD models
  • Support for numerous native and neutral CAD formats
  • Analysis, measurement, and annotation tools
  • Creation of exploded views and sections
  • Generation of technical documentation
  • Possible integration with Unity via optimized exchange formats

This solution allows users to visualize and analyze CAD models before their integration into Unity, thus ensuring optimal data preparation for virtual reality applications.

SimLab: creation of immersive experiences

SimLab is a complete solution for preparing virtual or augmented reality sessions from 3D models7. It offers:

  • Direct import of CAD models into Unity
  • Creation of high-quality immersive experiences
  • Multi-platform support (PC, tablet, VR devices)
  • Animation and interaction tools
  • Creation of guided tours and interactive procedures
  • Automatic performance optimization

SimLab greatly facilitates the transition from static CAD models to dynamic interactive experiences in Unity, without requiring in-depth development skills.

CADfix VIZ: repair and simplification of models

CADfix VIZ is a solution specialized in preparing CAD models for virtual reality and integration into Unity. Its key features include:

  • Automatic repair of defective geometries
  • Intelligent simplification of models while preserving essential details
  • Controlled reduction of polygon count
  • Optimization of data structure for Unity
  • Support for a wide range of CAD formats
  • Preservation of assembly structures

CADfix VIZ allows transforming complex CAD models into Unity assets optimized for real-time performance, while maintaining the necessary visual fidelity.

Comparison of model preparation solutions for Unity

When it comes to preparing CAD models for Unity, several solutions are available on the market. Here is an objective comparison between CADfix VIZ and other commercial solutions:

FeatureCADfix VIZOther solutions
Simplification algorithms Advanced algorithms better preserving key characteristics Good standard simplification algorithms
Geometry repair Very advanced healing capabilities Variable repair capabilities
Integration with Unity External interface with import/export Potentially better native integration in Unity
Supported formats Wide range of CAD formats Variable support depending on solutions
Structure preservation Excellent preservation of assembly structures Variable preservation of structures
Performance with very large models Optimized for complex industrial models Variable performance depending on solutions
Batch processing Advanced Variable depending on solutions

CADfix VIZ particularly excels in the quality of simplification and geometric repair algorithms, which is crucial for maintaining the integrity of complex models while making them usable in Unity. However, some competing solutions may offer better direct integration into Unity, creating a more fluid workflow for regular users.

The choice between these solutions will mainly depend on your priorities: maximum geometric quality or fluid integration into the development environment.

Best practices for exchanging models with Unity

To ensure optimal interoperability between your CAD systems and Unity, here are some essential best practices:

Upstream preparation of CAD models

  • Simplify your models before export (removal of small non-visible details)
  • Check and repair geometric problems (missing faces, intersections)
  • Organize your assembly hierarchy logically
  • Clearly name components to facilitate their identification in Unity

Choice of exchange format

  • Prefer the FBX format as a standard exchange format
  • Use intermediate formats like STEP or JT for complex conversions
  • Avoid directly using proprietary formats in production

Optimization for real-time performance

  • Reduce the number of polygons according to the target platform
  • Optimize textures and materials for real-time rendering
  • Segment large assemblies into manageable components
  • Use levels of detail (LOD) for complex objects

Testing and validation

  • Systematically check imported models in Unity
  • Visually compare with the original CAD model
  • Test performance on target devices
  • Validate user experience with imported models

Interoperability tips from the community

Here are some practical tips gathered from forums and the Unity community to improve CAD-Unity interoperability:

  • Data persistence: For data that must persist between scenes, use the DontDestroyOnLoad function rather than global variables.
  • Components vs Tags: Prefer using components rather than tags to identify CAD objects, this makes the code more robust.
  • µ [myu] interoperability toolkit: For specific needs, explore solutions like the µ [myu] toolkit which allows bidirectional communication between Unity and other environments.
  • Batch optimization: Prepare your batch conversion processes to efficiently handle large quantities of CAD data.
  • Materials management: Create a Unity materials library corresponding to your CAD materials to maintain a consistent appearance.
  • Normals verification: After import, always check the orientation of normals which can affect the appearance of models in Unity.
  • Modular design: Organize your CAD assemblies in a modular way to facilitate their management in Unity.

Interoperability between CAD systems and Unity represents a major technical challenge but opens up considerable possibilities for interactive visualization, virtual reality training, and virtual prototyping. The solutions distributed by CAD Interop such as 3DViewStation, SimLab, and CADfix VIZ offer complementary approaches to address these challenges.

The combination of appropriate tools, optimized exchange formats, and good model preparation practices allows establishing a smooth workflow between your CAD systems and the Unity environment. This efficient integration is essential to fully exploit the potential of virtual and augmented reality technologies in an industrial context.

CADfix

SimLab