前提・実現したいこと
Unityで作成したiPhoneのアプリを、PS4のDualShock4(以下DS4と呼びます)で操作したいです。
下記において何か足りていない設定などがあるのか、ご教授いただけると助かります。
よろしくおねがいします。
発生している問題・エラーメッセージ
DS4の○×△□を押すと、ログを出力するだけのコードで実験のテストをしています。 しかし、どのボタンも反応せずXcode上にログがしません。
該当のソースコード
using System.Collections; using System.Collections.Generic; using UnityEngine; public class DualShock4TestController : MonoBehaviour { // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { if(Input.GetButtonDown("Fire_0")){ Debug.Log("Pressed DS4 square button."); } if(Input.GetButtonUp("Fire_1")){ Debug.Log("Pressed Up DS4 cross button."); } if(Input.GetButtonDown("Fire_2")){ Debug.Log("Button Pressed DS4 circle button."); } if(Input.GetButtonDown("Fire_3")){ Debug.Log("Pressed DS4 triangle button."); } // iPhoneのタップが反応するかの実験コード if(Input.GetMouseButtonDown(0)){ Debug.Log("Pressed Enter button."); } } }
ProjectSettingのInputManagerは以下で設定しています(1つだけ代表してSquareボタンのキャプチャ貼らせていただきます)
試したこと
<実験1>同じ自作のコードを、MacとDS4で実験すると、動作します。
結果考察: 自作のソースコード自体は合っていると思われる
<実験2>DS4とiPhoneをBTで接続し、AppleStoreからGPCheckerというアプリをDownloadし、そのアプリ上ではコントローラのボタンが反応し、正しく動くことは確認できました。
結果考察: DS4とiPhoneのBT接続自体は、動作しており、コントローラは故障していないことがわかります。
DS4の電池もフル充電しています。
補足情報(FW/ツールのバージョンなど)
・ソースコードはUnityで作成しています。xCode経由でiPhoneに送っています。
・使っているiPhoneはiOS 14.0.1 (iPhone11)です。
・UnityはUnity 2019.4.2f1
・DS4はPS4を購入したときについてきたものです。
あなたの回答
tips
プレビュー