何鵬飛,賴春明
(湖南化工職業技術學院,湖南株洲 412011)
基于CS-soure游戲引擎虛擬化工廠仿真系統的開發
何鵬飛1,賴春明1
(湖南化工職業技術學院,湖南株洲 412011)
利用3dsmax進行化工廠設備的建模,利用CS-soure游戲引擎來展現化工設備的實景效果。具有很強的操作性及良好的現實場景效果。
虛擬現實;游戲引擎;CS-soure;化工廠;化工設備
化工生產的多樣性和復雜性賦予了化工廠的特殊性。其牽涉設備多,安全要求高。
企業培訓及學校教學實習等,存在較多的限制。虛擬化工廠可以再現化工廠的各種場景,各種設備和機器由于現實種種因素制約,不能夠很好的展現其結構和形態,通過計算機虛擬現實技術可以有效和方便的實現。也可為企業演練及學校教學提供場景練習。
虛擬現實技術是利用計算機模擬產生一個三維空間,提供使用者視覺、聽覺、觸覺等感官的模擬,讓使用者如同身歷其境一般,可以及時、沒有限制地觀察三度空間內的事物。現今虛擬技術日亦成熟。各種虛擬開發工具應有盡有,而大多數的開發工具不是太過專業就是太過昂貴。而現今3D網絡游戲日亦發展,其場景生靈活現,繪聲繪色。本身就是一個虛擬的世界。而這一切得得意于3D游戲引擎。游戲引擎因其良好的圖像效果使游戲更加的逼真。
計算機的發展催化了3D游戲的發展,3D游戲開發的難點再于三維技術及其中聲、光、影、粒子系統、物理碰撞的實現等等。許多游戲開發都需要這方面的技術,于是專業的三維技術及相關用戶的交互軟件塊集出現,它可以用在很多的游戲當中,這個包含諸多三維技術及交互的軟件塊集就稱之為游戲引擎,就像一臺汽車的發動機可以裝配在不同的汽當中。不同的游戲公司利用相同的游戲引擎可以做出不同的游戲。著名游戲CS-soure和CS-GO就是一個例子。其中使用的引擎就是由美國VAVLE公司開發的CS-source引擎(簡稱source引擎)。
CS-soure本是一款網絡游戲,其中應用的游戲引擎就是Source引擎,Source引擎是很復雜的3D引擎,擁有多套渲染器。Source引擎包含了很多不同的模組,開發者可以在引擎的源包中取出以及添加進其他的元素。
Source引擎有優秀的光影效果。其渲染器是基于Microsoft Direct X 9.0的API,并借助Half-Life SL高階編程語言編寫引擎,Valve公司采用DirectX架構,對Shader2.0b甚至是Shader3.0 Model的支持。Source引擎對用戶開放,其集成的HAMMER編輯器可以方便的自己創造自己想的游戲。
source引擎因其起靈活性、良好的交互、完整的模塊集成給予開發者更多的空間。且source引擎面向用用戶授權。虛擬化工廠仿真系統引入source引擎,使開發更加簡單。更能提供良好的網絡效果。而生成的bsp文件,具有更好的移植性。建立化工廠仿真實景,設計流程圖如圖1所示。

圖1 設計流程圖
虛擬仿真的各種實物是利用虛擬模型來實現的。Source引擎特有的貼圖方式輻射度法線貼圖,可有效的展示實景的效果,又使系統在運行變的輕盈。Source引擎本身是可以做出一些模型的,但是對于復雜的模型,卻無能為力,這需要首先利用一些建模軟件進行建模。筆者所采用的是3dsmax軟件。3dsmax軟件建模靈活多變,正滿足了工廠的模型的多樣化和復雜性這一特點。3dsmax建立的模型更好的導入到Source引擎中,利用3dsmax對化工廠實景進行建模。3dsmax建模在移植到Source引擎中時,受到面片的限制,單個物體最好不要超過6 000個面。所以在用3dsmax在進行建模的時候,不能一味的追求細膩的效果,而過多增加設備的面片。所以在建模的時候盡可能精減面片,最好是用edit poly即多邊形建模方式去建。如下圖2利用3dsmax軟件建立的一個泵體模型。

圖2 edit poly泵體模型

圖3 泵體的面片統計數據
從圖3上可以看出此泵體面片為2 985片,而如果用其他建模方法,可能需要10萬甚至幾十萬的面片,當然面片越少越好。越少的面片在引擎中的表現,其處理速度也越快。尤其當模型較多的時候,更加的占用電腦的資源。
類似的可以進行構建更多的設備模型。模型不需要很精細,重要與之的配合的是貼圖,良好的貼圖可以很好的反應實物,我們在引擎中不是用過于精細的模型去表現一個物體的細節,而是通過良好的貼圖去表現。模型的優質貼圖,最好在3dsmax中就做好,貼圖最好采用UVW貼圖的方式,把貼圖整合成一張圖片。比如說一個人物模型,其貼圖就是UVW貼圖方式。
類似的方法可建立的化工廠其中的一個機泵組的模型如圖4中所示。

圖4 機泵組的模型
4.1 Source引擎
Source引擎本身自帶了hammer編輯器,用來編譯自己的地圖文件。Source引擎所驅動的游戲就是由這個功能強大的編輯里完成的。我們利用Source引擎也是用hammer編輯器。把用3dsmax做好的模型文件,導入到這個hammer編輯器,然后編譯成*.bsp文件,這樣Source引擎就能夠讀取了。而我們做的模型就會展現在計算機中。展現出豐富的實景效果。

