O plug-in GoCube Unity é um grupo de classes C# que formam uma ponte entre o Unity e nosso Android™ e iOS™ nativos. O Unity pode chamar o código nativo de cada plataforma para comandos GoCube e receber retornos de chamada do código nativo para o Unity. A maneira mais fácil de começar com o plugin é começando com o exemplo que criamos.
Notice: The GoCube Unity Plugin only works with Android and iOS.
Conecte-se a um GoCube e ele exibirá um cubo virtual que é um espelho do cubo físico. O exemplo contém algumas chamadas de API fáceis.
Basta abrir um projeto Unity e selecionar a pasta que contém as pastas ‘Assets’ e ‘ProjectSettings’. Abra a cena GoCubeConnectionScene (mude para a plataforma Android ou iOS) e execute o exemplo.
Abra o Unity e comece escolhendo Arquivo -> Novo Projeto.
Em seguida, arraste os diretórios BLE
, Particula
e Plugins
do GoCubeUnityPlugin
para o seu projeto Unity.
Criamos scripts para você que tratam da conexão de um GoCube no iOS e Android. A primeira cena que precisamos criar é GoCubeConnectionScene. Na maioria das vezes, esta é a cena que deve aparecer quando você inicia o aplicativo pela primeira vez.
Comece escolhendo File -> New Scene e salve-o como GoCubeConnectionScene
. Tudo o que você precisa fazer é localizar o pré-fabricado GoCubeConnection
que está no diretório Assets/Particula/Prefabs
do seu projeto. Arraste o pré-fabricado para a cena.
Nota - O objeto de jogo Next Scene
é uma string com o nome da cena que você deseja que o Unity carregue após a conclusão do GoCubeConnectionScene. Ele prosseguirá para a cena depois de se conectar ao GoCube.
Infelizmente, este SDK só é compatível com C# no momento.
A cena anterior tratará das conexões GoCube. Depois que um GoCube é conectado, seu projeto tem acesso a ele por meio da classe singleton GoCubeProvider
. Acesse-os por esta chamada:
C#
IOnlineCube connectedGoCube = GoCubeProvider.GetProvider().GetConnectedGoCube();
Este parâmetro será nulo se nenhum GoCube estiver conectado.
Essas funções funcionarão bem em ambas as plataformas móveis.
Padrões de led abertos do GoCube (C#):
// Open GoCube leds (pattern 1)
connectedGoCube.PlayLedPattern(LedPattern.Pattern1);
Obtenha se o cubo está resolvido ou não (C#):
// Get if the cube is solved or not
connectedGoCube.IsSolved()
Existem mais comandos que você pode conferir na classe IOnlineCube. A documentação completa está em /Assets/Plugins/Particula/Particula.GoCube.xml
O GoCube SDK permite rastrear as rotações do cubo em tempo real, recebendo uma notificação assim que uma rotação for realizada. A maneira de fazer isso é registrar-se no evento de rotação do cubo:
connectedGoCube.afterRotation += RotationEvent;
Lembre-se de cancelar o registro para receber a notificação quando não precisar mais dela.
connectedGoCube.afterRotation -= RotationEvent;
Receba os dados e faça o que quiser com eles. Cada mensagem possui um ID de rosto exclusivo que foi alternado.
private void RotationEvent(Rotation rot)
{
// You can do your stuff here....
}
O plug-in GoCube Unity é distribuído sob a licença de código-fonte ParticulaCode.
Android™ é uma marca registrada da Google Inc | iOS™ é uma marca registrada licenciada da Apple