【急募】C#でビルドインライブラリだけでゲームパッド入力の検知を行う方法を求む
■ このスレッドは過去ログ倉庫に格納されています
キー入力を検知する方式を使って
joyTokeyと組み合わせようかなと思ったけど
正攻法でいけるならそれに越したことはない 調べたらDirectX用のライブラリが必要みたいだね そうなの。でもそれが.csxで使えん
オブジェクト参照かおぶしぇくとインスタンスに設定されてませんって言われる using System;
using System.IO;
using static NxInterface.NxCommand;
using static SharpDX;
using static SharpDX.DirectInput;
// DirectInput
DirectInput dinput = new DirectInput();
// ゲームパッド
Joystick joystick = null;
// 使用するゲームパッドのID
Guid joystickGuid = Guid.Empty;
// 見つかった場合
if (joystickGuid != Guid.Empty)
{
// ゲームパッドの取得
joystick?.Dispose();
joystick = new Joystick(dinput, joystickGuid);
// ゲームパッドが取得できた場合
if (joystick != null)
{
// バッファサイズを指定
joystick.Properties.BufferSize = 128;
// ジョイスティックの軸の最小値と最大値を -1000〜+1000に設定
foreach (DeviceObjectInstance deviceObject in joystick.GetObjects())
{
switch (deviceObject.ObjectId.Flags)
{
// 絶対軸または相対軸
case DeviceObjectTypeFlags.Axis:
case DeviceObjectTypeFlags.AbsoluteAxis:
case DeviceObjectTypeFlags.RelativeAxis:
var ir = joystick.GetObjectPropertiesById(deviceObject.ObjectId);
if (ir != null)
{
try
{
ir.Range = new InputRange(-1000, 1000);
}
catch (Exception) { }
}
break;
}
}
}
} コードこんな感じ。
VSでコンソールアプリで作ってライブラリをNgetで入れてstatic消してみたバージョンでやってもエラーでる。
.cxsって調べもあんま文献でてこなくて
C♯インタプリタやるためのやつだから極論拡張子何でも良いってでてきたし
.csをcsxに拡張子変換しただけなんやけど
これだと問題あったりする? なんで、joystickGuidをEmptyで初期化して、empty以外を期待してるんだ NxマクロコントローラってSWITCH自動化のためのソフトウェアがあるんだけど
ゲームパット入力検知機能が実装されてないから自分で.csxを作って実装する必要がある。 csxよくわかんらんけどググったらスクリプトの先頭で#rでアセンブリ参照を明示的に書くって出てきた ■ このスレッドは過去ログ倉庫に格納されています