Build Unity* e Android para a arquitetura Intel

Abhishek Nandy
CEO na Geek Monkey Studios

Nesse artigo tentarei abordar o Unity com os passos para uma build Android para a arquitetura Intel.

Por favor, leve em conta que é esperado um nível intermediário de familiaridade com C# e com o Unity para acompanhar esse tutorial

Vamos começar!

O que é o Unity?

  • O Unity é uma engine de jogo fácil de ser aprendida e de se trabalhar para transformar suas ideias em ação.
  • Ele suporta C#, Javascript, and Boo
  • Ele permite que você desenvolva uma vez só, e distribua para múltiplos objetivos.

Unity e Intel

Na Unite 2014 houve o grande momento do acordo firmado entre a Intel e a Unity Technologies para suportar a build x86 para o Unity. A partir do Unity 4.6, há agora suporte nativo para a plataforma x86.

Obtendo os recursos

Unity - link para download:

https://unity3d.com/get-unity/download (direciona para a última build)

Recursos Unity e Intel - link para obter os recursos para esse tutorial:

https://software.intel.com/pt-br/articles/unity

Vá adiante com a Intel® Developer Zone

Quais as vantagens da Intel Developer Zone? Há múltiplas vantagens na Intel Developer Zone, as mais importantes sendo as muitas ferramentas para código aberto, recursos de código para você começar, e uma seção exclusiva para jogos.

Para prosseguir na Intel Developer Zone, precisamos fazer duas coisas:

  1. Registre-se na Intel Developer Zone
  2. Prossiga para a seção Game Dev (veja a captura de tela abaixo) https://software.intel.com/pt-br/gamedev

Vamos avançar no Unity

Recursos importantes:

Passo-a-passo:

Abaixo acrescentamos as esferas na cena:

Eu utilizei o Touch Script (https://www.assetstore.unity3d.com/en/#!/content/7394).

Daí nós adicionamos o script de características às esferas. Abaixo está o script necessário para dividir os cubos ou esferas:

using TouchScript.Gestures;

public class Breaker : MonoBehaviour
{
    public Transform CubePrefab;
    public float Power = 10.0f;

    private Vector3[] directions = {
                                       new Vector3(1, -1, 1),
                                       new Vector3(-1, -1, 1),
                                       new Vector3(-1, -1, -1),
                                       new Vector3(1, -1, -1),
                                       new Vector3(1, 1, 1),
                                       new Vector3(-1, 1, 1),
                                       new Vector3(-1, 1, -1),
                                       new Vector3(1, 1, -1)
                                   };

    private void Start()
    {
        GetComponent<tapgesture>().StateChanged += HandleStateChanged;
    }

    private void HandleStateChanged(object sender, TouchScript.Events.GestureStateChangeEventArgs e)
    {
        if (e.State == Gesture.GestureState.Recognized)
        {
            if (transform.localScale.x > 0.05f)
            {
                Color color = new Color(Random.value, Random.value, Random.value);
                for (int i = 0; i < 8; i++)
                {
                    var c = Instantiate(CubePrefab) as Transform;
                    c.parent = transform.parent;
                    c.name = "Cube";
                    c.localScale = 0.5f*transform.localScale;
                    c.position = transform.TransformPoint(c.localScale.x/10.0f*directions[i]);
                    c.rigidbody.velocity = Power*Random.insideUnitSphere;
                    c.renderer.material.color = color;
                }
            }
            Destroy(gameObject);
        }
    }
}

Salvando a cena

Compilando o projeto

Agora vamos selecionar como objetivo a compilação para Intel x86 Se escolhemos essa opção, ela será gerada para todos os destinos Android.

E finalmente, vamos mostrar como criamos o APK:

Conclusão

Por seguir os passos delineados acima você está preparado para criar um projeto Unity direcionado para a arquitetura Intel.

Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.