圖5 hammer編輯器
4.2 3dsmax模型的導入
用3dsmax做好的模型,不能直接導入到,hammer編輯器中,需要進行格式的轉換。
須將MAX文件輸出成SMD文件,然后再把SMD文件利用相關軟件合成為*.mdl文件,才可以應用到hammer編輯器中。本文作者是應用的studiocompiler軟件合成的。由此變成Source引擎中的模型。注意模型的貼圖,格式為需要為tga格式,英文名稱。用rgb 8位模式進行編輯,而分辨率須是2的倍數,比如400X560,保存的時候選擇24位。如圖6所示。

圖6 3dsmax模型的導入流程
Hammer編輯中對Mdl格式文件的引用如圖所示。由于泵的模型是不可動模型,可采用靜物模式(prop_static)。若要產生動態效果可選擇prop_dynamic,不過所應用的Mdl格式文件應包含動態效果。這在場景的模擬中非常有用。如果要實現物理碰撞的效果,還需要對模型添加物理的碰撞,此時的Hammer編輯中需要用到prop_physics這個命令。總之想得到什么樣的物理效果,Hammer編輯器都可以實現,但是需要你的Mdl格式文件已經有這種效果在里面。
化工生產設備的模型在系統當在是一個空虛的模型,需要建立物理系統,比如材料、外觀、剛性等Source引擎有良好的剛體動力學以及約束、關節鏈,剛性物體不能在系統中被打碎、彎曲或者其他形式的扭曲。關節節點就是常說的活動連接,這種連接允許你將兩個物體有機地連接在一齊。

圖7 靜態命令的使用
4.3 文件的編譯
做好的場景是在hammer編輯器中,并沒有產生完全的實景的效果,并且各種物體都是可編輯的,這需要我們進行編譯。
編譯完畢的場景,在Source引擎中有優良的顯示效果。其中的光影都非常的真實。如下圖所示。

圖8 hammer編輯器的泵的效果

圖9 hammer編輯器的編譯

圖10 編譯后的場景
Source引擎提供了多人聯機使用主從式(客戶端-服務器)網絡構架。服務器通常指運行游戲的專用主機,客戶端指連接到服務器的玩家電腦。客戶端與服務器之前通過發送數據包(又稱封包)來通信(頻率很高,通常每秒20-30個封包)。客戶端從服務器接收到當前“世界”的狀態后,據這些數據來創建視頻和音頻輸出。客戶端同樣也從輸入設備(鍵盤、鼠標、麥克風等)采集數據并發回服務器進行進一步處理。客戶端僅僅與服務器進行著通信,而不與其他客戶端通信(即非P2P)。與單機游戲相比,多人聯機游戲需要解決各種各樣的通信問題。
此項功能可以使企業在應急演練中不是一個人,而是一個團隊進行合作進行響應。多人在進行聯機的時候進行相關對話。
用3dsmax制作模型,利用Source引擎編譯為*.bsp文件,具有良好的移植性,只需要對*.bsp文件進行操作就可行了,就是所謂的地圖文件。工廠的不同場景可以整合在一張地圖文件里,也可以生成多個地圖文件。
基于3D和CS-soure的漫游系統開發流程快,并且仿真效果也十分好,具有更多交互形式等優點。利用,3D+CS-soure可以實現工廠的仿真效果,在企業的演練及學校的教學中都可以很好的應用。
[1]李佳,王勇,王瑛.基于VRML的協同消防應急演練平臺研究[J].計算機測量與控制,2013,(12).
[2]范希輝,李玉閣,陳治平.基于VRML的三維虛擬戰場環境生成[J].四川兵工學報,2013,(10).
[3]紀金豹,李炎鋒,李振寶,等.結構虛擬實驗教學系統的開發與應用[J].實驗室研究與探索,2013,(09).
[4]郭美榮,侴愛輝,夏德宏,等.可視化教學法在實驗教學中的應用[J].實驗室研究與探索,2012,(11).
[5]王召鵬.數字化制造實訓車間的探索與實踐[J].實驗室研究與探索,2012,(03).
[6]謝艷招,趙林,蔡聰育.建設教學科研兩用型實驗室[J].實驗室研究與探索,2012,(02).
[7]秦鋼年,黃大明,盧福寧,等.構建適應創新型人才培養的實驗教學體系[J].實驗室研究與探索,2012,(01).
[8]席平,楊洋,王春潔.機械類課程實驗教學改革與實踐[J].實驗技術與管理,2010,(07).
[9]程文明,張則強,吳曉,等.《起重機金屬結構》國家精品課程的建設與實踐[J].起重運輸機械,2010,(04).
[10]廖慶敏,秦鋼年.建立開放實驗室提高學生的實踐能力和創新能力[J].實驗室研究與探索,2010,(04).
Based on the development of CS-soure game engine virtual chemical plant simulation system
He Peng-fei,Lai Chun-ming
(Hunan College of Chemical Technology,Zhuzhou,Hunan 412011 China)
Modeling of chemical plant equipment using 3dsmax,using the CS-soure game engine to show the real effect of chemical equipment.Has very strong operability and good realistic scene effect.
virtual reality;game engine;CS-soure;chemical plant Chemical equipment
TQ113.29
B
1003-6490(2015)04-0049-04
課題編號:HNHY2014003
2015-08-07
何鵬飛(1982-),男,安徽亳州人,講師,研究領域:過程裝備與控制工程。