本公開(kāi)涉及vr,尤其涉及一種硬件指令的打包方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、相關(guān)技術(shù)中,設(shè)備的硬件指令序列用于控制設(shè)備的運(yùn)動(dòng)。設(shè)備編輯器(一種用于配置和管理設(shè)備參數(shù)及指令的工具)可以用于對(duì)設(shè)備的硬件指令序列進(jìn)行編輯。實(shí)際中,設(shè)備的硬件指令序列往往需要反復(fù)的編輯和修改才能得到預(yù)期的控制效果。然而設(shè)備編輯器每次對(duì)硬件指令序列進(jìn)行編輯之后,都需要重新對(duì)硬件指令序列進(jìn)行打包,然后才能發(fā)送給設(shè)備,觀察硬件指令序列對(duì)設(shè)備的控制效果,每次打包耗費(fèi)的時(shí)間較長(zhǎng),效率較低。
技術(shù)實(shí)現(xiàn)思路
1、為了解決上述技術(shù)問(wèn)題或者至少部分地解決上述技術(shù)問(wèn)題,本公開(kāi)提供了一種硬件指令的打包方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
2、第一方面,本公開(kāi)實(shí)施例提供了一種硬件指令的打包方法,所述方法包括:
3、獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,所述第一硬件指令序列包括用于控制所述目標(biāo)硬件設(shè)備的多個(gè)硬件指令;
4、獲取打包文件的獲取路徑,所述打包文件是對(duì)項(xiàng)目數(shù)據(jù)進(jìn)行打包后生成的文件,所述項(xiàng)目數(shù)據(jù)包括對(duì)所述至少一個(gè)硬件設(shè)備的硬件指令,所述打包文件中包括所述目標(biāo)硬件設(shè)備的文件夾;
5、根據(jù)所述打包文件的獲取路徑,獲取所述打包文件;
6、將所述第一硬件指令序列寫(xiě)入所述文件夾中。
7、可選的,所述獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,包括:
8、獲取多個(gè)畫(huà)面幀內(nèi)包含的第一硬件指令,所述第一硬件指令用于在所述畫(huà)面幀播放時(shí)控制所述目標(biāo)硬件設(shè)備和所述畫(huà)面幀聯(lián)動(dòng);
9、基于各畫(huà)面幀中包含的所述第一硬件指令以及各畫(huà)面幀的時(shí)間戳生成所述目標(biāo)硬件設(shè)備的第一硬件指令序列。
10、可選的,所述獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,包括:
11、從所述文件夾中獲取所述目標(biāo)硬件設(shè)備的第二硬件指令序列,以及用于對(duì)所述第二硬件指令序列進(jìn)行修改的修改指令,所述第二硬件指令序列是指歷史生成的用于對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制的硬件指令序列;
12、基于所述修改指令對(duì)所述第二硬件指令序列進(jìn)行修改,得到第一硬件指令序列。
13、可選的,所述獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,包括:
14、從混合序列中讀取所述目標(biāo)硬件設(shè)備的硬件指令,并存放到預(yù)設(shè)的數(shù)組中,所述混合序列中包括所述至少一個(gè)硬件設(shè)備的硬件指令序列,所述目標(biāo)硬件設(shè)備的硬件指令中包括時(shí)間戳,所述時(shí)間戳用于指示所述硬件指令對(duì)所述目標(biāo)硬件設(shè)備的控制時(shí)間;
15、基于所述時(shí)間戳,將所述數(shù)組中的硬件指令按照時(shí)間順序進(jìn)行排序得到第一硬件指令序列。
16、可選的,所述將所述第一硬件指令序列寫(xiě)入所述文件夾中,包括:
17、基于所述第一硬件指令序列生成預(yù)設(shè)格式的第一文件;
18、將所述第一文件寫(xiě)入所述文件夾中。
19、可選的,所述將所述第一文件寫(xiě)入所述文件夾中,包括:
20、將所述文件夾中包含的第二文件替換為所述第一文件,所述第二文件中包括歷史生成的用于對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制的第二硬件指令序列。
21、可選的,所述方法還包括,包括:
22、從所述文件夾中解析得到所述第一硬件指令序列;
23、間隔預(yù)設(shè)時(shí)間從所述第一硬件指令序列中讀取硬件指令,對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制。
24、可選的,所述硬件指令中包括時(shí)間戳和控制參數(shù),所述控制參數(shù)用于控制所述目標(biāo)硬件設(shè)備的運(yùn)動(dòng)狀態(tài);
25、所述間隔預(yù)設(shè)時(shí)間從所述第一硬件指令序列中讀取硬件指令,對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制,包括:
26、從第一硬件指令序列中獲取第二硬件指令包含的第一控制參數(shù),以及第三硬件指令包含的第二控制參數(shù),其中所述第二硬件指令和所述第三硬件指令是在時(shí)間上相鄰的兩個(gè)時(shí)間戳對(duì)應(yīng)的硬件指令,所述第二硬件指令和所述第三硬件指令的時(shí)間間隔為所述預(yù)設(shè)時(shí)間;
27、分別將預(yù)設(shè)線性表達(dá)式中的變量取值為所述第一控制參數(shù)和所述第二控制參數(shù),基于所述第一控制參數(shù)和所述第二控制參數(shù),計(jì)算得到所述預(yù)設(shè)線性表達(dá)式中的常量的取值;
28、在確定所述常量的取值后,基于所述預(yù)設(shè)線性表達(dá)式,確定在所述時(shí)間間隔中間各時(shí)刻的控制參數(shù);
29、基于所述第一控制參數(shù)、所述第二控制參數(shù)以及所述各時(shí)刻的控制參數(shù)對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制。
30、第二方面,本公開(kāi)實(shí)施例提供了一種硬件指令的打包裝置,該裝置包括:
31、第一獲取模塊,用于獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,所述第一硬件指令序列包括用于控制所述目標(biāo)硬件設(shè)備的多個(gè)硬件指令;
32、第二獲取模塊,用于獲取打包文件的獲取路徑,所述打包文件是對(duì)項(xiàng)目數(shù)據(jù)進(jìn)行打包后生成的文件,所述項(xiàng)目數(shù)據(jù)包括對(duì)所述至少一個(gè)硬件設(shè)備的硬件指令,所述打包文件中包括所述目標(biāo)硬件設(shè)備的文件夾;
33、第三獲取模塊,用于根據(jù)所述打包文件的獲取路徑,獲取所述打包文件;
34、寫(xiě)入模塊,用于將所述第一硬件指令序列寫(xiě)入所述文件夾中。
35、可選的,第一獲取模塊,用于:
36、獲取多個(gè)畫(huà)面幀內(nèi)包含的第一硬件指令,所述第一硬件指令用于在所述畫(huà)面幀播放時(shí)控制所述目標(biāo)硬件設(shè)備和所述畫(huà)面幀聯(lián)動(dòng);
37、基于各畫(huà)面幀中包含的所述第一硬件指令以及各畫(huà)面幀的時(shí)間戳生成所述目標(biāo)硬件設(shè)備的第一硬件指令序列。
38、可選的,第一獲取模塊,用于:
39、從所述文件夾中獲取所述目標(biāo)硬件設(shè)備的第二硬件指令序列,以及用于對(duì)所述第二硬件指令序列進(jìn)行修改的修改指令,所述第二硬件指令序列是指歷史生成的用于對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制的硬件指令序列;
40、基于所述修改指令對(duì)所述第二硬件指令序列進(jìn)行修改,得到第一硬件指令序列。
41、可選的,第一獲取模塊,用于:
42、從混合序列中讀取所述目標(biāo)硬件設(shè)備的硬件指令,并存放到預(yù)設(shè)的數(shù)組中,所述混合序列中包括所述至少一個(gè)硬件設(shè)備的硬件指令序列,所述目標(biāo)硬件設(shè)備的硬件指令中包括時(shí)間戳,所述時(shí)間戳用于指示所述硬件指令對(duì)所述目標(biāo)硬件設(shè)備的控制時(shí)間;
43、基于所述時(shí)間戳,將所述數(shù)組中的硬件指令按照時(shí)間順序進(jìn)行排序得到第一硬件指令序列。
44、可選的,寫(xiě)入模塊,用于:
45、基于所述第一硬件指令序列生成預(yù)設(shè)格式的第一文件;
46、將所述第一文件寫(xiě)入所述文件夾中。
47、可選的,寫(xiě)入模塊,用于:
48、將所述文件夾中包含的第二文件替換為所述第一文件,所述第二文件中包括歷史生成的用于對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制的第二硬件指令序列。
49、可選的,硬件指令的打包裝置,還可以包括:
50、解析模塊,用于從所述文件夾中解析得到所述第一硬件指令序列;
51、控制模塊,用于間隔預(yù)設(shè)時(shí)間從所述第一硬件指令序列中讀取硬件指令,對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制。
52、可選的,所述硬件指令中包括時(shí)間戳和控制參數(shù),所述控制參數(shù)用于控制所述目標(biāo)硬件設(shè)備的運(yùn)動(dòng)狀態(tài);
53、控制模塊,用于:
54、從第一硬件指令序列中獲取第二硬件指令包含的第一控制參數(shù),以及第三硬件指令包含的第二控制參數(shù),其中所述第二硬件指令和所述第三硬件指令是在時(shí)間上相鄰的兩個(gè)時(shí)間戳對(duì)應(yīng)的硬件指令,所述第二硬件指令和所述第三硬件指令的時(shí)間間隔為所述預(yù)設(shè)時(shí)間;
55、分別將預(yù)設(shè)線性表達(dá)式中的變量取值為所述第一控制參數(shù)和所述第二控制參數(shù),基于所述第一控制參數(shù)和所述第二控制參數(shù),計(jì)算得到所述預(yù)設(shè)線性表達(dá)式中的常量的取值;
56、在確定所述常量的取值后,基于所述預(yù)設(shè)線性表達(dá)式,確定在所述時(shí)間間隔中間各時(shí)刻的控制參數(shù);
57、基于所述第一控制參數(shù)、所述第二控制參數(shù)以及所述各時(shí)刻的控制參數(shù)對(duì)所述目標(biāo)硬件設(shè)備進(jìn)行控制。
58、第三方面,本公開(kāi)實(shí)施例提供一種計(jì)算機(jī)設(shè)備,所述計(jì)算機(jī)設(shè)備中設(shè)置有多張數(shù)據(jù)存儲(chǔ)表,所述計(jì)算機(jī)設(shè)備包括:
59、存儲(chǔ)器;
60、處理器;以及
61、計(jì)算機(jī)程序;
62、其中,所述計(jì)算機(jī)程序存儲(chǔ)在所述存儲(chǔ)器中,并被配置為由所述處理器執(zhí)行以實(shí)現(xiàn)如第一方面所述的方法。
63、第四方面,本公開(kāi)實(shí)施例提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行以實(shí)現(xiàn)第一方面所述的方法。
64、本公開(kāi)實(shí)施例提供的硬件指令的打包方法、裝置、設(shè)備及存儲(chǔ)介質(zhì),通過(guò)獲取至少一個(gè)硬件設(shè)備中目標(biāo)硬件設(shè)備的第一硬件指令序列,以及打包文件的獲取路徑,根據(jù)打包文件的獲取路徑,獲取打包文件,將第一硬件指令序列寫(xiě)入打包文件中與目標(biāo)硬件設(shè)備對(duì)應(yīng)的文件夾,從而利用了已有的打包文件,每次修改硬件指令序列后不需要重新打包就能夠查看控制效果,減少了打包操作的時(shí)間消耗,提高了硬件指令控制效果查看的效率。