Sunteți pe pagina 1din 12

Modular Environment Design

Justin Wilder
Andrew Feldkamp
Whitney Cullen
Dept. Computer Graphics Dept. Computer Graphics Dept. Computer Graphics
Technology
Technology
Technology
Purdue University
Purdue University
Purdue University
wilder@purdue.edu
afeldkam@purdue.edu
wcullen@purdue.edu

Jun Yu
Dept. Computer Graphics
Technology
Purdue University
yujun_2005@hotmail.com

Abstract
This project aims to create more efficient models to be used in visualizations for architectural design, which can
ultimately be viewed in real-time. The method used will apply techniques already used in video game design, where
3D objects are modeled using a grid system and snapped together. Most architectural firms currently use traditional
modeling in 3ds Max, Maya, or proprietary software to render visualizations frame-by-frame. Models created using
these traditional methods are not efficient enough to be rendered in real-time. The research for this project investigates
whether modular modeling improves rendering efficiency in a real-time engine so that it meets the standard of thirty
frames per second.

Introduction

Research Questions

Problem Statement

The main question that this project addressed


was the following:

Traditional modeling techniques used in architectural visualization are unsuitable for real-time
rendering. Modular design has the potential to
improve rendering efficiency and is used in the
video game industry for level design (Epic 2011).
The necesity of modular design is to offer real-time
solutions under the growing need for interactive
environments in the architectural visualization
industry.
Typically, an architectural video rendering
consists of thousands of frames rendered over a
long period of time. Real-time visualization eliminates that rendering downtime. However, adopting
a real-time solution requires research on how to
properly create the objects that will be imported
into the real-time engine. This is why research
into modular design is important. The video game
industry creates efficient environments in this way,
and the architectural visualization industry would
benefit from adopting and adapting these practices
(Conway 2011).

How can modeling efficiency be improved using


modular techniques from video game design, while
maintaining a desired standard of quality?

The video game industry uses modular


modeling technique in many studios and games
(Jones 2011). In the architectural visualization
industry, the environments are built more as
singular entities rather than modular pieces. If a
building modeled for architectural visualization
was imported into a real-time engine, the geometry
would come into the engine as a single unit that can
not be re-arranged. In games, only the main pieces
of the building are built, and then the environments
are assembled in the real-time engine.
The advantage to creating the building
in modular pieces and assembling them in the
real-time engine is that it is easier for the real-time
engine to process the geometry. If the engine can
process the geometry more easily, the playback is
smoother (Jones 2011 ).

One of the functional limits is that the building


must contain repeating elements. Many homes built
today have repeated elements, but there are notable
exceptions. For example, in ultra-modern architecture, some buildings consist of unique pieces that
are never repeated. The modular design technique
may not be suited for buildings that are highly
customized or whose elements are not repeated
(Epic 2011).
Architecture that is well-suited for modular
design is in the single and multi-family housing
industry as well as the high-rise skyscraper projects.
Most of these types of architecture have many
repetitive elements, which makes it easy to use the
modular design technique on them. Figure 1 shows
one example of a scene that would be well-suited to
the modular techniques, as many of the elements are
repeated (Epic 2011).

Figure 1: Re/Max, 2011

Additonally, these techniques can be used


to swap assets that are similar. For instance, if an
architect has two window options for a particular
house, each style can be modeled and swapped out
as necessary (Conway 2011).

Literature Review
Known and Unknown Information
During this project, various modeling
techniques were researched in terms of how they
apply within a game engine. Techniques designed
to create models that will render efficiently in the

game engine currently exist and are used in the


video game industry. These concepts can carry over
to other visualization techniques, including architectural visualizations (Al-Najdawi 2007).
Unknown information includes how these
techniques will affect the architectural visualization industry pipeline. Some research has been
conducted by individuals, but the methods are
not widely used in the architectural visualization
industry. Further research is needed to determine
whether the scenes created for architectural visualizations can be rendered in real-time at an adequate
quality. It is also unknown how the methods used
for these visualizations will be accepted by the
architecture industry (Conway 2011).

