方 瑾 謝雄耀 董道國 徐金峰 沈馳遠 姜 毅
1. 同濟大學(xué)土木工程學(xué)院地下建筑與工程系 上海 200092;2. 華建數(shù)創(chuàng)(上海)科技有限公司 上海 200000;3. 上海黃浦江大橋建設(shè)有限公司 上海 200090
黨的十九大報告明確提出了數(shù)字中國、智慧社會概念,作為數(shù)字中國、智慧社會戰(zhàn)略落地實施的重要載體,智慧建筑行業(yè)正步入迅速發(fā)展的新時代。隨著技術(shù)的不斷進步和市場領(lǐng)域的延伸,對智慧建筑行業(yè)創(chuàng)新、融合、轉(zhuǎn)型發(fā)展的需求日趨強烈。
從行業(yè)政策上來看,我國智能建筑已經(jīng)歷二十多年發(fā)展歷程,智慧建筑的概念和實踐體系處于初步形成階段,智慧建筑市場未來前景巨大。國內(nèi)外針對智能建筑、智慧建筑的定義和做法不盡相同。針對我國智慧建筑行業(yè)的發(fā)展歷程進行簡單梳理,其中《智能建筑設(shè)計標準》是智慧建筑發(fā)展的里程碑,該標準分別在2000年、2006年、2015年發(fā)布最新版本[1-3]。
建筑信息模型(Building Information Modeling,BIM)技術(shù)作為工程建設(shè)行業(yè)數(shù)字化轉(zhuǎn)型的重要工具,全面整合了工程項目全生命周期的數(shù)據(jù),主要包括幾何信息和非幾何信息,其中幾何信息主要指三維模型,非幾何信息主要指模型構(gòu)件的屬性,與構(gòu)件關(guān)聯(lián)的工程進度信息、造價信息、管理信息等。其優(yōu)點相對于傳統(tǒng)使用二維圖紙進行工程建設(shè)而言,主要提高了模型的可視化效果,促進了專業(yè)間的溝通協(xié)作,形成一個公共數(shù)據(jù)環(huán)境,增加了信息透明度和可追溯性。
但是,其不足之處在于BIM軟件相對較“重”,對硬件要求高,模型渲染效果差,尤其是針對不規(guī)則的建筑幾何形狀,如弧形、不規(guī)則的零件結(jié)構(gòu)等。而游戲引擎的渲染效果逼真,但是建模功能又較差,如Unreal Engine 4(簡稱UE4)是由Epic Games推出的一款游戲開發(fā)引擎[4],擁有較高的集成度和行業(yè)領(lǐng)先的圖形技術(shù)。
綜上,采用虛幻引擎UE4結(jié)合BIM數(shù)據(jù)來實現(xiàn)建筑模型自動建模并渲染的方法,是值得研究的。
基于UE4及BIM數(shù)據(jù)的自動建模模型構(gòu)建主要包括4個步驟,如圖1所示。
圖1 模型構(gòu)建流程示意
第一步,在UE4中制作項目模板。
第二步,通過BIM引擎解析BIM模型,首先需要對建筑模型中常用的各種構(gòu)件進行參數(shù)化,包括常用材質(zhì)庫的參數(shù)化,納入到UE4引擎中,便可在UE4引擎中對參數(shù)化構(gòu)件庫中的各種構(gòu)件參數(shù)進行修改,同時保持了與BIM模型中材質(zhì)庫的一致性。
第三步,在模型自動生成模塊中構(gòu)建與BIM模型相同的模型,通過調(diào)用參數(shù)化構(gòu)件庫中與各個建筑構(gòu)件一一對應(yīng)的若干構(gòu)件,并且將對應(yīng)參數(shù)設(shè)定為與BIM模型中的各個建筑構(gòu)件的幾何與非幾何信息一致。其中構(gòu)件的參數(shù)主要包括坐標信息、幾何尺寸、空間位置、幾何形狀、地理位置信息、構(gòu)件材質(zhì)信息、構(gòu)件間的關(guān)聯(lián)關(guān)系等。構(gòu)件間的關(guān)聯(lián)關(guān)系包括包含、嵌套、連接、剪切。
第四步,運行自動渲染模塊,對模型自動生成模塊構(gòu)建的模型進行渲染。包括讀取BIM模型中的各個建筑構(gòu)件的構(gòu)件材質(zhì)信息;在參數(shù)化構(gòu)件庫中檢索與BIM模型的各個建筑構(gòu)件對應(yīng)的若干構(gòu)件,再將構(gòu)件材質(zhì)信息附著到若干構(gòu)件上;最后,讀取BIM模型中的各個建筑構(gòu)件的幾何形狀、幾何尺寸、地理位置信息、空間位置時,對需要局部光照或全局光照的BIM模型的建筑構(gòu)件對應(yīng)的構(gòu)件,進行光照渲染。
第一步環(huán)節(jié),在UE4中制作一項目模板,參數(shù)化構(gòu)件庫中具有建筑模型常用的各種構(gòu)件,如柱、梁、板、墻、門、窗、幕墻等,UE4可以定義各個構(gòu)件,并對參數(shù)化構(gòu)件庫中的各種構(gòu)件的參數(shù)通過接入外部數(shù)據(jù)進行修改。例如,UE4中的基本幾何體筆刷及靜態(tài)幾何體網(wǎng)格,將一個或多個幾何體組合轉(zhuǎn)化為一個藍圖腳本,在藍圖腳本中添加變量以控制網(wǎng)格的變換,包括位置坐標、旋轉(zhuǎn)角度、縮放比例、移動性和材質(zhì)信息等,這些變量與BIM模型的構(gòu)件屬性是一一對應(yīng)的,當將BIM模型的構(gòu)件屬性作為變量值輸入該藍圖腳本后,將得到一個幾何形狀與BIM模型的構(gòu)件保持一致的幾何體,其中一個藍圖腳本對應(yīng)一種BIM模型的構(gòu)件。同時,參數(shù)化構(gòu)件庫還設(shè)有常用材質(zhì)庫,常用材質(zhì)庫與BIM模型中的材質(zhì)庫保持一致(圖2)。
圖2 藍圖腳本編輯界面
模型自動生成模塊用于調(diào)用外部接口以獲取BIM模型數(shù)據(jù)和實例化BIM構(gòu)件庫中的構(gòu)件,將所有藍圖腳本保存至參數(shù)化構(gòu)件庫中,并將常用建筑材質(zhì)保存至項目模板。
自動渲染模塊用于對模型進行自動貼圖和光照渲染。
項目模板還具有坐標轉(zhuǎn)換模塊,由于BIM模型與UE4的坐標系不一致,通過坐標轉(zhuǎn)換模塊進行坐標轉(zhuǎn)換。阮志敏等[5]研究了UE4空間尺度和BIM模型中坐標系統(tǒng)的對應(yīng)關(guān)系,最終成功搭建了三維場景模型。本研究采用的坐標轉(zhuǎn)換原理是在UE4中尋找BIM模型的原點,然后將其創(chuàng)建為一個參考原點向量,再把BIM數(shù)據(jù)的坐標向量加上參考原點的坐標向量,生成BIM模型數(shù)據(jù)在UE4中對應(yīng)的世界坐標向量。統(tǒng)一單位后的坐標轉(zhuǎn)換代碼如圖3所示。
圖3 坐標轉(zhuǎn)換源代碼
在第二步中,BIM引擎解析BIM模型,將BIM模型的各個建筑構(gòu)件的幾何與非幾何信息存儲至數(shù)據(jù)庫中。其中,若干構(gòu)件的參數(shù)包含幾何形狀、幾何尺寸、坐標信息、構(gòu)件間的關(guān)聯(lián)關(guān)系、構(gòu)件材質(zhì)信息、地理位置信息、空間位置,及上述的旋轉(zhuǎn)角度、縮放比例、移動性等。其中,構(gòu)件間的關(guān)聯(lián)關(guān)系包含但不限于包含、嵌套、連接、剪切等。
此外,使用基于Revit二次開發(fā)的BIM引擎ArcEngine對BIM模型解析,解析后可將所有構(gòu)件的幾何與非幾何信息存儲到MySQL和Dgraph數(shù)據(jù)庫中,編寫API使外部程序可以根據(jù)項目名稱調(diào)用BIM數(shù)據(jù)。
在第三步中,UE4讀取數(shù)據(jù)庫中的各個建筑構(gòu)件的幾何與非幾何信息,模型自動生成模塊構(gòu)建與BIM模型相同的模型。模型自動生成模塊通過接口調(diào)用參數(shù)化構(gòu)件庫中與各個建筑構(gòu)件一一對應(yīng)的若干構(gòu)件。藍圖腳本通過上述API接口調(diào)用BIM數(shù)據(jù),并在參數(shù)化構(gòu)件庫中通過構(gòu)件名稱匹配對應(yīng)的構(gòu)件。
將若干構(gòu)件的參數(shù)設(shè)定為與BIM模型中的各個建筑構(gòu)件的幾何與非幾何信息一致。將BIM構(gòu)件屬性值自動填充進藍圖腳本,生成模型,若BIM模型的坐標系與UE4的坐標系不統(tǒng)一,則通過坐標轉(zhuǎn)換模塊轉(zhuǎn)換坐標,坐標轉(zhuǎn)換后在相應(yīng)場景中實例化構(gòu)件,模型生成后,根據(jù)BIM數(shù)據(jù)中構(gòu)件之間的嵌套、剪切、連接等關(guān)系,在UE4中重建其關(guān)聯(lián)性,使其與BIM模型中的建筑構(gòu)件保持一致。
在第四步中,運行自動渲染模塊,對模型自動生成模塊構(gòu)建的模型進行渲染。渲染過程中,UE4會自動讀取BIM模型中的各個建筑構(gòu)件的構(gòu)件材質(zhì)信息。同時在參數(shù)化構(gòu)件庫中UE4自動檢索與BIM模型的各個建筑構(gòu)件對應(yīng)的若干構(gòu)件,將構(gòu)件材質(zhì)信息附著到若干構(gòu)件上。然后,UE4自動讀取BIM模型的各個建筑構(gòu)件的幾何形狀、幾何尺寸、空間位置、地理位置信息,對需要局部光照(如窗戶、幕墻等透光區(qū)域構(gòu)件),或全局光照的BIM模型建筑對應(yīng)的構(gòu)件,進行光照渲染。如自動渲染模塊會根據(jù)API從BIM模型獲取的構(gòu)件材質(zhì)信息,自動對使用相同材質(zhì)的構(gòu)件表面分組后統(tǒng)一附著材質(zhì),對窗戶、幕墻等透光區(qū)域,根據(jù)其空間位置和大小自動生成lightmass門戶,提高光照質(zhì)量,進行光照渲染。此外,自動渲染模塊還會根據(jù)地理位置信息和天氣情況預(yù)制的光照場景,預(yù)制多個全局光照場景,自動進行渲染。
本研究以某銀行總部辦公大廈的三維模型重構(gòu)為示例,應(yīng)用基于UE4和BIM數(shù)據(jù)的建筑模型自動建模方法。首先導(dǎo)入原大廈BIM三維模型,然后在UE4中建立項目模板,利用BIM引擎解析,得到大廈內(nèi)部所有構(gòu)件的幾何和非幾何信息,儲存在MySQL和Dgraph數(shù)據(jù)庫中。再編寫API使外部程序調(diào)用BIM數(shù)據(jù),同時通過坐標轉(zhuǎn)換模塊進行轉(zhuǎn)換坐標,根據(jù)BIM數(shù)據(jù)中構(gòu)件之間的嵌套、剪切、連接等關(guān)系在UE4中重建其關(guān)聯(lián)性,使其與BIM模型中的建筑構(gòu)件保持一致。最后,運行自動渲染,結(jié)果如圖4所示。
圖4 某銀行總部辦公大廈三維模型重構(gòu)建模
為解決BIM軟件運行量大,對硬件要求高,效率低,模型渲染效果差,尤其是針對不規(guī)則的建筑幾何形狀,如弧形、不規(guī)則的零件結(jié)構(gòu)等問題,本研究采用虛幻引擎UE4結(jié)合BIM數(shù)據(jù)的方法來實現(xiàn)建筑模型自動建模并渲染,充分利用了BIM模型完整的幾何及非幾何信息和UE4游戲引擎強勁的渲染效果,使得建模后的模型展示效果更為逼真。這種創(chuàng)新建模方式使得用戶的交互體驗感更強,驗證了建筑設(shè)計的精確度和設(shè)計效果。同時,本研究方法能夠?qū)δP托畔⒌闹亟ê弯秩具M行自動化處理,整合建筑時空數(shù)據(jù),打通信息孤島,實現(xiàn)場景聯(lián)動,為智慧建筑行業(yè)數(shù)據(jù)驅(qū)動的發(fā)展提供了借鑒。