【问题标题】:Using DualShock 4 from OS X从 OS X 使用 DualShock 4
【发布时间】:2015-03-28 18:12:46
【问题描述】:

一时兴起,我买了一个 Sony DualShock 4 Wireless 游戏控制器。将控制器与我的 mac 配对很容易。控制器在 OpenEmu 中按预期工作。

现在我想在自己的游戏中使用控制器。在 XCode 操场上,我试过这个:

import Cocoa;
import GameController;

print(GCController.controllers())
print(GCController.controllers().count)

输出是: [] 0

这意味着 DualShock 控制器没有注册为 GCController。

应该吗?

在调用控制器之前是否需要进行某种初始化?

一个例子是 Objective-C 或 Swift 会受到欢迎。

【问题讨论】:

  • 你有没有想过这个问题?
  • 是和不是。 Apple 的框架不支持 DualShock 4 控制器。我在这里有一些代码参考了更多信息。代码的一般结构似乎没问题 - 但我认为有一个错误 - 某处......github.com/soegaard/dualshock4/blob/master/dualshock4.rkt

标签: macos swift playstation


【解决方案1】:

这里有一个教程:http://www.raywenderlich.com/forums/viewtopic.php?f=21&t=10339,但这似乎表明 GameController 框架不支持 DualShock 4。

请参阅 Apple 文档,我将从这里开始:https://developer.apple.com/library/mac/documentation/ServicesDiscovery/Conceptual/GameControllerPG/DiscoveringControllers/DiscoveringControllers.html,其中解释了如何发现和连接到控制器。

【讨论】:

  • 感谢您的链接。 Ray Wenderlich 的博客文章的 cmets 表明问题在于 GameController 框架支持 DualShock 4 控制器。文档说调用类方法controllers,这就是我在示例中所做的。据我所知,其他方法旨在用于获取有关稍后添加或删除的控制器的信息。
  • “支持”->“不支持”
【解决方案2】:

看起来好像DualShock 4 support was added to the Game Controller framework in 2019。这在 macOS 11.1 上对我有用。

但是,控制器似乎没有出现在对GCController.controllers() 的初始调用中。您需要注册GCControllerDidConnect 通知,然后控制器将显示(适用于 USB 和蓝牙连接)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多