Skip to main content

Posts

Showing posts from 2016

Getting BIM data into Unity (Part 5 - Parsing a Schedule in Unity)

This is part 5 of a series of posts about getting BIM data into Unity. In our previous posts we looked at how to get information from our BIM Model into a Schedule: a text file with data about the elements. This post will do something with this schedule. Parsing a Schedule in Unity Regardless if you start from an ArchiCAD or Revit model, you should end with the geometry inside Unity from the FBX conversion (see previous posts) and a text-file containing a subset of information you want to transfer to the model, so it can be accessed from within the realtime model. Ensure you save (or copy) the schedules somewhere in the Unity Assets folder. The name does not really matter, as we’ll ensure that we can set it in our script as a variable. Reading the text from a Schedule file (“parsing”) requires creating a new C# script. While this is not a Unity scripting tutorial, we’ll show you what we did. Maybe you can improve on it or spot some errors. We need three script

Getting BIM data into Unity (Part 4 - Exporting a Schedule from Revit)

This is part 4 of a series of posts about getting BIM data into Unity. We discussed ArchiCAD in a previous article, but this time, we look at Revit. Getting our information into a schedule is not difficult, but getting the identifier of the elements is actually not trivial at all. We need to do some mean tweaking and we need a Revit Add-on too… Preparing Revit Schedules for use with Unity Basic concept: We will collect information from our BIM model into a table (schedule) for export. If we add the ID of the element in the first column, we can use that information to map the data from the table to the entity. Creating an instance-parameter for the Entity ID In Revit, every entity has a unique number, the EntityID. While it looks very simple, there is a catch. It can be used directly from the Application’s Programming Interface (API) and you can also query objects for it in the Revit GUI, but there is no way to collect them in a schedule (in contrast to ArchiCAD, I must say)! There is