Needs of Industry
Architectural visualizations are used to help
clients or potential customers visualize what will
be built. Although physical model homes provide
a complete experience of exploring the home, they
cannot be customized to reflect specific options
that the potential buyers would choose. It is also
too costly for companies to build a physical model
of every possible option available to buyers.
Computer visualizations are more easily customized
than physical model homes, and also less costly.
However, current methods do not provide the
user with the experience of freely exploring the
environment (Schroeder 2011).
Traditional visualizations such as floor plan
drawings and elevations rely on the clients imagination to visualize a proposed building and assume
that clients have the training to construct 3D images
from 2D plan views (Funkhouser, Teller, Sequin, &
Khorramabadi 1996).
In the same way, current pre-rendered animations are static and only allow the client to see
some portions of the environment. Having a higher
level of interactivity would increase the amount
of information available to the user and make the
experience more immersive (Conway 2011).

The feeling of immersion or presence is an


important factor contributing to a client understanding the environment. According to Schroeder
(2011), The feeling of presence, facilitated by
virtual reality, can lead the user to think what they
are experiencing is real. This is important because
people tend to remember things they experience
firsthand over things they simply read.
Greenberg (1974) also states, For architects
the ability to simulate motion is highly useful. One
of the principal concerns of architectural design
is space: the internal spaces of a building and the
external space of the building and its setting. One
does not react to space from a static position, as one
might view a painting. To obtain a deeper understanding of architectural space it is necessary to
move through the space, experiencing new views
and discovering the sequence of complex spatial
relations.
Schroeder (2011) describes how home builders
are looking at using virtual reality as a supplement
to the model home, since they were cutting costs
by having fewer model homes. As visualizations
become more realistic and immersive, they may
become a better supplement to physical model
homes and reduce the need for building as many
physical model homes.
According to Campbell and Wells (1994),
the criterion that makes virtual reality closer to
reality is the ability to allow immediate, direct,
and more intuitive control over a three-dimensional
design. Using the game engine will allow a client
to directly control their movement and interaction
through a 3D environment. Since rendering is done
in real-time, the client will be able to control this
immediately.

Game Engines
Al-Najdawi (2007) notes how game engines
can be used for applications besides games,
including architectural visualizations.

Al-Najdawi (2007) goes on to define a game


engine as an integrated collection of a graphics
module, a physics module, a collision detection
module, an input/output module, a sound module,
an artificial intelligence module, a network module,
a database module, and a Graphical User Interface
module.
The combination of these tools allows the
architectural visualization artist to import the
environment, set up controls for a client to explore
the environment, render it in real-time, and potentially interact with objects in the environment such
as doors (Epic 2011).
Research has shown that the use of an interactive, first-person controller results in users feeling
the highest level of immersion in the environment
(Campbell & Wells 1994). The first-person
controller is easily set up in the game engine, and
interactive objects can also be created with tools in
the game engine (Conway 2011)
Traditional visualization software packages,
such as Maya or 3ds Max, are not designed to
render scenes in real-time as well as game engines.
The use of game engines allows for this real-time
rendering, but in order for it to be effective it must
render at a standard minimum of thirty frames per
second (Conway 2011).
Techniques have been developed in the game
design field which produce models that can be
rendered much more efficiently by the game engine.
One of these techniques is modular design, where
larger parts of a model can be broken into smaller
pieces (Jones 2011).
Game engines also have the potential to render
models in real-time more efficiently than traditional
rendering software. Game engines use techniques
such as polygon culling to improve the efficiency of
rendering (Schroeder 2011).

Modular Design

Grid System

Modular design describes the method where


parts of a model are broken down into smaller
pieces, many of which are duplicates of each
other. This technique has several advantages when
creating models to be rendered in a game engine.

A simple way to set up modular modeling is


through the use of a grid system. The pieces are
modeled using a grid system which is set up in the
modeling software by editing the unit settings. Units
should be changed to feet or inches, making scaling
the model a little easier.

The use of modular design has the potential to


