蔣貝迪
摘要:該文首先介紹了Web3D技術(shù)的發(fā)展和應(yīng)用領(lǐng)域,以及采用的J2EE技術(shù),然后主要描述了3D模型素材的解析和處理,以及管理系統(tǒng)的用例設(shè)計(jì)和整體架構(gòu),并簡單展示了數(shù)據(jù)表的設(shè)計(jì)和該系統(tǒng)的前端后臺(tái)。
關(guān)鍵詞:Web3D;J2EE;模型素材;管理系統(tǒng)
中圖分類號(hào):TP37 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)23-0130-02
3D Model Management System Design and Implementation
JIANG Bei-di
(School of Software, Tongji university, Shanghai 201804, China)
Abstract: This paper firstly introduces the development and application of Web3D technology, as well as J2EE technology, and then describes the design, the overall architecture of the 3D model management system.At last, it shows a simple demonstration of the data table and the front end and the back end of management system.
Key words: Web3D; J2EE; model material; management system
隨著互聯(lián)網(wǎng)的高速發(fā)展,信息的獲取與傳遞變得更加的方便和快捷。尤其是Web3D技術(shù)的廣泛應(yīng)用,使得人們在工作生活的各個(gè)領(lǐng)域獲取信息的方式發(fā)生了巨大的改變。Web3D技術(shù)使信息變得更加直觀化、形象化、可操作化,為實(shí)物資源的遠(yuǎn)程展示提供了一個(gè)非常新穎的方法,使得人們對Web上的信息獲取從閱讀型轉(zhuǎn)變到了感受型。
Web3D又叫三維網(wǎng)頁,是隨著互聯(lián)網(wǎng)與虛擬現(xiàn)實(shí)(Virtual Reality)技術(shù)的發(fā)展而產(chǎn)生的,是一種在虛擬現(xiàn)實(shí)技術(shù)基礎(chǔ)上,將在現(xiàn)實(shí)世界中有形的物體通過互聯(lián)網(wǎng)進(jìn)行虛擬三維立體展示同時(shí)可互動(dòng)瀏覽操作的一種虛擬現(xiàn)實(shí)技術(shù)。相比于現(xiàn)在網(wǎng)上主流的以圖片、動(dòng)畫、FLASH的展示方式來說,Web3D技術(shù)讓用戶有了瀏覽的自主感,可以從自己的角度去觀察,還有許多的虛擬特效和互動(dòng)操作。Web3D組織給出了四大類運(yùn)用方向:商業(yè)、教育、娛樂、和虛擬社區(qū)。
從web3D組織給出的方向可以看出,Web3D技術(shù)已經(jīng)遍及社會(huì)的各個(gè)行業(yè),未來前景十分光明。同時(shí),問題也應(yīng)運(yùn)而生,Web3D的發(fā)布和管理必然已經(jīng)成為或?qū)?huì)成為各行業(yè)面臨的一大問題。所以,人們對于Web3D模型的需求越來越大,而如何更加有效快捷地管理Web3D模型素材也是其中的一個(gè)重要的環(huán)節(jié)。
1 3D素材的解析及處理
系統(tǒng)涉及多種3d素材格式不局限于某一種,具體包括json、awd、dae、obj、fbx、3ds等,所以讀取過程中要對不同格式的文件進(jìn)行解析。同時(shí),在讀取到模型后,要對模型進(jìn)行光照、陰影、背景、事件等處理,最后顯示在用戶的瀏覽器界面中。
外部模型與材質(zhì)的讀取
采用Web GL技術(shù),首先在init函數(shù)中,去聲明loader變量,用來模型的導(dǎo)入:
[var loader = new THREE.OBJLoader();\&]
在loader導(dǎo)入素材模型的過程中,接收兩個(gè)參數(shù),前一個(gè)參數(shù)表示模型的存儲(chǔ)路徑,第二個(gè)則代表模型導(dǎo)入后的回調(diào)函數(shù),我們就是在這個(gè)回調(diào)函數(shù)中向場景里去添加這個(gè)素材模型。
模型的材質(zhì)可以有兩種定義方式,一種是在代碼中導(dǎo)入模型后設(shè)置材質(zhì),另一種是在建模軟件中導(dǎo)出材質(zhì)信息。系統(tǒng)實(shí)現(xiàn)在web端,要輕量級,因此采用代碼導(dǎo)入方式。
光與影的運(yùn)用
光分為環(huán)境光、點(diǎn)光源,創(chuàng)建環(huán)境光后,將場景光添加到場景之中,然后系統(tǒng)的模型視覺上才可見,通常狀況下環(huán)境光設(shè)置為白色和灰色。點(diǎn)光源顧名思義,模擬環(huán)境中有一個(gè)點(diǎn)發(fā)光讓整個(gè)模型有明暗層次感,具體如圖所示。
2 Web3D素材管理系統(tǒng)設(shè)計(jì)
管理系統(tǒng)采用Java EE技術(shù)進(jìn)行實(shí)現(xiàn)。Java EE是JavaTM Platform ,Enterprise Edition的縮寫,是sun公司推出的企業(yè)級Java計(jì)算平臺(tái)。該平臺(tái)為開發(fā)和運(yùn)行企業(yè)級軟件提供了API和運(yùn)行環(huán)境,可以開發(fā)如常見的Web服務(wù),也可以用來開發(fā)其他大規(guī)模、多層次、可擴(kuò)展、可靠安全的網(wǎng)絡(luò)應(yīng)用。
本文中該內(nèi)容管理系統(tǒng)的后臺(tái)便是采用J2EE的技術(shù),實(shí)現(xiàn)對素材文件的管理。
2.1 系統(tǒng)用例設(shè)計(jì)
Web3D模型素材管理系統(tǒng)的用例圖如下圖3所示:
系統(tǒng)的參與者主要可以分為管理員和普通用戶。管理員登錄系統(tǒng),可以對系統(tǒng)中所有的用戶進(jìn)行管理,可以指定用戶的級別,主要包括企業(yè)用戶和個(gè)人用戶,企業(yè)用戶和個(gè)人用戶功能上都相同,都?xì)w為普通用戶。企業(yè)用戶可以享受更高的素材存儲(chǔ)空間和一些特定的素材庫。管理員同時(shí)還有素材庫的管理功能,可以新建、刪除、編輯素材庫。普通用功能可以上傳下載檢索編輯素材,同時(shí)可以申請審核將素材庫加入到商業(yè)庫中。
2.2系統(tǒng)整體架構(gòu)設(shè)計(jì)
本系統(tǒng)采用的是基于MVC架構(gòu)的SSH2軟件開發(fā)框架,主要分為三層:表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)服務(wù)層。整個(gè)Web應(yīng)用結(jié)構(gòu)由三大部分組成。其中頂部瀏覽器表示用戶與本W(wǎng)eb應(yīng)用交互的渠道,屬于客戶端。瀏覽器背后則屬于服務(wù)器端,包括中間三個(gè)具體處理用戶請求的層次和進(jìn)行數(shù)據(jù)映射、交流的Hibernate層及數(shù)據(jù)庫。最底部層是提供RESTful API的OpenStack,其主要為Web應(yīng)用提供絕大部分?jǐn)?shù)據(jù)。
2.3數(shù)據(jù)表設(shè)計(jì)
上面簡單介紹了模型素材內(nèi)容管理系統(tǒng)的一些結(jié)構(gòu)圖和流程圖素材本身具有很多元數(shù)據(jù),比如縮略圖、材質(zhì)、背景等,如下,我們將ID等存入HBase,將特別小的文件信息存入Mysql,同時(shí)用戶、日志等信息都存入Mysql,確保HBase盡力存儲(chǔ)的都是相對較大的文件,確保系統(tǒng)的高效性。下面以model表作為例子簡單地描述下數(shù)據(jù)表的設(shè)計(jì)。
其他的數(shù)據(jù)表格也參照類似的格式進(jìn)行設(shè)計(jì),這里只是簡單介紹一下。
3 系統(tǒng)的展示
系統(tǒng)前端包括注冊登陸,檢索,收藏,歷史查詢,個(gè)人中心等功能模塊,對模型進(jìn)行了分類,方便用戶瀏覽,查詢,下載到自己想要的素材。如下圖所示
系統(tǒng)的后臺(tái)可以方便用戶上傳,刪除,修改素材,同時(shí)也支持素材的預(yù)覽,如下圖所示。
4 結(jié)束語
本文主要通過UML類圖、數(shù)據(jù)表等清晰地對Web3D素材管理系統(tǒng)在整體架構(gòu)和實(shí)現(xiàn)流程上進(jìn)行了分析和分割,實(shí)現(xiàn)了該系統(tǒng)在操作管理3D模型素材的可能性。而且本文提出的管理系統(tǒng)架構(gòu)也可適用于其他產(chǎn)品,有很強(qiáng)的普適性。當(dāng)然該模型素材內(nèi)容管理系統(tǒng)還有很大的進(jìn)步空間,希望能繼續(xù)改進(jìn)。
參考文獻(xiàn):
[1] 田海山,何援軍,蔡鴻鳴.基于Web的虛擬展廳的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2006(10): 204-206.
[2] 林綺屏.基于Web3D技術(shù)的網(wǎng)絡(luò)三維展示系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].情報(bào)科學(xué),2011,29(5):693-695.
[3] 楊章偉,王立平.江西特色動(dòng)漫素材庫研究及管理系統(tǒng)開發(fā)[J].萍鄉(xiāng)高等專科學(xué)校學(xué)報(bào),2013,30(6): 59-62.
[4] 陳世鴻,吳志遠(yuǎn),陳磊.CAI素材庫邏輯結(jié)構(gòu)及其操作模式[J].武漢大學(xué)學(xué)報(bào):理學(xué)版,2001,47(1): 53-56.
[5] 王建丹,朱英.多媒體素材庫資源管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].企業(yè)科技與發(fā)展,2014(1):31-32.
[6] 鄭力明,郭葆鋒, 張會(huì)汀,等.基于Web的多媒體教學(xué)資源系統(tǒng)[J].計(jì)算機(jī)工程與應(yīng)用,2003(25): 175-178.
[7] 柴清,何輝, 龔成瑩.基于Web3D的IT運(yùn)維仿真監(jiān)測系統(tǒng)[J].自動(dòng)化與儀器儀表,2013(5):143-144.
[8] 吳春花.基于WEB的多媒體素材庫管理系統(tǒng)的開發(fā)分析[J].才智,2013(1):281-281.