The Investigation on Using Unity3D Game Engine in Urban Design Study
3.1 Game Engine for Visualization Tool
The use of game engine has been developed under various natures of projects. Commonly, the game world is built by importing its entire object from particular CAD/3D applications. In this case, a particular game engine that usually comes with the game itself becomes a platform on which modification or mod process is taking place. Modifying game level for architecture visualization purpose is stimulating because it opens up the game engine for real time data rendering and manipulation. Fairuz et.al has studied that in the area of visualization, game engines could quickly develop models and deploy it with texture and lighting effect in game engine-based application with no further demand on high-end computer specification.
In this study, we examined findings of three previous researches that made attempt to use three different game engines as visualization tool. Despite a lot of technical specification on each engine, we focused on the findings of primary function such as 3D geometry data input/output as well as lighting and texture mapping. This consideration was taken mainly because those basic functions are the most significant functions that take advantage from the 3D rendering and animation software.
The summary of this study is depicted by Table 1.
Table 1 Summary of game engines for visualization.
Engine Name |
Release Year |
Geometries I/O |
Lighting |
Texture Mapping |
Unreal Engine 2 |
2003 |
Built-in editor, any CAD data must be converted |
Dynamic lighting and shadow, HDR (High Dynamic Range) Rendering |
3D vegetation generator, shader management |
Source-Half-Life 2 |
2004 |
No built-in editor, any CAD data must be converted |
Dynamic lighting and shadow, HDR (High Dynamic Range) Rendering |
Optimization for large open area |
Gamebryo-Oblivion |
2006 |
Built-in editor with libraries, any CAD data must be converted |
Dynamic lighting and shadow |
3D vegetation generator |
CryEngine 2 |
2007 |
Natively read most of CAD file format |
Dynamic lighting and shadow, Time of day lighting |
Heightmap and polygon reduction |
Although all of these engines exhibit the capability of producing dynamic visualization in less of production time than 3D rendering and animation software, the main limitation of using these game engines as visualization tool is laid on its flexibility. 3D geometries data must be converted when in use in game engine. Therefore, there is no feedback or interactive mechanism with 3D/CAD software, which architects used to produce design objects.
3.2 Game Engine for Interactivity Tool
In addition to visualization, virtual environment also has the potential to engage users with interactive and communication systems. The virtual environment will only be useful if it supports physically realistic behavior . The types of realistic behaviors that are important depend on the specific application. In architecture and urban design, usually we demand realistic representation of spatial environment with naturalistic effect as well as dynamic elements that inhabit it. Moreover, for interactive tool that could enhance spatial awareness and comprehension to further make better design decision, it is important to consider how user can interact with game objects then how we can examine on what interaction that has occurred.
We examined findings from two previous projects that use built-in interactivity tool in game engines . Since interactivity is the element that is not provided by any 3D rendering and animation software, it is important to consider the ease of use of this function to enhance the quality of architecture visualization. Table 2 provides the summary of previous findings.
Table 2 Summary of game engines for interaction.
Engine Name |
Interactivity function |
Half-Life 2 |
Built-in interaction editor, limited only for non-playable objects. Basic navigation provided. |
Renderware |
C script to build interaction with objects and users |
Both findings resulted in the ease of use or learning curve. Scripting mechanism is the main issue to build interactivity using game engines. For the use in architectural or even urban design study, interaction system is based on the assumption that we can observe, examine as well as explore in three dimensions in real-time whatever objects we want to interact with. This kind of demand may require script programming in order to get high flexibility and freedom to achieve those goals.
4 Constructing Virtual Urban Using Unity3D Game Engine
In our research, we use Unity3D game engine as the fourth generation of game engine that combines visual simulation capabilities with interactive functions and ease of use in the context of geometry data input and output. We pointed out that architectural visualization done by computer has disadvantages as follows:
a. Functional deficiency: it tends to separate the process of designing and the process of visualizing. Even further, graphical projections nowadays have no benefit with the design process. The visualizations are the final products and have no functions as design tool as it was.
b. Resources deficiency: there is no limit in pursuing realism of computer rendering or animation as long as there are
剩余内容已隐藏,支付完成后下载完整资料
3.1可视化工具的游戏引擎
游戏引擎的使用已经在各种各样的项目开发。通常,游戏世界是通过从特定CAD / 3D应用程序导入其整个对象构建的。在这种情况下,通常伴随游戏本身的特定游戏引擎成为进行修改或模拟处理的平台。修改游戏级别的架构可视化目的是刺激因为它打开游戏引擎的实时数据呈现和操纵。Fairuz et.al研究说,在可视化领域,游戏引擎可以快速开发模型,并在基于游戏引擎的应用中部署其纹理和照明效果,而不需要高端计算机规范。
在这项研究中,我们检查了以前三次研究的结果,试图使用三种不同的游戏引擎作为可视化工具。 尽管每个引擎都有很多技术规范,但我们专注于主要功能的发现,如3D几何数据输入/输出以及照明和纹理映射。 这个考虑主要是因为这些基本功能是从3D渲染和动画软件中获取的最重要的功能。
本研究的总结如表1所示。
表1 可视化游戏引擎总结
引擎名称 |
发行年份 |
几何I / O |
灯光 |
纹理映射 |
虚幻引擎2 |
2003 |
内置编辑器,任何CAD数据都必须进行转换 |
动态照明和阴影,HDR(高动态范围)渲染 |
3D植被生成器,着色器管理 |
源半条命2 |
2004 |
没有内置的编辑器,任何CAD数据都必须被转换 |
动态照明和阴影,HDR(高动态范围)渲染 |
大开阔区优化 |
遗忘引擎 |
2006 |
具有库的内置编辑器,必须转换任何CAD数据 |
动态照明和阴影 |
3D植被发生器 |
尖叫引擎 2 |
2007 |
本机读取大部分的CAD文件格式 |
动态照明和阴影,时光照明 |
高度图和多边形缩小 |
虽然所有这些引擎都表现出在3D渲染和动画软件的生产时间内生产动态可视化的能力,但使用这些游戏引擎作为可视化工具的主要局限性在于其灵活性。在使用游戏引擎时,3D几何数据必须进行转换。因此,没有3D / CAD软件的反馈或交互机制,建筑师用于生成设计对象。
3.2互动工具的游戏引擎
除可视化外,虚拟环境还具有与用户交互和通信系统的潜力。如果虚拟环境支持物理上现实的行为,那么虚拟环境将是有用的。重要的现实行为的类型取决于具体的应用。在建筑和城市设计中,通常我们要求具有自然主义效应的空间环境的现实表征以及居住在其中的动态元素。此外,对于可以增强空间意识和理解以进一步做出更好的设计决策的交互式工具,重要的是考虑用户如何与游戏对象交互,然后如何检查发生了什么交互。
我们检查了以前在游戏引擎中使用内置交互工具的项目的发现。由于交互是不是由任何3D渲染和动画软件提供的元素,因此考虑使用该功能以提高架构可视化的质量是非常重要的。表2提供了以前发现的总结。
表2 互动游戏引擎总结
引擎名称 |
互动功能 |
半条命2 |
内置的交互编辑器,仅限于不可播放的对象。 提供基本导航。 |
渲染软件 |
C 脚本来构建与对象和用户的交互 |
这两个发现都导致使用方便或学习曲线。 脚本机制是使用游戏引擎构建交互性的主要问题。 对于在建筑甚至城市设计研究中的使用,交互系统是基于我们可以观察,检查和三维实时探索我们想要进行交互的任何对象的假设。 这种需求可能需要脚本编程才能获得高灵活性和自由来实现这些目标。
4构建使用Unity3D游戏引擎的虚拟城市
在我们的研究中,我们使用Unity3D游戏引擎作为第四代游戏引擎,将视觉模拟功能与交互式功能和易于使用的几何数据输入和输出相结合。 我们指出,由计算机完成的架构可视化具有以下缺点:
- 功能缺陷:它倾向于分离设计过程和可视化过程。 更进一步的是,现在的图形预测在设计过程中没有任何好处。 可视化是最终产品,没有像设计工具那样的功能。
- 资源缺乏:只要有足够的资源,追求电脑渲染或动画的现实主义就没有限制。 这种依赖趋势是无效的和低效的。 设计解决方案的重点可能被视觉设施所忽视。
- 技术缺陷:CAD可能已经被3D应用中的其他技术所遗留。 游戏引擎是未开发的技术,可为设计过程提供更有效和更有效的辅助。
通过使用Unity3D游戏引擎构建虚拟城市,我们探索了其功能以及其重点在于设计过程的限制。
案例研究是东京八重县区中心区发达城市。这个面积约22万平方米,计划成为新的开发区。八重洲地区主要由办公楼和商业中层建筑组成,其中很多都是老建筑物。
从GIS应用程序(ArcGIS)获取的3D几何数据由私人公司以* .obj格式准备,以在Blender应用程序中进行解释。
在城市规模上,多边形和纹理映射系统的复杂度成为主要考虑因素。GIS应用程序提供3D多边形导出器,但不包括任何纹理映射系统。在案例研究中,只有建筑物在ArcGIS中具有3D几何数据。每个建筑立面的正交照片都是从地图服务公司获得的。本研究采用多重还原技术,并利用Blender3D软件中的非包裹技术进行纹理映射,以解决多边形复杂性和映射系统问题。图2显示了整体3D构造的详细过程。
本研究构建虚拟环境的方法可以分为以下几个阶段:
- 游戏世界舞台:包括3D数据采集和开发,其他静态游戏对象作为城市家具如植被,路灯等,以及动画游戏对象作为城市元素,如车辆,人形字符。
- 游戏场景开发阶段,包括导航系统和互动系统。
4.1数据采集
游戏世界建设从3D数据采集开始。为此,本研究使用东京数字地图公司提供的ARC GIS数据。通过使用ArcGIS提供的几种文件格式输出器来采用自动3D数据采集。
从表中可以得出结论,最小文件大小是通过使用.obj文件格式来实现的。由于3D数据主要由代表建筑物的简单多边形组成,下一步是检查这些多边形是否通过使用最小顶点构建。
图1显示了Blender中打开的3D数据的三个特征:对象数,顶点数和内存使用量。结果表明,虽然3D数据来自ArcGIS中的相同对象,但是对象数量却有所不同。相应的顶点数和内存使用率。这个问题是由于文件格式规范。
文件类型比较
图1 文件类型比较
通过在Blender中使用半自动方法(称为Poly-Reduction1)来完成每个3D多边形到达最小顶点使用情况的检查。基本上,它会计算每个选定对象的顶点,减少多边形面的数量,特别是mesh,如果有任何顶点重复,则扫描。它是半自动的,因为它需要做修补编辑。
应用Poly-Reduction方法并进行一些修正编辑之后,很明显,顶点的数量会减少。它也会影响文件大小和内存使用情况。图2显示了多重减少和多重减少之间的场景之间的差异。
无多边形减少 多边形减少
- 对象编号:1018 -对象编号:318
- 内存使用量:54.14 MB - 内存用法:51.83 MB
图2多边形还原和数据比较。
4.2可视化技术
为了实现大多数3D渲染应用程序的图形性能,我们探索了Unity3D能力来处理基本功能,如大规模纹理映射和动态照明。 考虑的主要因素是图形性能与实时模拟之间的平衡。
对于这样的条件,纹理映射有两个限制,以便在图形和游戏中获得更大的性能。
- 纹理尺寸必须尽可能小,视觉上恰当。
- 纹理必须与烘烤照明信息分层,以在游戏过程中获得照明效果(环境遮挡)。
因此,为了在Unity3D中进一步发展,我们主要使用512 x 512像素分辨率的2D纹理。
4.3互动技术
基于游戏的环境中的虚拟现实包括游戏世界(游戏环境和所有游戏对象)和游戏设计(游戏场景,游戏场景,游戏场景,如何玩游戏以及游戏世界如何与用户或与其他游戏交互)对象。
我们调查Unity3D的第一个意图是探索其作为设计研究工具的能力,它与任何其他可用的3D应用程序或任何3D查看器和演示文稿创作应用程序的不同之处,以及进展是什么(参见表3)。
因此,在扩大调查之前,我们从架构设计的角度出发。因此,我们将游戏引擎视为引擎来开发我们的工具,因此,将设计研究的各个方面纳入本应用程序,同时研究适应此类要求的方法和技术是重要的。
表3游戏设计和要求
游戏设计 |
基于Unity3D的应用程序 |
其他应用 |
创造3D环境,视觉质量与游戏性能平衡 |
真实世界表现的最大视觉质量,即:光和阴影,Alpha通道,纹理贴图,时间框架独立动画 |
较少的视觉品质特征(VRML,Flash) |
创建导航系统,使用户能够以最大的自由度进行探索 |
允许在虚拟环境中探索和导航的最大自由度 |
预编程动画序列(3D动画),灵活的移动自由(QuickTime VR)视图方向,高度的导航系统(宾利3D PDF) |
创建导航系统,允许用户以各种方式检查感兴趣的特定对象 |
提高空间理解的方法 |
视图方向,导航系统高(Bentley-3D PDF) |
创建方法来合并各种类型的信息 |
丰富的内容和其他数据界限技术 |
需要脚本语言和基于服务器的交互(基于Flash) |
创建方法来适应灵活的3D数据交换 |
3D数据可与外部工具互换的方法 |
不太灵活地执行数据同步(基于Flash和其他动画包) |
创建一种翻译常规分析研究的方法 |
方法进行一些基本的视觉分析 |
灵活性较差 |
灵活扩展游戏设计 |
面向对象编程 |
4.3.1导航
导航系统是本应用中要考虑的主要问题。 关于3D世界的工具,开发导航系统的主要考虑因素有:
- 尽可能地以最大的直觉级别,易于学习,易于记忆和易于使用。
- 它必须具有丰富的最小键输入功能
然后将导航系统的设计细化为以下标准:
- 有两个主要的导航系统:人眼视角(HEV)(第一人称相机)和鸟瞰图(BEV)。 两者均由图标上的鼠标笔触触发。
- 在每种导航方法中,不使用基于图标的导航面板进行平移,缩放,轨道等(参见图3),每种方法都具有使用鼠标键盘笔划组合的上下文按钮。
在BEV:
- 放大:使用鼠标滚轮
- 轨道:使用鼠标移动
- 平移:使用鼠标左键单击
- 并拖动
图3 平移,缩放和轨道导航使用鼠标
- 在FPS中,我们使用FPS游戏的标准视图导航(见图4):
- 看看和转动:使用鼠标移动
- 向前走:使用键“w”
- 向后走:使用键“s”
- 向左滑动:使用键“a”
- 向右滑动:使用键“d”
图4使用鼠标和键盘组合转动/查看并朝向方向移动
所有这些导航系统都使用Unity3D JavaScript编程,因为它不提供任何内置的导航系统,如以前的基于Web的应用程序所提供的。
4.3.2互动
交互系统背后的主要考虑因素是:
- 对象操纵:选择,隐藏,显示,隔离,交换
- 信息检索:文本,图像,视频
对象操作方法是允许用户选择任何特定对象并执行对这些对象有影响的任务的功能。 它主要关注交互,使得用户将焦点放在这个特定对象上。 操作方法提供隐藏/显示所选对象或隐藏/显示其他对象,并将特定对象与其
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[138611],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。