make models more efficient so that game engines
are a viable option for rendering scenes in real-time.
The rendering efficiency of modular pieces is
improved in a game engine rendering because the
game engine requires less graphics processing to
render duplicated pieces.
The efficiency of graphics proccessing is
similar to the return on investment in manufacturing. Producing a novel product requires an initial
investment for the facilities and machinery involved
in production, so the first product created is very
costly; but once the factory is running, the cost of
production for each additional unit is relatively low.
The same logic can be applied to the 3D
model of a house. If a house contains multiple
wall sections that are the same, the wall section is
only fully processed once; then, for each duplicate
section, processing time is reduced (Conway 2011).
Therefore, breaking a house into smaller sections
has the potential to reduce the overal processing
time required since many of these pieces will be
duplicates.
Other advantages of modular design when used
in the game engine include that the pieces are more
easily assembled in the game engine. They are
also more easily altered, which would be beneficial
if a client requests changes or if multiple similar
floorplans are being created. Traditionally, when a
client comes to a company and requests a change,
the change cannot occur right away. If the architectural visualization professionals use a game engine
to render out the model, it would be possible to
make a change with a much shorter turnaround time
(Conway 2011).

The grid is set up based on units which are


powers of 2. For example, the grid in Maya would
be set to one grid line every 16 Maya units. The
grid system ensures that the dimensions in the
modeling software will have a 1:1 ratio to the
dimensions of the model imported into the game
engine. Figure 2 shows an example of how the
units are set up.

Figure 2: Mader, 2005

Using the grid system makes it faster to


assemble the model in both Maya and the game
engine. When the pieces are created based on the
grid system, it is easier to fit them together to create
the model. Pieces snap together seamlessly and
there are minimal adjustments needed. Using the
grid also makes the design process go a lot more
smoothly, because the designer can see ahead of
time how the pieces will fit together and how those
pieces can be used in other areas of the design. This
way the designer does not have to create more parts
than what are actually needed (Mader 2005).

Texture Atlases

Libraries

Another feature of modular modeling that


improves efficiency is the use of texture atlases. A
texture atlas is where all the textures that are being
used for the same model file are placed together to
create one singular piece (Jones 2011).

Libraries consist of assets that have been


previously created that may be reused in future
projects. The use of libraries prevents the repeated
modeling of common items such as a window or a
door. Libraries help to save time for future projects
because previously modeled assets can be reused.
A library can consist of not only geometry, but also
textures and materials. Libraries are especially
applicable with modular designs because the larger
sections of a model are broken into smaller pieces
which can be assembled in a greater variety of ways
(Jones 2011).

Obstacles

Figure 3: Jones, 2011

The picture in Figure 3 shows how two


separate textures have been placed together in order
to create one seamless texture. By using a texture
atlas, more RAM space is freed up, saving on
rendering time and hardware space. For example, if
the project that is being created uses five separate
textures and those five textures are made into an
atlas instead of being used individually, it will save
on average 80% of memory that would have previously been used if the textures were used separately
(Jones 2011).
When creating a texture atlas, the power of 2
concept used to create the grid system should also
be kept in mind. This way, the atlas will fit evenly
on the models texture mapping coordinates, and
less adjustment is needed when the atlas is being
created.

When trying to take modularity from the


gaming world into the world of architectural visualization, there are many obstacles that need to be
overcome. For example, architectural visualization
professionals want to either create their modular
model in programs such as Revit or create a traditional model that has a high poly count.
After these models are created the architectural professionals will drop them into the real-time
engine such as UDK and will experience several
major issues. Based on the research conducted,
when a high poly model or a model created using a
program such as Revit is dropped into a real-time
engine, the frame rate drops and it becomes difficult
for the engine to track the motion of the animation.
Also, when doing texture mapping in a game
engine, the process becomes more complicated and
the textures either do not turn out well or very highresolution textures will need to be used.

Areas of Controversy
One area of controversy is whether architectural visualization firms need to move away from
their traditional rendering methods. The amount
of time saved from rendering real-time as opposed
to frame-by-frame can and will often be cancelled
out by the amount of time spent making the models
real-time capable.
One hurdle that needs to be overcome is
how modular modeling will affect the pipeline for
architecture visualization. Architects do not wish to
switch over to modular modeling because of traditional modeling standard. The traditional modeling
technique produces high-polygon meshes which are
used for high-quality details and renderings.
The modular model pipeline is different in
comparison to the pipeline for architecture visualization. This would require a shift in attitudes from
the architectural visualization professionals to
adapt a new way of thinking and learning process.
Modular modeling can be restrictive and not allow
for the unique factors that architects like to use.
There is also controversy with game engines
themselves. They are viewed as tools for entertainment purposes only and not welcomed into the
architectural industry (Conway 2011).
Finally, an obstacle that needs to be overcome
is how repetitive modular modeling will tend to
look after a while. If pieces are only used a couple
of times, this is not as noticeable. However, when
pieces are used several times throughout a model
this can become rather obvious.

