我正在製作2D遊戲。手機水平放置,角色向左/向右上移/下移&以避開障礙物。該角色由手機上的加速計控制。如果玩家不介意(0,0)
(角色靜止不動),那麼一切都可以正常工作。在這種情況下,可以直接讀取Y和X值並使用它們來控制字符。加速度計的值在-10到10之間(它們乘以加速度常數以決定字符的移動速度),libgdx
是使用的框架。爲2D遊戲校準3D加速度計
問題是,有(0,0)
不是很舒服,所以這個想法是校準它,以便0,0將被設置爲在特定時間點的手機位置。
這使我想到我的問題,我該怎麼做?我試着讀取當前的X和Y值,然後減去它。問題在於,當手機保持在90度角度時,X偏移值爲10(這是最大值),因此最終無法移動,因爲該值永遠不會超過10(10-10 = 0
)。 Z軸必須在這裏發揮作用,我只是不知道如何。
感謝您的幫助,我試着盡我所能解釋,我嘗試尋找解決方案,但我甚至不知道我所尋找的東西是什麼。