Design Innovation Research Centre Working Paper, Number 6 WP 6, v 1.0 1 Immersive Visualization of Building Information Models Ben Dalton and Maxwell Parfitt DIRC Working Paper 6 19 September 2013 Version 1.0 Please note that this means the document is being checked and modified and is subject to change. Please do check back for later versions. Design Innovation Research Centre, University of Reading, UK www.reading.ac.uk/designinnovation [email protected]Please cite as: Dalton, B and Parfitt, M. (2013) Immersive Visualization of Building Information Models, Design Innovation Research Centre working paper 6, [version number]. Immersive Visualization of Building Information Models
20
Embed
Immersive Visualization of Building Information · PDF fileDesign Innovation Research Centre Working Paper, Number 6 WP 6, v 1.0 1 Immersive Visualization of Building Information Models
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 1
Immersive Visualization of Building Information Models
Ben Dalton and Maxwell Parfitt
DIRC Working Paper 6
19 September 2013
Version 1.0
Please note that this means the document is being checked and modified and is subject to
change. Please do check back for later versions.
Design Innovation Research Centre, University of Reading, UK
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 2
Ben Dalton and Maxwell Parfitt, School of Construction Management and Engineering University of Reading, UK.
Abstract
This working paper reports on work to develop and document workflows that can be used to prepare large models for real-time immersive viewing with high-end display solutions. As Building Information Modelling (BIM) becomes more widely used in practice, construction professionals want to visualize and interact with their models, without substantial model preparation work. The gaming engine Unity3D V4.2 is explored to produce the virtual environment for visual display, and work identifies different 3D file formats that can be imported and exported. This paper compares 8 workflows that are suitable for visualising large models, from Autodesk, Bentley, Google Earth, Graphisoft, Nemetschek and Trimble products, in a 3D fully immersive CAVE. The working paper also discusses 7 key challenges, namely; intersecting vertices, data-heavy models, object nomenclature, duplication of texture-assignments, rectangular texture images, exporting two-sided materials, and inconsistent formatting. It concludes with recommendations for researchers and professionals that want to view and interact with models on high-end display equipment and visualisation systems when using the Unity3D game engine.
2.3 Unity 3D ............................................................................................................................................................ 5
3.2 Challenges of large models ............................................................................................................................... 7
4 Discussion and Conclusions ...................................................................................................................................... 9
APPENDIX A: Using Unity ................................................................................................................................................ 10
1. Creating a new project ........................................................................................................................................ 10
2. Importing and utilising assets ............................................................................................................................. 10
4. Creating a basic scene and previewing in game mode ....................................................................................... 11
4. Google Earth ....................................................................................................................................................... 16
We had most success with model flows from Trimble SketchUp Pro and Bentley Microstation for rapidly
viewing and interacting with models on high-end display equipment and visualisation systems when using
the Unity3D game engine. SketchUp Pro provides a good starting platform for workflows concerning high-
end visualisation, it; has a simple and intuitive user-interface, creates impressive results which can be
further enhanced by its wide selection of plug-ins, and has the ability to retrieve geospatial information
from Google Earth. However, for large complex models, Microstation facilitates an agile transferral with
comparatively less triangulation than SketchUp and enables the modeller to alter the stroke tolerance.
The findings of this study can inform the set-up of future practical work.
5 References
Penn State. (2013). Work Flows Retrieved 8 August, 2013, from http://bim.wikispaces.com/Work+Flows Steptoe, W. (2013). Using Unity and a Kinect in CAVE-like systems Retrieved 8 August, 2013, from
http://willsteptoe.com/post/13451407453/using-unity-and-a-kinect-in-cave-like-systems Tutt, D., & Harty, C. (2013). Journeys through the CAVE: The use of 3D immersive environments for client engagement
practices in hospital design. Paper presented at the ARCOM, Reading. Whyte, J. K. (2002). Virtual Reality and the Built Environment. Oxford: Architectural Press.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 10
APPENDIX A: Using Unity
1. Creating a new project
To start a new project:
File > New Project…
Figure 3: The project wizard in Unity
The project wizard will appear where you can choose the project’s directory and which standard assets you wish to import. In most cases, you will want to check: Character Controller; Light Flares; and Skyboxes.
2. Importing and utilising assets
If you have already created a project, but wish to import other standard assets, simply: Assets > Import Package> Select and import required package. Creating a project will create three folders within the project directory: Assets, Library, Project Settings.
Once you have created a unity-ready model, you can then simply place the model into the project by either: Dragging the model and any textures folders across the desktop and dropping into the ‘Assets’ panel within Unity; or, placing the model and any texture folders into the ‘Assets’ folder of the project directory. Within Unity, the project will automatically appear in the ‘Assets’ folder under the ‘Project’ tab.
Figure 4: The Assets folder in Unity
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 11
If you select the model in the assets folder, the ‘Inspector’ tab will appear in which you can change the model
settings. Here, you can add colliders and scale the model accordingly. Select ‘Apply’ to implement the changes.
4. Creating a basic scene and previewing in game mode
To get a model into a scene, drag and drop the project under the ‘Hierarchy’ tab. If you wish to preview the model in
real-time within Unity, a first person character controller can then be dragged and dropped straight into the desired
location within the scene.
To add a skybox to the scene: Edit > Render Settings > Select the point to the right of ‘Skybox Material’ > search and
select the desired skybox.
To add a sun to the scene: GameObject > Create Other > Directional Light. In Unity, the directional light provides an
infinitely constant flux of light, thus it can be positioned close to the model with the same effects. To make the sun a
little more convincing, you can add a sun flare by selecting the directional light in the ‘Hierarchy’ tab, select the point
next to ‘Flare’ which appears in the ‘Inspector’ tab and then select the sun flare.
Figure 5: The model in ‘game’ mode
Simply press the play button to view your scene in the real-time ‘Game’ mode.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 12
APPENDIX B: Workflows
1. Autodesk Navisworks Manage 2014
To export the FBX into Navisworks:
Select the green ‘N’ in the top left corner > Export > FBX
In the FBX Options dialogue box, make sure ‘Lights’ and ‘Cameras’ are unchecked. Ensure to embed textures. If
model is very large, you can try to limit the number of polygons.
Figure 6: The FBX options
Unfortunately, Navisworks does not export double-sided materials. This means, for instance, that you would only be
able to see through a window in one direction. To mitigate this, ensure that the materials are rendered on the side
from which you will be looking at them.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 13
2. Autodesk Revit 2013
Workflow
Open up a 3D view of a project in Revit 2013> Click the ‘R’ in the top left corner > Export > FBX > Choose a file
destination > Open 3ds Max > Click the green ‘3’ in the top left corner > Import > Select the exported FBX from Revit
> ‘OK’ to accept default settings > Click ‘render production’ on the main toolbar (if you cannot see the toolbar, press
Alt+6) > Under ‘render preset’ select ‘mental.ray.daylighting.high’ and select ‘load’ > Click the green ‘3’ in the top left
corner > Export > Ensure file type is FBX and save in the ‘Assets’ Directory of a Unity project > Within the FBX export
options, ensure that ‘Embed Media’ is checked and accept the default export options > Click ok to any warnings
regarding the sun, sky, lighting and any cameras that may be on the project - there are less complications when
these are configured in Unity.
Figure 7: Screenshots in Revit and Unity
Lessons Learnt
Translation from Revit was found to be the most problematic workflow. Previous to 2011, the FBX export would also
produce a FBM folder containing the texture properties, thus you could import straight from Revit into Unity.
However, since 2011 Autodesk have changed their materials to the Protein 2.0 type, in which the textures are now
encrypted within an Autodesk library file in the FBM folder and cannot be interpreted by Unity 3D. Therefore, Revit
needs an additional intermediary step to transfer into Unity. 3ds Max 2014 is an Autodesk product capable of
reading the encrypted Autodesk Library materials and can then export FBX files with its textures embedded within it
that Unity can detect. However, 3ds Max will not export textures in areas where there is complex geometry, such as
intersecting vertices.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 14
The building’s geometries should import correctly, however, only some textures are translated where the geometry
is complex. To resolve this, you can undertake some time-consuming processes: Simplify the geometries and vertices
in 3ds Max to allow for a better transferal of textures; or, unwrap the UVs in 3ds Max and then map them in Unity.
Using 3ds Max or some of its plug-ins, such as V-Ray, photorealistic renders can be achieved by rendering and baking
the textures before importing into Unity. This can be a slow process.
There will need to be further development on this workflow in order to establish more direct workflows.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 15
3. Bentley Microstation V8i
Primarily used for infrastructure design, projects created in Bentley Microstation V8i are usually large and intricate;
there are usually many polygons and faces. I found that the FBX export was the best direct export into Unity; the
exportation speed was high and there were seemingly no issues with the textures. The DAE export works well, but
does not export textures.
In any case, it is advisable to first compress the model (or piece of the model) within Bentley:
File > Compress > Design
This will eliminate cross-session data and useless information which has accumulated for various reasons. In most
cases, this only tends to have a slight impact on the size of the file but is worth doing.
To export the file:
File > Export > FBX…
The ‘FBX Export Settings’ window will appear. The stroke tolerance is usually at a default of 0.100m. You should vary
the stroke tolerance depending on the size of the model. A larger stroke tolerance will reduce the rendering time,
but will provide worse quality rendered surfaces, particularly noticeable on curved geometries. A smaller stroke
tolerance will increase the rendering time, but will provide better quality rendered surfaces. I have found the default
of 0.100m to be too small in most cases. I have had success using a range of 0.500m to 1.500m without
compromising on quality too much, however,larger models will need to use a higher stroke tolerance. Also ensure
that the Y and Z axis are inverted so they will be situated on the correct axis within Unity.
Figure 8: The FBX export settings
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 16
4. Google Earth
SketchUp Pro enables users to capture geospatial information and geo locate a model by using its Google Earth
plugin. To export from Sketchup into Unity, the terrain and the buildings need to be exported separately in different
formats. First, within a unity project, create a new folder within ‘Assets’: Right-click ‘Assets’ folder under project tab
> Create > Folder
Export the terrain as an FBX by selecting the terrain and following the FBX export process for SketchUp Pro,
however, ensure that “export only current selection” is checked and DO NOT export it straight into an assets folder
of a Unity project. Once the FBX has been exported, there should be a folder within the FBX’s directory with the
same name as the FBX. This folder should contain the Google Earth image of your geo location.
Drag and drop the Google Earth image into the new folder that was created in Unity. It is only then that you can
import the FBX into Unity. If this is not followed, the texture will not map itself to the mesh; the mesh will be blank.
The buildings downloaded from Trimble must be then separately exported as a Collada file (DAE). Follow the
SketchUp export process.
Figure 9: Buildings and terrain in Unity
Once the buildings and the geo location are in Unity, they can be dragged into the hierarchy and should fit together
as in SketchUp. As mentioned in the SketchUp workflow, the Collada exports will default to using inches as the units,
therefore the Collada files will have to be set to a scale of 0.0254. Also ensure that the FBX geo location is at a scale
of 1.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 17
5. Graphisoft ArchiCAD 17
Although fairly slow, the best workflow from ArchiCAD is through SketchUp. Make sure that the model is in a 3D
view (press Ctrl+F5), and then select File > Save as… > Select SketchUp file from the ‘Save as type’ drop-down box >
Follow the SketchUp workflow for exporting a Collada .dae file. This workflow pulls through all of the textures and
geometries correctly into Unity.
If you do not have SketchUp, you can export from ArchiCAD as a .3ds file and import that into Autodesk 3ds Max.
From there it is best to export an FBX; the DAE exporter in 3ds Max does not export the textures as well as the FBX
exporter does.
6. Nemetschek Vectorworks 2013
From Vectorworks, the only successful workflow directly into Unity has been by exporting a Cinema 4D (C4D) file. To
do so:
View the model in a 3D view > File > Export > Export Cinema 4D (3D only)
Export the model directly into the assets folder of a Unity project.
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 18
7. Trimble SketchUp Pro 2013
It is apparent that SketchUp Pro exports ‘Unity-ready’ FBX and texture files. This workflow provides a comparatively
automatic and direct route to obtaining real-time 3D models with their original textures intact. The drawbacks only
arise when using it as an intermediary in the workflow for a large model; the SketchUp exporter tends to over-
triangulate and weaken the performance of large models. The exportation process is relatively fast:
File > Export > 3D Model… > Choose your file destination (it is advisable to export the FBX directly into the ‘assets’
folder of a Unity project; this is because SketchUp will export a materials folder with the FBX, which will also need to
be placed alongside the FBX in the assets folder if you wish to transfer materials), select .fbx as the export type >
When the FBX Export Options dialogue box appears, you must ensure that ‘Export two-sided faces’ is selected under
the ‘Geometry’ section. As one could expect, this doubles the number of polygons and nearly doubles the file size
which slows the frame rates in Unity. However, when this is not selected, the reversed faces will become invisible.
The option to ‘Triangulate all faces’ is also advisable. Unity 3D can only read triangulated or quadrangulated faces. If
this is not checked, Unity will still read the model by using their native (and inefficient) automatic triangulating
process and in rare cases there may be problems where certain geometries specific to SketchUp. ‘Export texture
maps’ must be selected in order to create the texture folder upon export; which is required to transfer the materials.
Figure 10: FBX export options
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0 19
8. Trimble SketchUp 2013
Alternatively, if you do not have SketchUp Pro, export as Collada. The process is similar to the FBX export, except you
have to select Collada (DAE) as the export type when exporting the 3D model. The Collada files pull SketchUp models
into Unity well, although in rare instances, some textures can disappear. The only major flaw in the Collada export is
that unlike the FBX export, the export options dialogue box does not allow the user to set the model units. Upon
export this tends to default to inches, hence the Collada model will be 39.37 times too big if modelled in meters. The
scale in Unity therefore, must be set to 0.0254. The export options are similar and should be checked as shown
(figure 9a). Ensure to never export edges as this can create complications opening the file in certain visualization
packages.
Figure 9: a) export options; b) scale issues in Unity
APPENDIX C: File conversion chart
Design Innovation Research Centre Working Paper, Number 6
WP 6, v 1.0
20
Revit 2013 3ds Max 2014 Bentley MicroStation V8i
SketchUp 2013 Pro Unity 3D (with meshes and textures only)