Figure 4: Jones, 2011

As shown in Figure 4, the scene on the left


begins to show repetition in elements, such as the
walls and floor tiles. By using lighting and other
techniques, the look of repetition is reduced in the
scene on the right.

Product
The product developed in this project is the
process of creating a building model using modular
modeling techniques. This projects goal is to
import the model into the Unreal game engine and
view the environment in real-time.
The house pictured in Figure 5 was chosen
because it is typical of many homes built in the
United States today.

There are ways to cleverly camouflage this


though. Being able to hide this requires the use of
clever lighting and other assets such as entourage.
When the eye has something else to focus on, it
tends to not notice how often a certain section was
duplicated on a model.
Figure 5: Palm Harbor Homes, 2011

The building was modeled using the following


techniques: modular modelingin Maya, traditional
modeling in Maya, and traditional modeling in
Revit. Then, these models were each imported into
the Unreal engine, where they were rendered in
real-time to test their efficiency.

Figure 8 shows one of the models created in


Maya using traditional techniques, without textures.

For modular modeling, the house that has


been chosen was broken down into pieces that are
repeatable. These sections can be used in other
areas of the house as well as be transferred to other
projects. An example of this is shown in Figure 6.
Figure 8

Methodology
Testing of the product was designed to
discover which of four possible types of modeling
produces the most efficient model house when
rendered in real-time. The models were compared
on three factors of efficiency: polygon count, render
time, and frames per second.
Figure 6

Figure 7 shows the modular house model


without textures. The pieces from Figure 6 were
used to assemble the house.

Figure 7

Polygon count is useful for rating efficiency


because rendering speed, mass storage, and memory
requirements are directly proportional to the sum
of polygons in the objects that make up a scene
(Hansen and Hinker).
Render time is useful because it tells how
much computational processing was required to
generate a single image. This offers an estimate of
how the scene will act in real-time when motion is
introduced. Finally, frames per second is a critical
factor because it defines what will properly display
motion. The film industry uses twenty-four frames
per second and digital video is displayed at 29.97
frames per second (Seltz, Andrew).

Testing Modularity
The test was designed to answer the following
questions:

How does the use of modular modeling techniques affect rendering efficiency (measured
by frames per second and render time) compared to traditional modeling techniques?
Does the use of modular modeling techniques
result in significant differences in polygon
count compared to traditional modeling techniques?
Can building models created using various
modeling techniques be successfully rendered
in real-time within the Unreal game engine?

Metrics
The test can be broken down into three
variables: inpendent, dependent, and controlled.
The independent variable in this experiment was
modeling technique. The three different techniques
used were modeling in the program called Revit,
modeling in the program called Maya traditionally,
and modeling in Maya modularly. These were
chosen as representative of techniques that would be
used in industry to model a house (Conway 2011).
In order to limit the difference between
these techniques and prevent confounding variables,
several variables had to remain constant. If
varations existed between them, the measurements
of the dependent variables would be biased.
The following aspects remained constant
across the three techniques to prevent fluctuations in our dependent variables:subject, textures,
lighting, computer performing render, game engine
producing real-time renders. By holding these data
points constant, the test can accurately gauge how
the independent variable affects the dependent
variables and make comparisons between the three
techniques.

Three of the dependent variables were


