As a 3D modeler working in an architectural firm, you’re tasked with creating an interactive visualization of a new high-rise development to pitch to your client. As part of the client’s requirements, the visualization is going to include all the metadata from the original Revit file – like parts, supplier, and pricing info. It would be ideal for the client to be able to see real-time information on all the parts and costs. This way, any modifications the client may want to make, like finding a different door model to reduce final costs, are easily transferred back to the Revit design file.

The end goal you’ve envisioned for your project seems perfect, but in an effort to get metadata into a game engine – like Unity or Unreal Engine (UE4) – you realize there are some challenges. Let’s better understand the standard architectural visualization pipeline and why it is difficult to preserve metadata in architectural visualizations.

Architectural visualization workflow with metadata

Here’s a common pipeline that architecture visualization teams work with. Keep in mind that each team or company will have their own approach.

  • 3D modeler receives an architectural file that was created in a design software like Revit.
  • The Revit file is exported into one of three file formats – FBX, DWG polymesh, DWG ACIS solids – to make the file compatible with Maya.
  • Using Maya, textures and  UV maps are added.
  • In the final step, the model is imported into a game engine – like Unity or UE4 – to start developing the interactive visualization.
  • The final visualization project is deployed into an iPad or VR headset.

The problem lies in the Revit to Maya export and conversion step, where the translation of Revit geometry to polygonal mesh is done. This translation is challenging due to incompatibilities between the software – in this example, Revit and Maya – causing loss of metadata. Now, if you import the edited project into a game engine, the metadata is lost, and needs to be added manually. Revit architectural files are too complex for Maya, creating a CPU overload. You can learn how our software, Meshmatic, improves the conversion and optimization of Revit files for Maya. 

It’s important to note that using the Datasmith Exporter Plugin for Revit does preserve metadata when importing into Unreal Engine. However, the architectural visualization pipeline is more complex, 3D modelers need to add textures and UV mapping to bring the model to life. So while the Revit-Datasmith-Unreal Engine workflow is efficient, you cant skip over the Maya step.


Manually adding metadata in game engines

Because the metadata gets lost in the translation from Revit to Maya, you need to find workarounds to include this important information in your Unity or UE4 visualization project. Unfortunately, there is no easy way to do this and you need to manually copy and paste the metadata from the original Revit model into Unity or UE4.

The process is tedious. You need to individually click on each part in the Revit file and copy paste it to the corresponding part in the game engine project. It’s a tedious task with a big margin for error, and more importantly, 3D modelers waste time on rework instead of on perfecting their visualization.


Benefits of keeping metadata in visualization


The benefits of preserving metadata in game engines is significant. It helps stakeholders, customers, and potential buyers visualize the project as accurately as possible. By programming interactions of the metadata in your blueprint, you can easily show your client various design options in the visualization. In our initial example of a high-rise visualization for a client pitch, the scripts would easily let you show different window options, or toggle between various flooring options. Similarly, each of the parts in the model – doors, windows etc. – are clickable so the client can easily see supplier info, pricing, and other information for each part. Without metadata in UE or Unity, creating these scripts would be a tedious process, as you’d have to find all the pieces in the UE4 content browser or Unity Project Assets Panel. 

Is there a way to preserve metadata in the visualization?

Currently, there isn’t a way to directly preserve metadata when converting Revit files to polygon mesh for Maya, but there are a few workarounds:

  1. Unreal Engine’s Maya Live link: UE4’s Maya Live Link lets you directly import your Revit file into UE4 through Datasmith. Then, using Live Link, you can make edits in Maya (like adding textures, and creating UV maps) which are automatically synced to your project in Unreal Engine.
  2. USD file format: Universal Scene Description (USD) is a file format developed by Pixar to interchange data between different design tools, making the data interchange between incompatible software simpler. While this file format is mainly used in the entertainment sector, it’s possible it will be used in the industrial sector in the future.

Hopefully in the near future, there’ll be an industry standard method to preserve metadata throughout the entire architectural visualization workflow, from architectural design, to 3D modelling, and the real-time visualization. As we continue to improve our 3D optimization software, Meshmatic, we will develop features to solve this problem. While Meshmatic can understand metadata, it currently can’t export it or preserve it in the translation process.

Do you have any workarounds for preserving metadata during conversion? Leave your thoughts below!