3DTouch在Unity遊戲開發中的乙個坑

2021-07-24 12:53:04 字數 880 閱讀 3797

遊戲測試過程中有這樣乙個反饋, 按住控制角色行走, 當按住觸控螢幕左鍘邊緣部位時, 有時會有1秒左右的延遲. 很是影響遊戲的體驗.

多次測試後, 具體表現為

1. 支援3dtouch的裝置才有這個問題, iphone6s/iphone7, 其它裝置沒有這個問題

2. 這些裝置關閉3dtouch功能後, 問題就消失了

所以問題就在於3dtouch上了. 15年10月, 蘋果推出這項技術後, 其中乙個使用小技巧就是

在豎屏模式下. 任意介面在螢幕左側邊緣處使用3d touch輕按後再次重按或向右滑動至螢幕中部即可啟用多工介面。

正是這個系統級的判定, 導致了這一遊戲或應用中的問題.

寄希望於使用者去手動關閉這個功能, 不能算是個解決方式

好的方式是: 取到視窗物件的uigesturerecognizer, 設定它的delaystouchesbegan為false

在unity下具體操作方式為

在 unity 外掛程式目錄下建立以下檔案:

@end

- (void) prestartunity

}@end

將其修改為:

這樣一來,每次 build 專案都需要手動去修改這個常量,豈不是自找麻煩。其實完全可以利用 objective-c 的特性來自動完成這個操作。

\+(void)load; \

@end \

+(void)load \

\@end

完畢!

3d touch 的使用 一

廢話不多說,直接上 在方法裡面判斷,該手機是否是9.0以上,因為3dtouch是9.0以後出的功能 cgfloat currentdeviceversionfloat uidevice currentdevice systemversion floatvalue 判斷版本號,3d touch是從io...

3D Touch整合過程整理

在啟動方法裡加入3d touch選單 else return yes pragma mark 建立3d touch選單 void createitem pragma mark 桌面圖示3dtouch按壓後選單的事件 if s edata getvaluefromsettingwithname log...

iOS開發 3D Touch簡要總結

3d touch是ios9推出的適用於iphone6s plus 包括剛出的iphone7 plus 以上的機型的功能。開發主要有4個方面 主介面快捷選單功能 home screen quick action 預覽圖和重擊功能 uikit peek and pop web view預覽鏈結的頁面 w...