chosen to allow for comparisons of efficiency
between the three different techiques. Render time,
polygon count, and frame rate are all factors that
can be compared to observe relative efficiency.
Render time is the time it takes for a single frame
to render. This was measured from three different
angles replicated ten times each to improve
accuracy.
The final dependent variable that was
observed is unrelated to the efficiency of each
technique. To ensure that the implementation of
different techniques did not result in inaccurate
reproduction of the house, a quality assurance test
was distributed to industry professionals. This
test determined whether or not each model met a
minimum standard of quality required for industry
work.
Three renders from each of the four
techniques were distributed to industry professionals. The three versions were a textured and
lit version, an ambient occlusion pass, and a wire
frame version. The lighting in each scene was
exported and imported so that it would be identical
for each different technique.
The industry professionals were also provided
with the original image of our house so that they
could make the comparison. In order to assess the
fidelity of the four techniques they were asked to
rate each render of the models on a 10 level Likert
scale.
A ten on this scale represented a model whose
geometry was visually congruent to the provided
image. A one on this scale represented a model
whose geometry was different to the point of not
representing the same house as the provided image.
This Likert scale was used on each render so that
the average fidelity rating of each building could be
obtained.

The hypothesis stands that the modular model


will have the lowest polygon count, highest frame
rate, and lowest render time of the four techniques.
This is because the modular modeling technique
is focused on modeling efficiently throughout the
entire process and each piece is modeled to be as
few polygons as possible.

Frame Rate
The next set of data collected was the frame
rate of each of these models when rendered in the
game engine.

Revit models do not allow the user to control


polygon count and traditional modeling focuses on
creating the same geometry visually without regards
to the number of polygons used.

Results
Polygon Count
The first result that was gathered was the
polygon count of each model. Each model was
exported from the native program into a universal
.fbx format. This fbx model was imported into UDK
and the polygon count test was performed there.
This was to ensure that each models polygons
were calculated in the same manner and in the same
program, in order to limit bias.

Triangles

Modular
Maya

Traditional
Maya A

Traditional
Maya B

Traditional
Revit

2,761

8,476

8,582

26,676

Figure 9: Polygon count

As shown in the Figure 9, the modular model


had the lowest polygon count with 2,761 triangles.
This is a 67.6% reduction in polygons compared to
the average between the traditional Maya models:
8,529 polygons. The Revit model consisted of
26,676 polygons which is 3.13 times the number of
polygons in the traditional Maya model and 9.66
times the number of polygons in the modular Maya
model. This offers a relative comparison of the
modeling efficiency between the three techniques.

Figure 10

The first test performed was with a single


house imported into the Unreal engine. The frame
rate was collected from a quick fly-by of each
house. Each scene was rendered using the exact
same camera path and recording frame rate. The
experiment was repeated twenty times for each
treatment.
As shown in Figure 10, the average frames
per second for a single house were 107.1, 106.9,
107.4, and 91.9 for modular Maya, traditional
Maya A, traditional Maya B, and traditional Revit,
respectively. The first three results varied by only
0.5 frames per second (fps), and all four models
were over three times the frame rate of the industry
standard of 30 fps.
The second test was with each house duplicated 25 times. The results in this test started
showing a wider range of results. The frame rates
for modular Maya and the two traditional Maya
models varied by 3.2 fps, and all four models were
over double the industry standard of 30 fps.
The third test was with each house duplicated 100 times. This offered the greatest variation
between results. The frame rates were 70.1, 57.6,
59.8, and 39.6 for modular Maya, traditional

Maya A, traditional Maya B, and traditional Revit


respectively. The first three varied by 12.5 fps. At
100 copies of the house, the modular Maya model
was the only technique that remained over double
the industry standard of 30 fps. This shows that
the modular technique produces the most efficient
rendering.

Quality Assurance
Since the modular model had fewer polygons
than the traditional methods, it was possible that
it was a less-detailed representation of the house.
To measure quality assurance, industry professionals were asked to rate the models on accurate
re-creation of geometry on a scale of 1 to 10, with
10 being the highest quality. The results were as
follows:

Rating

Modular
Maya

Traditional
Maya A

Traditional
Maya B

Traditional
Revit

6.42

3.83

6.33

2.83

Figure 11: Quality assurance

The modular model scored better on average


than the other models. This feedback verified that
the modular model represented the house as well
as the traditional models, despite its lower polygon
count.

