版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
ICS35.020
CCSL70YD
中華人民共和國通信行業(yè)標(biāo)準(zhǔn)
YD/TXXXXX—XXXX
移動(dòng)智能終端振動(dòng)觸感反饋技術(shù)要求
Technicalrequirementsforhapticfeedbackofmobileintelligentterminal
(報(bào)批稿)
XXXX-XX-XX發(fā)布XXXX-XX-XX實(shí)施
中華人民共和國工業(yè)和信息化部發(fā)布
YD/TXXXX—XXXX
前??言
本文件按照GB/T1.1—2020《標(biāo)準(zhǔn)化工作導(dǎo)則第1部分:標(biāo)準(zhǔn)化文件的結(jié)構(gòu)和起草規(guī)則》的規(guī)定
起草。
請注意本文件的某些內(nèi)容可能涉及專利。本文件的發(fā)布機(jī)構(gòu)不承擔(dān)識別這些專利的責(zé)任。
本文件由中國通信標(biāo)準(zhǔn)化協(xié)會(huì)提出并歸口。
本文件起草單位:深圳市騰訊計(jì)算機(jī)系統(tǒng)有限公司、北京小米移動(dòng)軟件有限公司、騰訊音樂娛樂科
技(深圳)有限公司、北京三星通信技術(shù)研究有限公司、OPPO廣東移動(dòng)通信有限公司、維沃移動(dòng)通信有
限公司、摩托羅拉移動(dòng)通信技術(shù)有限公司。
本文件主要起草人:張亞軍、徐士立、洪楷、王昊、代威、梅述家、于磊、陳燦峰、李茹、吳越、
王小璞、劉臻、高立發(fā)、林輝。
II
YD/TXXXX—XXXX
移動(dòng)智能終端振動(dòng)觸感反饋技術(shù)要求
1范圍
本文件規(guī)定了移動(dòng)智能終端振動(dòng)觸感反饋技術(shù)要求,包括振動(dòng)反饋系統(tǒng)架構(gòu)、接口、振動(dòng)波形描述
文件以及數(shù)據(jù)格式、振動(dòng)效果播放接口、振動(dòng)馬達(dá)硬件性能技術(shù)要求、不同游戲場景振動(dòng)頻率和強(qiáng)度技
術(shù)要求。
本文件適用于游戲振動(dòng)觸感反饋體驗(yàn)設(shè)計(jì)、開發(fā)以及評估測試。
其他多媒體娛樂振動(dòng)反饋應(yīng)用也可參照(參考)使用本文件內(nèi)容。
2規(guī)范性引用文件
下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,
僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本
文件。
GB/T32626-2016信息技術(shù)網(wǎng)絡(luò)游戲術(shù)語
3術(shù)語和定義
下列術(shù)語和定義適用于本文件。
3.1
移動(dòng)智能終端smartintelligentdevice
移動(dòng)智能終端,又叫移動(dòng)終端、智能終端,是指一類具備豐富人機(jī)交互方式、擁有接入互聯(lián)網(wǎng)能力、
通常搭載各種操作系統(tǒng)、具有較強(qiáng)處理能力的設(shè)備。移動(dòng)智能終端包括智能手機(jī)、平板電腦、車載終端、
掌上游戲主機(jī)等。
3.2
移動(dòng)游戲mobilegame
移動(dòng)游戲是指運(yùn)行在移動(dòng)智能終端,用戶與移動(dòng)智能終端交互以達(dá)成目標(biāo)的游戲應(yīng)用。
3.3
振動(dòng)效果hapticeffect
振動(dòng)觸感引擎根據(jù)游戲場景生成振動(dòng)效果。
3.4
振動(dòng)中間件hapticmiddleware
獨(dú)立于應(yīng)用軟件,位于操作系統(tǒng)之上,管理振動(dòng)描述文件和振動(dòng)效果的服務(wù)程序。
3.5
振動(dòng)設(shè)備hapticequipment
具有振動(dòng)馬達(dá)的設(shè)備。
3.6
振動(dòng)描述信息hapticdescriptioninformation
1
YD/TXXXX—XXXX
振動(dòng)描述信息用于描述不同游戲場景中的振動(dòng)效果。
3.7
振動(dòng)能力hapticcapability
硬件設(shè)備具有提供振動(dòng)功能的振動(dòng)模塊。
3.8
拖尾tailingoff
振動(dòng)特效緩慢衰減。
4縮略語
下列縮略語適用于本文件:
HE:振動(dòng)效果(HapticEffect)
HEI:振動(dòng)效果接口(HapticEffectInterface)
HRI:振動(dòng)運(yùn)行時(shí)接口(HapticRuntimeInterface)
SDK:軟件開發(fā)工具包(SoftwareDevelopmentKit)
APP:應(yīng)用程序(Application)
OS:操作系統(tǒng)(OperationSystem)
5振動(dòng)觸感反饋技術(shù)要求概述
當(dāng)前大多數(shù)移動(dòng)智能終端均已支持振動(dòng)反饋,而振動(dòng)對于游戲來說,可以帶來更豐富的振感效果,
極大的拓展了游戲交互體驗(yàn)。
由于移動(dòng)智能終端的系統(tǒng)、硬件種類繁多,對于一個(gè)游戲振動(dòng)場景來說,要針對各硬件設(shè)備、各平
臺(tái)去適配開發(fā)對應(yīng)的振動(dòng)效果以及與設(shè)備的通信,造成了極大的重復(fù)工作量。并且,由于平臺(tái)以及硬件
的差異,游戲很難實(shí)現(xiàn)出統(tǒng)一標(biāo)準(zhǔn)的振動(dòng)效果。
基于以上問題,本文件定義了獨(dú)立于平臺(tái)和硬件的抽象游戲振動(dòng)效果描述,游戲運(yùn)行時(shí)將游戲振動(dòng)
效果描述轉(zhuǎn)換成設(shè)備振動(dòng)描述的轉(zhuǎn)換協(xié)議,與底層平臺(tái)和設(shè)備的振動(dòng)反饋的交互協(xié)議。
6振動(dòng)觸感反饋系統(tǒng)架構(gòu)
振動(dòng)觸感反饋系統(tǒng)架構(gòu)見圖1。
2
YD/TXXXX—XXXX
圖1振動(dòng)觸感反饋系統(tǒng)架構(gòu)圖
APP應(yīng)用包含可供用戶設(shè)置的振動(dòng)參數(shù),這些振動(dòng)參數(shù)包括應(yīng)用自定義的振動(dòng)波形效果和定制的振
動(dòng)效果庫。振動(dòng)SDK主要功能振動(dòng)效果的播放控制和不同振動(dòng)效果文件的協(xié)議轉(zhuǎn)換。
振動(dòng)內(nèi)核包括振動(dòng)效果描述文件(HE)解碼模塊、振動(dòng)馬達(dá)控制算法模塊、振動(dòng)效果算法模塊以及
振動(dòng)事件處理模塊。
振動(dòng)設(shè)備主要包括不同振動(dòng)特性的馬達(dá)模組。
7振動(dòng)觸感反饋邏輯架構(gòu)
振動(dòng)觸感反饋邏輯架構(gòu)見圖2。
圖2振動(dòng)觸感反饋邏輯架構(gòu)圖
3
YD/TXXXX—XXXX
如圖2所示,振動(dòng)觸感反饋邏輯架構(gòu)包含4個(gè)對象和2個(gè)控制接口:
游戲振感特效:游戲側(cè)實(shí)現(xiàn)的與設(shè)備和平臺(tái)無關(guān)的振感效果抽象描述。一個(gè)振感特效包含至少1個(gè)
振感單元。
振感單元:定義了振動(dòng)持續(xù)時(shí)間、振動(dòng)強(qiáng)度、振動(dòng)頻率、振動(dòng)加速度、振動(dòng)衰減的連續(xù)不間斷振動(dòng)
描述。
中間轉(zhuǎn)換層:負(fù)責(zé)接收用戶設(shè)置的振動(dòng)效果參數(shù),解析游戲的振動(dòng)描述,將振動(dòng)效果參數(shù)轉(zhuǎn)換成設(shè)
備振動(dòng)運(yùn)行時(shí)調(diào)用參數(shù)。轉(zhuǎn)換過程包括對振動(dòng)強(qiáng)度、頻率進(jìn)行縮放。
振動(dòng)運(yùn)行時(shí):各種設(shè)備和平臺(tái)對于振動(dòng)效果的具體實(shí)現(xiàn)。
HEI(HapticEffectsInterface):游戲振動(dòng)特效接口。游戲和轉(zhuǎn)換單元通過該接口實(shí)現(xiàn)振動(dòng)特
效信息的傳遞。請參考附錄A。
HRI(HapticRuntimeInterface):終端驅(qū)動(dòng)硬件振動(dòng)接口。轉(zhuǎn)換單元將游戲?qū)τ谡駝?dòng)特效的描
述信息轉(zhuǎn)換成設(shè)備可用的振動(dòng)參數(shù)后,通過該接口與設(shè)備進(jìn)行交互。
8振動(dòng)效果描述文件格式
HE是以Json格式表示的振動(dòng)效果描述文件。
Metadata數(shù)據(jù)結(jié)構(gòu),見表1:
表1Metadata數(shù)據(jù)結(jié)構(gòu)
Key說明
Version整形,振動(dòng)效果描述文件版本號。
CreatedString字符串,振動(dòng)效果描述文件創(chuàng)建時(shí)間。
DescriptionString字符串,振動(dòng)效果描述文件說明。
Pattern數(shù)據(jù)結(jié)構(gòu),見表2:
表2Pattern數(shù)據(jù)結(jié)構(gòu)
Key說明
Event描述一個(gè)振動(dòng)效果片段,不重疊。Event數(shù)據(jù)格式見表3。
Event數(shù)據(jù)結(jié)構(gòu),見表3:
表3Event數(shù)據(jù)機(jī)構(gòu)
Key說明
Type振動(dòng)效果類型:連續(xù)振動(dòng),短暫振動(dòng)。
RelativeTime整形,相對開始時(shí)間,單位微秒。
Duration整形,振動(dòng)持續(xù)時(shí)間,單位微秒。
Parameters包括振動(dòng)強(qiáng)度“Intensity”,振動(dòng)頻率“Frequency”。
Parameters數(shù)據(jù)結(jié)構(gòu)見表4。
Parameters數(shù)據(jù)結(jié)構(gòu),見表4:
4
YD/TXXXX—XXXX
表4Parameters數(shù)據(jù)結(jié)構(gòu)
Key說明
Intensity整形,振動(dòng)強(qiáng)度[0,100]。
Frequency整形,振動(dòng)頻率[0,100]。
Curve振動(dòng)效果曲線,Curve數(shù)據(jù)結(jié)構(gòu)見表5。
Curve數(shù)據(jù)結(jié)構(gòu),見表5:
表5Curve數(shù)據(jù)結(jié)構(gòu)
Key說明
Time整形,Event的相對時(shí)間,單位微秒。
Intensity浮點(diǎn),對Parameters中的Intensity進(jìn)行修飾,取值范圍為[0,1],與Parameters中的
Intensity相乘。
Frequency整形,對Parameters中的Frequency進(jìn)行修飾,取值范圍為[-100,100],與Parameters
中的Frequency進(jìn)行相加。
HE文件包含以下幾個(gè)部分:
1)Metadata字段部分包括振動(dòng)效果的版本,創(chuàng)建時(shí)間,描述等基本信息;
2)具體的振動(dòng)效果由Pattern字段描述,Pattern字段內(nèi)容是一個(gè)或者多個(gè)Event數(shù)組。每個(gè)Event
描述一個(gè)振動(dòng)效果單元,不重疊;
3)Event振動(dòng)效果單元:
4)Type描述振動(dòng)效果類型:包含兩種類型:持續(xù)的振動(dòng)類型”continuous”。簡短振動(dòng)類型”
transient”。
5)RelativeTime,相對開始時(shí)間,整形數(shù),單位為微秒。
6)Duration,持續(xù)時(shí)間,整形數(shù),單位為微秒。
7)Parameters字段包括振動(dòng)強(qiáng)度(Intensity),振動(dòng)頻率(Frequency),整形數(shù),達(dá)到全部振
動(dòng)所需時(shí)間,衰減時(shí)間等。
8)Curve用來描述持續(xù)動(dòng)態(tài)振動(dòng)效果曲線,實(shí)現(xiàn)動(dòng)態(tài)變化效果的平滑過渡。
9)Curve中Time為相對Event的相對時(shí)間,Intensity對Parameters中的Intensity進(jìn)行修飾,取
值范圍為[0,1],與Parameters中的Intensity相乘。Frequency對Parameters中的Frequency
進(jìn)行修飾,取值范圍為[-100,100],與Parameters中的Frequency進(jìn)行相加。
振動(dòng)描述文件示例,見表6:
表6振動(dòng)描述文件
{
"Metadata":{
"Version":1,
"Created":"2020-07-08",
"Description":"gamehaptic"
},
"Pattern":
[
{
"Event":{
"Type":"continuous",
5
YD/TXXXX—XXXX
"RelativeTime":0,
"Duration":300,
"Parameters":{
"Intensity":80,
"Frequency":50,
"Curve":[
{"Time":0,"Intensity":0,"Frequency":25},
{"Time":100,"Intensity":0.7,"Frequency":-30},
{"Time":200,"Intensity":0.75,"Frequency":40},
{"Time":300,"Intensity":0,"Frequency":50}
]
}
}
},
{
"Event":{
"Type":"transient",
"RelativeTime":400,
"Parameters":{
"Intensity":80,
"Frequency":40
}
}
},
]
}
9振動(dòng)效果執(zhí)行流程
9.1初始化流程
初始化流程見圖3。
圖3振動(dòng)觸感反饋初始化流程
1)游戲應(yīng)用和振動(dòng)中間件進(jìn)行初始化通信;
2)振動(dòng)中間件獲取當(dāng)前設(shè)備是否支持振動(dòng)以及獲取振動(dòng)支持參數(shù)信息;
3)振動(dòng)設(shè)備返回振動(dòng)支持參數(shù)信息;
4)振動(dòng)中間件將獲取到的振動(dòng)支持信息發(fā)送給游戲應(yīng)用,
注:其中振動(dòng)支持信息包括:
高品質(zhì)振動(dòng):支持HE格式文件,支持自定義振動(dòng)頻率、強(qiáng)度,并且振動(dòng)的時(shí)延、頻率和強(qiáng)度的誤差在一
定范圍之內(nèi);
6
YD/TXXXX—XXXX
普通振動(dòng):不支持HE格式文件,不支持自定義復(fù)雜振動(dòng)效果;
不支持振動(dòng);
9.2振動(dòng)效果播放流程
振動(dòng)效果播放流程見圖4。
圖4振動(dòng)效果播放流程
1)游戲發(fā)起獲取設(shè)備振動(dòng)能力請求;
2)振動(dòng)中間件獲取設(shè)備振動(dòng)能力信息;
3)設(shè)備返回所支持的振動(dòng)能力信息;
4)游戲應(yīng)用將振動(dòng)描述信息發(fā)送給振動(dòng)中間件;振動(dòng)描述信息用于描述不同游戲場景中的振動(dòng)效
果以及對應(yīng)各個(gè)游戲場景的振動(dòng)縮放參數(shù);
5)振動(dòng)中間件響應(yīng)游戲發(fā)送的振動(dòng)描述信息根據(jù)設(shè)備的振動(dòng)能力信息和不同游戲場景下的振動(dòng)
描述信息,獲取振動(dòng)執(zhí)行信息;
6)振動(dòng)中間件調(diào)用設(shè)備游戲振動(dòng)特效接口根據(jù)振動(dòng)執(zhí)行信息播放游戲振動(dòng)特效。
10振動(dòng)效果評估方法
10.1振
動(dòng)
執(zhí)
行
流
程
7
YD/TXXXX—XXXX
圖5振動(dòng)執(zhí)行流程
振動(dòng)執(zhí)行流程如圖5所示。
當(dāng)振動(dòng)啟動(dòng)時(shí),游戲設(shè)備向游戲服務(wù)器發(fā)送與當(dāng)前游戲場景相關(guān)的振動(dòng)指令,游戲服務(wù)器根據(jù)該振
動(dòng)指令確定待傳輸?shù)睦碚撜駝?dòng)描述文件,調(diào)用接口進(jìn)行統(tǒng)一文件封裝,調(diào)用游戲設(shè)備解析封裝后的理論
振動(dòng)描述文件并產(chǎn)生振動(dòng)。
游戲驅(qū)動(dòng)振動(dòng)馬達(dá)產(chǎn)生振動(dòng)(如循環(huán)振動(dòng)或單個(gè)振動(dòng)過程中不同振幅和不同頻率的振動(dòng)),振動(dòng)結(jié)
束觸發(fā)振動(dòng)事件的結(jié)束。然后,游戲設(shè)備向游戲服務(wù)器報(bào)告實(shí)際的振動(dòng)數(shù)據(jù),最后振動(dòng)停止。
從游戲調(diào)用下發(fā)振動(dòng)指令到終端設(shè)備接受到指令到解析指令產(chǎn)生振動(dòng),整個(gè)鏈路受多個(gè)因素的影響。
振動(dòng)指令下發(fā)到設(shè)備根據(jù)振動(dòng)指令產(chǎn)生振動(dòng)效果主要分一下幾個(gè)階段:
——調(diào)用振動(dòng)接口;
——振動(dòng)接口統(tǒng)一轉(zhuǎn)換協(xié)議格式;
——調(diào)用設(shè)備驅(qū)動(dòng);
——下發(fā)底層解析格式根據(jù)定義產(chǎn)生振動(dòng)。
10.2振動(dòng)延時(shí)場景
振動(dòng)延時(shí)場景包括:
——硬件啟動(dòng)延時(shí);
——應(yīng)用和系統(tǒng)通信延時(shí);
——振動(dòng)效果處理延時(shí)。
10.3振動(dòng)效果評估指標(biāo)
圖6振動(dòng)效果評估流程
使用游戲?qū)嶋H振動(dòng)產(chǎn)生的曲線和基準(zhǔn)振動(dòng)曲線的擬合度作為實(shí)際振動(dòng)效果的衡量標(biāo)準(zhǔn),振動(dòng)效果評
估流程見圖6。
如圖7游戲內(nèi)自定義振動(dòng)文件實(shí)時(shí)產(chǎn)生的曲線圖和終端設(shè)備期望產(chǎn)生的基準(zhǔn)振動(dòng)曲線圖,根據(jù)兩個(gè)
曲線的擬合度來計(jì)算整個(gè)交互過程中的振動(dòng)效果和理論值之間的吻合性。用Hausdorff算法計(jì)算兩者之
間的相似度。
8
YD/TXXXX—XXXX
圖7振動(dòng)效果擬合示意圖
對采集到的振動(dòng)數(shù)據(jù)進(jìn)行擬合,計(jì)算出強(qiáng)度(或頻率)的變換點(diǎn),然后再和基準(zhǔn)曲線進(jìn)行對比得出
強(qiáng)度(頻率)響應(yīng)的延遲或拖尾時(shí)長。
獲取到各個(gè)點(diǎn)的延遲或拖尾后,對基準(zhǔn)曲線(原始數(shù)據(jù)非擬合曲線)進(jìn)行X軸偏移和縮放,得到實(shí)
際振動(dòng)強(qiáng)度(頻率)曲線。同時(shí),根據(jù)基準(zhǔn)曲線的轉(zhuǎn)折點(diǎn)把實(shí)際曲線拆分為多段。
相對強(qiáng)度(頻率):
強(qiáng)度
最大強(qiáng)度
?=
2
公式(1)中:2