GoCube Unity 插件是一组 C# 类,它们构成了 Unity 与本机 Android™ 和 iOS™ 之间的桥梁。 Unity 可以向下调用每个平台的 GoCube 命令的本机代码,并从本机代码向上接收到 Unity 的回调。使用该插件的最简单方法是从我们创建的示例开始。
Notice: The GoCube Unity Plugin only works with Android and iOS.
连接到 GoCube,然后它将显示一个虚拟立方体,该虚拟立方体是物理立方体的镜像。该示例包含一些简单的 API 调用。
只需打开 Unity 项目并选择包含“Assets”和“ProjectSettings”文件夹的文件夹。打开GoCubeConnectionScene场景(切换到Android或iOS平台)并运行示例。
打开 Unity 并选择“文件”->“新建项目”。
接下来,将BLE
、 Particula
和Plugins
目录从GoCubeUnityPlugin
拖到您的 Unity 项目中。
我们为您创建了处理 iOS 和 Android 上 GoCube 连接的脚本。我们需要创建的第一个场景是 GoCubeConnectionScene。大多数时候,这是您第一次启动应用程序时应该弹出的场景。
首先选择 File -> New Scene,并将其另存为GoCubeConnectionScene
。您需要做的就是找到项目中Assets/Particula/Prefabs
目录中的GoCubeConnection
预制件。将预制件拖到场景中。
注意- Next Scene
游戏对象是您希望 Unity 在 GoCubeConnectionScene 完成后加载的场景名称的字符串。连接GoCube后会前往场景。
不幸的是,目前该 SDK 仅支持 C#。
上一个场景将处理 GoCube 连接。连接 GoCube 后,您的项目可以通过GoCubeProvider
单例类访问它。通过以下调用访问它们:
C#
IOnlineCube connectedGoCube = GoCubeProvider.GetProvider().GetConnectedGoCube();
如果没有连接GoCube,该参数将为空。
这些功能在两个移动平台上都可以正常运行。
打开 GoCube LED 图案(C#):
// Open GoCube leds (pattern 1)
connectedGoCube.PlayLedPattern(LedPattern.Pattern1);
获取立方体是否已解 (C#):
// Get if the cube is solved or not
connectedGoCube.IsSolved()
您可以在 IOnlineCube 类中查看更多命令。完整文档位于/Assets/Plugins/Particula/Particula.GoCube.xml
GoCube SDK 允许您通过在旋转执行后收到通知来实时跟踪立方体旋转。方法是注册立方体旋转事件:
connectedGoCube.afterRotation += RotationEvent;
当您不再需要该通知时,请记住取消注册该通知。
connectedGoCube.afterRotation -= RotationEvent;
接收数据并用它做任何你喜欢的事情。每条消息都有一个已轮换的唯一面部 ID。
private void RotationEvent(Rotation rot)
{
// You can do your stuff here....
}
GoCube Unity 插件根据 ParticulaCode 源代码许可证分发。
Android™ 是 Google Inc 的注册商标| iOS™ 是 Apple 的许可商标