【问题标题】:How do I simulate the joystick of a PS4 controller on a PC using C#?如何使用 C# 在 PC 上模拟 PS4 控制器的操纵杆?
【发布时间】:2020-11-06 03:34:09
【问题描述】:

我一直在创建一个在计算机上玩游戏的程序,但控件在我的手机上。 但是,我不知道如何模拟摇杆,所以我在网上搜索。

In this website,有人说我需要制作自己的设备驱动程序来模拟它,但是在this website(解决方案2)中,它说你可以使用Joystick Notification Messages来做到这一点。我查了一下,好像只支持C++,不支持C#。

This previous website(解决方案 1)也表示你可以通过伪装 rs232 串口来做到这一点,但我不知道这是什么意思,我也没有工具来做到这一点。

我在程序中使用了 Unity,所以我想,如果我在 Unity 论坛上发帖,我会得到答案。结果,我没有得到答案。 (link to my thread on the forum)

有什么方法可以使用 C# 模拟 PS4 控制器的操纵杆,最好不用外部程序和设备驱动程序,还是我卡在使用 vJoyViGEm

提前致谢!

【问题讨论】:

  • 你必须自己考虑这个,否则可能没用,但以防万一。您可以自己编写一个函数,该函数在不同的轴上返回从 -1 到 1 的值,以累积按钮输入的数量。您在操纵杆转动两个轴上有 x 和 y 值,其中 (0, 0) 是空闲操纵杆位置。例如,您可以使用上、下、左、右箭头处理从 -1 到 1 的这两个静态值。
  • 哦,我也忘了说我无法访问我正在玩的游戏的源代码,所以我无法修改它的工作方式。唯一的方法是模拟 PS4 操纵杆输入。

标签: c# unity3d emulation device-emulation


【解决方案1】:

我最终使用了与 C# 兼容的ViGEm。 ViGEm 是一个支持 XBOX 360 和 PS4 控制器的 C# 游戏手柄模拟程序。
我使用 ViGEm 而不是 vJoy 的原因是因为 ViGEm 有更简单的说明和论坛。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-06
    • 1970-01-01
    • 2016-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-14
    • 2019-12-03
    相关资源
    最近更新 更多