Future Research
Due to the scope of the project, there are
several areas that require further research. Since
this project focused on the various modeling
practices, the next step would involve taking these
models and creating the completed interactive
environment in a game engine. This interactive
environment should allow the user to explore using
a first-person controller. Ideally, it would also allow
users to interact with objects such as doors and light
switches to give a more complete experience. Once
completed, testing should be conducted to compare
the effectiveness of the real-time rendering in the
game engine versus a traditional animation.

Additionally, research about the game engines


needs to be expanded. This project used only the
Unreal game engine, but there are several other
engines that could also be tested (Conway 2011).
This project did not compare lighting
techniques, assembly in the game engine, or
texturing techniques. All of these areas have the
potential to affect the efficiency of the rendering.
Additional research which compares these areas is
essential to develop the most efficient method for
creating the real-time renderings.

Conclusion
The use of modular modeling has been shown
to improve rendering efficiency within the game
engine. It has been demonstrated that this method
of rendering could have potential for use in the
architectural visualization industry. Real-time
visualizations of buildings could be used to show
potential clients what they would be buying. These
visualizations would be more easily customized and
altered than traditional methods.
The testing data has shown that rendering a
single home in the game engine results in framesper-second values well above the industry standard.
The model created using modular methods
performed best in terms of rendering efficiency
when compared to models created using traditional
methods. Although this comparision provides
useful insight into which modeling techniques
would be best suited for architectural visualization
purposes, further testing must be conducted.
Since the models used were simple and did
not include surroundings such as trees or nearby
buildings, the polygon count was low, and therefore
the frame rate was high. Adding the additional
geometry of the surroundings would increase the
polygon count and likely decrease the frame rate.
Further research should be done to test the frame
rate of a completed scene.

References
Al-Najdawi N. (2007). Introduction to visualization using game engines, AHRC Methods Network Workshop
From Abstract Data Mapping to 3D Photorealism: understanding emerging intersections in visualisation
practices and techniques, Birmingham Institute of Art and Design.
Conway, K. (2011). Game engines for architectural visualization in design (Masters thesis).
Dead End Thrills (August 2008). DeadEndThrills Presents. Retrieved from
http://deadendthrills.com/collections/brink/
EarthQuake. PolyCount Forums. (April 2008). Mod Faade challenge. Retrieved from
http://www.polycount.com/forum/showthread.php?t=54178&page=2
Epic Games, Inc. (2011). Using workflow techniques and modularity. Retrieved from
http://udn.epicgames.com/Two/WorkflowAndModularity.html
Greenberg, D. (May 1974) Computer graphics in architecture. Scientific American vol 230, no. 5.
Havlik, T. (Producer). (March 2011) Fixing lighting seams in UDK [video tutorial]. Retrieved from https://
www.youtube.com/watch?v=ntx10JMl9f4
Johnny; Bradd. (December 2009) Retrieved from http://www.digital-mercs.com/2009/12/
Jones, S. (2011) Investigation into modular design within computer games. Retrieved from http://www.
scottjonescg.co.uk/FYPResearch/Investigation_into_modular_design_within_computer_games_v1.0.pdf
Al-Kodmany, K. (2002). Visualization tools and methods in community planning: From Freehand
Sketches to Virtual Reality. Journal of Planning Literature 2002; 17; 189.
Klafke, T. Creating modular environments in UDK. Retrieved from
http://www.thiagoklafke.com/modularenvironments.html
Klevestav, P. PhilipK Tutorials. (2009). Retrieved from http://www.philipk.net/tutorials.html
Mackie et al, (2002). Desktop and immersive tools for residential home design. Retrieved from http://research.
cs.vt.edu/3di/CurrentResearch/homedesign/HOMEDESIGN.pdf. on April 10, 2007.
Mader, P. (December 2005). Gamasutra. Creating modular game art for fast level design. Retrieved from http://
www.gamasutra.com/view/feature/2475/creating_modular_game_art_for_fast_.php

Palm Harbor Homes (2011) Build with modular construction. Retrieved from http://palmharborbuilders.files.
wordpress.com
Re/Max (2011). Condominiums and townhouses. Retrieved from http://www.nereteam.com/images/
condominiums600.jpg
Seltz, A. (2011). The Independent Film Blog. Film and video frame rates. Retrieved from http://www.
theindiefilmblog.com/news/film-and-video-frame-rates.html

S-ar putea să vă placă și