2016-05-25 4 views
0

デスクトップ版では、キャラクターの腕がマウスの動きに合わせて回転します。私はモバイル版で同じことが必要ですが、私は彼の腕を回転させるためにジョイスティックが必要です。どうやってやるの?2Dゲームでジョイスティックでプレイヤーの腕を回転させるにはどうすればいいですか?

enter image description here

//Here is my code, for rotating arm 
void Update() 
{ 
    float horizontal = Input.GetAxis("Joy Y") * Time.deltaTime; 
    float vertical = Input.GetAxis("Joy X") * Time.deltaTime; 
    float rotZ = Mathf.Atan2(horizontal, vertical) * Mathf.Rad2Deg; 
    transform.rotation = Quaternion.Euler(0f, 0f, rotZ); 
} 

私は今プレイヤアームはなく、今回は別の問題がある回転しているため、コードを少し変更されています。私がジョイスティックで動こうとすると、アームが予想外の動きをしています。ジョイスティックがマウスに混じっていると思います。私はそれをどのように分離するのか分からない?

+0

これは実際にはスタックオーバーフローに関する質問には広すぎます。少なくとも、あなたはそのような種類のモバイルコントロールを作成するためのチュートリアルを読んで、自分でそれを実装しようとするべきです。もしあなたが立ち往生し、あなたの最善の努力にもかかわらず解決策を見つけることができないなら、それはあなたがこのサイトで質問をするべきときです。 – Serlite

+0

@Serlite私は本当に不思議です、どのように解決策を試していないことをあなたは理解しましたか?そして、私の質問で理解できなかった場所があるかどうか特定の質問をするべきです。 – komtan

+0

残念ながら、あなたは元の質問に以前の試みの証拠を提供していません。あなた自身でこの問題に取り組む努力をしているなら、[mcve]であなたの最善の試みを提供してください。次に、コードが意図した目的と、その要件を満たさない方法について説明します。あなたの質問は理解できますが、Stack OverflowのQ/A形式で答えることができるように、これらの種類の詳細が欠けています。 – Serlite

答えて

1

JoyStick次にJoyStickコードでマウスコードを置き換えます。

Unityには、それを実行できるCrossPlatformInputManagerというAssetsがあります。それを使用するには、インポートして少し変更する必要があります。インポート方法を理解するには、thisをご覧ください。

ここでInput.GetAxisInput.GetAxisRawの機能をCrossPlatformInputManager.GetAxis("Horizontal")CrossPlatformInputManager.GetAxisRaw("Horizontal")に置き換えることができます。

これを動作させると、以下のコードをモバイルとデスクトップの両方と互換性を持たせることができます。

#if UNITY_EDITOR || UNITY_STANDALONE || UNITY_WEBGL 
//put your Input.GetAxis` and `Input.GetAxisRaw` code here 
#elif UNITY_ANDROID || UNITY_IOS 
//Put your `CrossPlatformInputManager.GetAxis("Horizontal")` and `CrossPlatformInputManager.GetAxisRaw("Horizontal")`. here 
#endif 
+0

まず、私の質問に答えてくれてありがとう、ジョイスティックの情報をインポートしましたが、残念ながら私はそれを取得していませんでした。だからあなたがより多くを助けることができる:) @プログラマー – komtan

+0

@ komtan私はあなたのコードがどのように見えないので、私は本当に何かを助けることができない。マウスからの入力を取得し、2Dオブジェクトを制御するコードを投稿しなければなりません。そして、それを直接翻訳するのに役立ちます。さもなければ私はあなたのスクリプトがどのように見えるかわかりません。 – Programmer

+0

アームを回転させるコードを追加しました。 – komtan

関連する問題