本發(fā)明涉及裸眼3d,尤其涉及一種速生成裸眼3d?windows可執(zhí)行程序的方法。
背景技術(shù):
1、裸眼3d技術(shù)旨在不需要佩戴任何特殊眼鏡的情況下,為觀看者呈現(xiàn)立體視覺效果。這項(xiàng)技術(shù)在娛樂、廣告、醫(yī)學(xué)成像和教育等多個(gè)領(lǐng)域展現(xiàn)了其潛在的應(yīng)用價(jià)值,現(xiàn)有裸眼3d技術(shù)開發(fā)中,缺乏明確的用戶需求導(dǎo)向,導(dǎo)致功能開發(fā)與最終用戶需求脫節(jié),同時(shí),裸眼3d項(xiàng)目開發(fā)缺乏標(biāo)準(zhǔn)化和模塊化的開發(fā)框架,導(dǎo)致技術(shù)實(shí)現(xiàn)復(fù)雜且維護(hù)困難。
2、因此,本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提供的一種速生成裸眼3d?windows可執(zhí)行程序的方法,通過獲取用戶需求和技術(shù)調(diào)研,明確功能需求,進(jìn)行細(xì)分技術(shù)分級(jí)并封裝成sdk,再在unity項(xiàng)目中逐步導(dǎo)入和實(shí)現(xiàn)裸眼3d效果,最終綜合檢測和發(fā)布為可執(zhí)行程序,實(shí)現(xiàn)了從需求獲取到最終發(fā)布的系統(tǒng)化流程,提高了裸眼3d應(yīng)用開發(fā)的效率和質(zhì)量,確保了所開發(fā)軟件的用戶需求貼合度、標(biāo)準(zhǔn)化、模塊化和可維護(hù)性。
2、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,包括:
3、步驟1:獲取用戶需求,同時(shí)對(duì)裸眼3d技術(shù)進(jìn)行技術(shù)調(diào)研,得出需求-功能表,根據(jù)需求-功能表確定待添加功能,根據(jù)待添加功能快速開發(fā)裸眼3d編輯器;
4、步驟2:基于關(guān)鍵維度對(duì)裸眼3d技術(shù)進(jìn)行細(xì)節(jié)層次分級(jí),得出細(xì)節(jié)層次等級(jí),并對(duì)相應(yīng)等級(jí)進(jìn)行sdk封裝;
5、步驟3:新建unity項(xiàng)目,根據(jù)sdk封裝包對(duì)unity項(xiàng)目進(jìn)行第一導(dǎo)入,同時(shí)根據(jù)需求-功能表明確需要實(shí)現(xiàn)的裸眼3d效果,對(duì)unity項(xiàng)目進(jìn)行第二導(dǎo)入,基于第一導(dǎo)入與第二導(dǎo)入的結(jié)果確定裸眼3d模板;
6、步驟4:對(duì)裸眼3d模板進(jìn)行綜合檢測,若合格,將所述裸眼3d模板保存為預(yù)制體,對(duì)所述預(yù)制體進(jìn)行打包發(fā)布,生成對(duì)應(yīng)的windows可執(zhí)行程序。
7、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,獲取用戶需求,同時(shí)對(duì)裸眼3d技術(shù)進(jìn)行技術(shù)調(diào)研,得出需求-功能表,根據(jù)需求-功能表確定待添加功能,根據(jù)待添加功能快速開發(fā)裸眼3d編輯器,包括:
8、對(duì)獲取到的用戶需求進(jìn)行功能分類,得出需求文檔;
9、分析裸眼3d的核心技術(shù),研究對(duì)應(yīng)技術(shù)不同實(shí)現(xiàn)方案的優(yōu)缺點(diǎn)與適用場景,得出技術(shù)調(diào)研報(bào)告;
10、根據(jù)所述需求文檔與技術(shù)調(diào)研報(bào)告列出需求-功能表,進(jìn)而得出待添加功能;
11、將所述待添加功能按照優(yōu)先級(jí)進(jìn)行排序,并根據(jù)排序結(jié)果確定對(duì)應(yīng)的核心功能模塊,基于核心功能模塊開發(fā)裸眼3d編輯器。
12、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,將所述待添加功能按照優(yōu)先級(jí)進(jìn)行排序,并根據(jù)排序結(jié)果確定對(duì)應(yīng)的核心功能模塊,基于核心功能模塊開發(fā)裸眼3d編輯器,包括:
13、將待添加功能分配為必須有、應(yīng)該有、可以有以及不會(huì)有的對(duì)應(yīng)類別;
14、根據(jù)類別分配結(jié)果確定核心功能模塊,并基于所述核心功能模塊開發(fā)裸眼3d編輯器,其中,核心模塊包括視差調(diào)整模塊、深度渲染模塊以及用戶界面基本控制模塊。
15、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,基于關(guān)鍵維度對(duì)裸眼3d技術(shù)進(jìn)行細(xì)節(jié)層次分級(jí),得出細(xì)節(jié)層次等級(jí),并對(duì)相應(yīng)等級(jí)進(jìn)行sdk封裝,包括:
16、將所述核心功能模塊拆分為多個(gè)關(guān)鍵維度,并對(duì)關(guān)鍵維度進(jìn)行功能細(xì)化,得到每個(gè)關(guān)鍵維度的細(xì)化功能向量;
17、從功能-層次庫中確定每個(gè)細(xì)化功能向量的關(guān)鍵維度的細(xì)節(jié)層次等級(jí),其中,細(xì)節(jié)層次等級(jí)包括基礎(chǔ)功能、中級(jí)功能以及高級(jí)功能;
18、根據(jù)所述細(xì)節(jié)層級(jí)等級(jí)建立對(duì)應(yīng)等級(jí)版本的lod模型,根據(jù)所述用戶需求確定不同等級(jí)版本lod模型之間進(jìn)行切換的觀測距離范圍,并根據(jù)所述觀測距離范圍確定在不同觀測距離下相應(yīng)lod模型的自動(dòng)切換參數(shù),根據(jù)所述自動(dòng)切換參數(shù)對(duì)相應(yīng)lod模型進(jìn)行第一配置,得出lod模型的第一配置結(jié)果;
19、根據(jù)裸眼3d顯示器的特點(diǎn)確定關(guān)于第二配置的深度參數(shù),并基于第一配置結(jié)果進(jìn)行第二配置,得到第二配置結(jié)果,使用裸眼3d編輯器對(duì)第二配置結(jié)果進(jìn)行參數(shù)導(dǎo)出,并將導(dǎo)出結(jié)果進(jìn)行sdk封裝,得出裸眼3d對(duì)應(yīng)的sdk封裝包。
20、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,新建unity項(xiàng)目,根據(jù)sdk封裝包對(duì)unity項(xiàng)目進(jìn)行第一導(dǎo)入,同時(shí)根據(jù)需求-功能表明確需要實(shí)現(xiàn)的裸眼3d效果,對(duì)unity項(xiàng)目進(jìn)行第二導(dǎo)入,基于第一導(dǎo)入與第二導(dǎo)入的結(jié)果確定裸眼3d模板,包括:
21、基于unity項(xiàng)目選擇與裸眼3d技術(shù)相關(guān)的3d項(xiàng)目模板,同時(shí),下載裸眼3d技術(shù)對(duì)應(yīng)的sdk封裝包,選擇sdk封裝包中的所有資源進(jìn)行第一導(dǎo)入,并根據(jù)第一導(dǎo)入結(jié)果對(duì)3d項(xiàng)目模板進(jìn)行第一導(dǎo)入配置;
22、根據(jù)需求-功能表,列出需要實(shí)現(xiàn)的裸眼3d效果,根據(jù)所述裸眼3d效果確定需要的資源向量以及交互顯示效果,基于所述資源向量與交互顯示效果進(jìn)行第二導(dǎo)入,并根據(jù)第二導(dǎo)入結(jié)果對(duì)3d項(xiàng)目模板進(jìn)行第二導(dǎo)入配置;
23、綜合第一導(dǎo)入配置與第二導(dǎo)入配置的所有導(dǎo)入配置結(jié)果將當(dāng)前3d項(xiàng)目模板保存為裸眼3d模板。
24、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,對(duì)裸眼3d模板進(jìn)行綜合檢測,包括:
25、根據(jù)需求-功能表逐項(xiàng)模擬各種用戶交互,對(duì)響應(yīng)與事件觸發(fā)進(jìn)行第一檢測,得出第一檢測結(jié)果;
26、記錄不同場景操作下對(duì)應(yīng)整個(gè)時(shí)段的平均幀率,計(jì)算對(duì)應(yīng)場景操作下的即時(shí)幀率與對(duì)應(yīng)的平均即時(shí)幀率,比較所述平均幀率與平均即時(shí)幀率得出第一比較結(jié)果,對(duì)平均幀率與第一預(yù)設(shè)范圍進(jìn)行比較,得出第二比較結(jié)果,根據(jù)對(duì)應(yīng)場景操作的復(fù)雜度確定關(guān)于第二預(yù)設(shè)范圍的幾何倍數(shù),進(jìn)而與第一預(yù)設(shè)范圍相乘得出第二預(yù)設(shè)范圍,其中,即時(shí)幀率與對(duì)應(yīng)的平均即時(shí)幀率是基于預(yù)設(shè)時(shí)間窗口進(jìn)行計(jì)算的;
27、即時(shí)幀率與對(duì)應(yīng)場景操作下的第二預(yù)設(shè)范圍進(jìn)行比較,得出第三比較結(jié)果;
28、根據(jù)第一比較結(jié)果、第二比較結(jié)果與第三比較結(jié)果確定第二檢測結(jié)果;
29、進(jìn)行用戶操作模擬,針對(duì)ui和交互的流暢性與正確性進(jìn)行第三檢測,得出第三檢測結(jié)果;
30、綜合第一檢測結(jié)果、第二檢測結(jié)果與第三檢測結(jié)果,對(duì)裸眼3d模板進(jìn)行合格判定。
31、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,記錄不同場景操作下對(duì)應(yīng)整個(gè)時(shí)段的平均幀率,計(jì)算對(duì)應(yīng)場景操作下的即時(shí)幀率與對(duì)應(yīng)的平均即時(shí)幀率,包括:
32、計(jì)算即時(shí)幀率:
33、;其中,表示t時(shí)刻的即時(shí)幀率;表示縮放幀率的常量系數(shù);表示t時(shí)刻幀率的動(dòng)態(tài)調(diào)整因子;表示小常量且;表示t時(shí)刻額外時(shí)間相關(guān)調(diào)整因子;表示隨著幀的時(shí)間距離變化的渲染時(shí)間;表示第i幀的權(quán)重;m表示當(dāng)前場景操作下共有m幀;i表示表示當(dāng)前場景操作下的第i幀;
34、計(jì)算平均即時(shí)幀率:
35、;其中,表示t時(shí)刻的平均即時(shí)幀率;表示第i幀與t時(shí)刻的歷史幀率調(diào)整因子;表示隨著幀的時(shí)間距離相關(guān)的非線性加權(quán)參數(shù);表示非線性加權(quán)因子;表示隨著幀的時(shí)間距離變化的指數(shù)衰減因子;表示指數(shù)衰減系數(shù);表示第i幀的即時(shí)幀率;n表示時(shí)間窗口的大小。
36、本發(fā)明提供一種速生成裸眼3d?windows可執(zhí)行程序的方法,若合格,將所述裸眼3d模板進(jìn)行打包發(fā)布,生成對(duì)應(yīng)的windows可執(zhí)行程序,并對(duì)后續(xù)裸眼3d編輯器與裸眼3d環(huán)境軟件交互進(jìn)行檢測,包括:
37、將裸眼3d模板對(duì)象保存為預(yù)制體,基于unity項(xiàng)目使用裸眼3d編輯器對(duì)預(yù)制體進(jìn)行打包,得出對(duì)應(yīng)的可執(zhí)行3d場景程序;
38、在不同配置的windows系統(tǒng)中測試所述可執(zhí)行3d場景程序的適配性,根據(jù)適配性測試結(jié)果對(duì)所述可執(zhí)行3d場景程序進(jìn)行發(fā)布。
39、與現(xiàn)有技術(shù)相比,本技術(shù)的有益效果如下:通過獲取用戶需求和技術(shù)調(diào)研,明確功能需求,進(jìn)行細(xì)分技術(shù)分級(jí)并封裝成sdk,再在unity項(xiàng)目中逐步導(dǎo)入和實(shí)現(xiàn)裸眼3d效果,最終綜合檢測和發(fā)布為可執(zhí)行程序,實(shí)現(xiàn)了從需求獲取到最終發(fā)布的系統(tǒng)化流程,提高了裸眼3d應(yīng)用開發(fā)的效率和質(zhì)量,確保了所開發(fā)軟件的用戶需求貼合度、標(biāo)準(zhǔn)化、模塊化和可維護(hù)性。
40、本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
41、下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。