Building an Architectural Walkthrough Using Unity

Walk around in your own architectural design with the Unity Game Authoring system
3.6 (10 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
152 students enrolled
82% off
Take This Course
  • Lectures 42
  • Length 3 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 12/2014 English

Course Description

Starting from 3D models in common architectural software, we will discuss the workflow to load the models into Unity and even incorporate model changes. The building model will be refined, with better materials and lighting, so it looks attractive to the visitor. With a few basic scripts, we add the necessary interactivity and finally export it into an application you can share.

This video tutorial shows an efficient and easy approach to apply an architectural 3D model into your project for quick and reliable results.

About the Author

Stefan Boeykens is an architect-engineer from Leuven (Belgium). After graduation, he was involved in architectural practice for about 4 years, before returning to the KU Leuven for his PhD in 2007 on the integration of Building Information Modeling (BIM) in the design process. He worked on a variety of research and education projects, ranging from CAD and BIM to metadata for architectural archives and cost simulations. His main research interests are BIM, 3D modeling and visualization, digital historical reconstruction, parametric design, programming, and interoperability between a variety of software tools, with a special focus on openBIM.

What are the requirements?

  • A quick brush up on the basics of Unity and you will be ready to go.
  • This video tutorial takes an illustrative approach, with attention to how and why you need to do things. Each step leads you to the final walkthrough and, what’s more, the concepts can be applied to other architectural software too.

What am I going to get from this course?

  • Export CAD and BIM models into a format that Unity can use
  • Optimize the geometry and import settings for clean and reliable results
  • Adjust the materials to add bump maps and transparent or reflective effects
  • Add a Sun light with shadows and ensure even lighting
  • Improve interior lighting with additional lights
  • Bake the lighting onto the model with Lightmapping
  • Add a character to freely walk around your model
  • Use animations to apply interactive features such as opening doors
  • Build a complete standalone application that can be shared online
  • Gain control over your model with Unity scripts

Who is the target audience?

  • This video course is meant for architects, designers, engineers, students, or in a nutshell, anyone interested in developing interactive environments with Unity.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Importing Architectural Models in Unity

What this course entails


Unity cannot directly import SketchUp files. Export the model to compatible 3D formats for Unity.


ArchiCAD does not support FBX or Collada. Instead of using 3D obj formats, we rely on model exchange through Cinema 4D.


Unity integrates directly with Cinema 4D.


Once you established a model import, Unity retains its import settings and will reload the model when the file is updated automatically.


Architectural models tend to be large and complex. Splitting the model into separate files and applying culling and batching will improve performance.

Section 2: Navigating an Architectural Model

Creating an interactive navigation system can be quite elaborate. Luckily, Unity provides two common setups: a First Person and a Third Person controller.


3D objects are usually not aware of other's geometry in the scene. Colliders are used to detect the objects passing through them.


Depending on the context, you have to choose between a First and a Third Person view point. Unity provides both of them as examples.


Using the default construction worker is not suitable in typical architectural visualization situations. You can use the Unity Asset Store to load or buy new characters and animations.


To assist the user with navigation, you can add additional cameras that can be used as a subset of the screen.

Section 3: Improving Materials with Shaders and Textures

The default materials imported from CAD/BIM can be dull. We can improve them a lot by using multiple textures.


A plain-colored background helps with the orientation a bit. By adding an environment texture, we can see the sky and clouds all around us.


Though we can create a transparent material with the default shaders, it is dull and does not give the impression of a reflection. When we use a special shader, we receive a pseudo reflection.


Texture materials can use up a lot of memory and are not easy to adjust quickly. Procedural textures can generate textures from a recipe and can be edited.


Some objects have holes and cutouts, which can take lots of geometry to model. We can increase the performance using simple geometry and cutout shaders.

Section 4: Adding Lights and Shadows

Without lights, your project is dull and dark. There are four different light types available to brighten up any scene.


There is no sun object in Unity, but we will mimic the light effects of the sun using a directional light. Moreover, it can also cast real-time shadows.


Exterior, direct lighting is fairly easy, but interior scenes can be dull and flat, initially. Use several lights with fairly low brightness to even out interior lighting.


Real-time lights are very demanding and have lower performance. With Lightmapping, we can pre-calculate lighting as an additional texture layer on objects.


Calculating lighting in advance can take lots of rendering time and texture memory. Start with conservative settings.

Section 5: Animating Objects and Lighting

Unity has several possibilities to define animation. Apart from scripting, there are two animation systems available, Legacy and Mecanim.


Animation in Unity is stored in animation clips. We need to create the clips and attach them to the right object.


Gameobjects only rotate around their own pivot point. To rotate them around a different point, we can use an object hierarchy.


For full control over animation, we require scripting, and we can get quite far with the keyframe animation alone.


An animated sun study uses a combination of different rotations and also needs to shift color. Almost any object property in Unity can be animated.

Section 6: Scripting to Add Interactivity

Out of the box, Unity is quite complete. However, to add specific functionalities in a project, you require scripting.


To write scripts, you need a good code editor. Unity includes Monodevelop, which is an integrated development environment.


Scripts often contain events that need to occur at a specific moment or situation. We react to a Trigger Event to capture the player approaching.


Materials are assigned to the Renderer component. With scripting, you can replace them with another material.


Shortcuts only make sense on the desktop and Webplayer. Adding a GUI button is consistent on all platforms.

Section 7: Expanding the Scripts

Sometimes you want to hide or show the parts of your model, or you might want to switch between different design alternatives. You can enable and disable the Mesh Renderer component of Gameobjects using a script.


Sometimes you want to present the user with a particular viewpoint: from above or from an alternative angle. We will move our main camera between different present camera positions.


When you fall from the world or want to quickly step back to where you began, you can move the player.


If we want to request more information about a particular object, we need to highlight or select it first. Picking objects uses a cast ray in the scene to pick objects.


When we highlight an object, we want to see some information in a pop-up window. We will request information from a custom component and display it in a GUI window.

Section 8: Presenting the Final Walkthrough

The Unity Editor is an authoring environment, which gives a preview of your game for testing. However, to share your result with the world, you need to compile it in an actual game or app.


Once you have chosen the desired platform and player settings, you can build your game.


Depending on your Unity license and operating system, you have multiple platforms at your disposal.


Unity supports iOS, but you need a Mac that runs XCode and an iOS SDK Developer license.


Unity has the provision of being controlled by the Unity Remote App which can be run from your IPhone.


While a running app can be all you need, some minor improvements are often required.

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Packt Publishing, Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.

Ready to start learning?
Take This Course