(:3[kanのメモ帳]スマートフォン用の表示で見る(:3[kanのメモ帳]個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。Personalはじめに前回の記事で自家製ジョイスティックを紹介しました。今回は始点が移動するタイプのご紹介!イメージは以下のような感じ。Stickの画像を透明にすれば、UIを表示せずに操作することも可能です。ちなみにNGUIでも似たようなものを作ってました。Joystick.csさっそくコードです。前回同様、Joystick.csが本体でJoystickEditor.csはJoystickのinspectorの表示を拡張するスクリプトです。これまた前回同様、コードの説明は長くなりそうなので省略します。このジョイスティックを使うにはTouchEventHandlerとSingletonMonoBehaviourが必要になります。SingletonMonoBehaviourについては以下の記事TouchEventHandlerについては以下の記事を参照のこと。使うにはまず、Joystick.csJoystickEditor.cs,TouchEventHandlerSingletonMonoBehaviourを作成し、JoystickEditor.csをEditorフォルダに入れます。次にHierachy上でCanvasを作ります。この時、同時にEventSystemも作られるはずです。作成したCanvasに下に空のGameObjcetを作成、ここでは分かりやすいように名前をJoystickにしています。このJoystickにJoystick.csを追加すると、Initというボタンが表示され、それを押すと自動でStickというオブジェクトが生成されますこのStickが操作する部分です。最初は画像が設定されていないので、任意の画像を設定しましょう。Stickの土台を表示したい場合はStickより上にImageを作成します。TargetはOffにします。Joystickのより上、canvasの真下にTouchEventHandlerとタッチイベントを取得する範囲を設定するためのImageをAddしたオブジェクトをUIの一番後ろに配置します。Targetにチェックを入れる事です。ColorのAを0にして透明にした方が良いかと思います。動かしてみる前回同様、Joystickを使ってキューブを動かしてみます。以下がそのコードです。}}上記の通りJoystickのPositionを使って操作を行います。Positionのxとyは操作に応じて-1~1の間を変動します。これはInspectorに表示されているPositionと同じ値です。このMovingCube.csをCubeに付けて、先ほどのJoystickをInspector上で設定します。一応、ジョイスティックの設定方法の説明をば。タッチできる範囲はStickの画像ではなく、JoystickのWidthとHeightで決まります。次にStickの移動半径はInspector上で変更できます。Sceneビューで範囲を確認することもできます。半径を変えてもPositionのxとyが-1~1の値を取るのは変わりません。若干ややこしくなりましたが、そこそこ使い易いかと思います。はてなブログPro個人ゲーム開発者。ω、)_新作は札束風呂VRや神巫女。Policy広告はてなブログをはじめよう!kan_kikuchiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。