2015-08-29 69 views
-1

在我的遊戲中,我有我的主要對象,一個滑水板,當觸摸屏幕時,它將潛入水中。我設法使用Box2d和一些浮力來編碼滑水跳水。但是當摩托艇在水下時,它只會升到水面並停留在那裏。簡而言之:摩托艇不會跳躍。我想盡快應用部隊,因爲滑翔機在表面上。問題在於,這支部隊將會是一股持續不變的力量,而忽略了摩托艇的深度(摩托艇越深,它應該升高越快)。 有沒有其他方法可以做到這一點? 這就是我想要的那種東西:https://www.youtube.com/watch?v=b2t_zMOy5SM跳出水體的動態身體

回答

1

在新的信息我收集了你的意見,我想你有編碼這個例子麻煩......

  1. 你的身體總是surfes在水面上。
  2. 如果按給定的按鈕你的身體應該潛下心
  3. 當您按住此按鈕始終保存深度
  4. 如果鬆開按鈕:setLinearVelocity到X
  5. 如果你達到了空氣,申請一次linearVelocityForce根據你的深度。

你如何實施這取決於你。

,因爲我可以從視頻中看到你上傳到YouTube,你可能有這個問題:
4:
因爲我看不到你給我們的任何代碼,我猜測你每一步申請的線速度,直到你到達空中(這導致大量的線速度=傳送像運動一樣)
或者你設置將你的身體轉換到一個給定的座標。

我能想到的最簡單的想法是將linearVelocity設置爲給定的數量(嘗試和錯誤,直到你感到高興)。因爲,如果你不深入潛水,你會立刻有最大上升速度,直到你達到空氣,並在這個確切點(5) 你施加的力量。

+0

這個問題是,它導致了一種傳送運動...是否有可能加速身體? – jobr97

+0

爲什麼傳送?如果不加快速度,它就不應該傳送。如果水上飛機出水,它不會以全速運動,只需要一點速度......就像10/100 ..而且,真正的物理學必須適用。喜歡跳水。我想你有apllyLinearImpulse(也許經常被稱爲/大力量)的一些問題 – Keey

+0

這就是我的意思:https://youtu.be/DbzeDPTDTjo – jobr97