Cursos / Jogos Digitais / Desenvolvimento com Motores de Jogos II / Aula

arrow_back Aula 02 - Entradas do jogador e movimento

Adicionando movimento em um objeto - pt.2

Nomeie o script para “MoveObjeto” e pressione Enter. Isso fará com que um script C# em branco (na verdade com um código padrão) seja adicionado nos seus Assets, os quais são os componentes do seu jogo. Na Figura 6 você pode ver o script adicionado com sucesso na pasta Assets. Com o novo script criado clique duas vezes nele para abrir no MonoDevelop.

Figura 06 - Script C# adicionado ao projeto.
Script C# adicionado ao projeto.
Fonte: Captura de tela do Unity.https://unity3d.com/pt/. Acesso em: 24 de fev de 2017.

Atenção

O Unity suporta tanto o MonoDevelop quanto o Visual Studio como editor de código fonte. Nesse curso iremos utilizar o MonoDevelop mas todos os código apresentados também podem ser escritos no Visual Studio sem problema algum. Para modificar o editor padrão de códigos de Unity vá no menu Edit->Preferences, escolha a opção “External Tools” e lá a propriedade “External Script Editor” pode ser alterada entre o MonoDevelop e o Visual Studio (se esse estiver instalado na sua máquina). A escolha do editor é totalmente de sua livre opção.

Assim que você der um duplo clique no script MoveObjeto.cs ele abrirá no editor, como mostrado na Figura 7.

Figura 07 - Script aberto no editor MonoDevelop.
Script aberto no editor MonoDevelop.
Fonte: Captura de tela do Unity.https://unity3d.com/pt/. Acesso em: 24 de fev de 2017.

Observe que inicialmente o seu script já vem com algum código. Basicamente o Unity já adiciona três namespaces comumente utilizados com a diretiva “using”. Namespaces é um modo de organizar as classes em C# em grupos designados com um nome único, de modo a evitar ocorrerem problemas, como conflitos de nomes. Usando a diretiva “using” em um arquivo .cs, você está informando ao compilador que deseja acessar as classes daquele namespace sem precisar digitar o caminho completo para se referenciar ao seu nome. Os namespaces adicionados são System.Collections, System.Collections.Generic e UnityEngine. Os dois primeiros permitem você utilizar funcionalidades da linguagem C# relativa ao uso de coleções, como listas, por exemplo. O UnityEngine adiciona os recursos específicos do motor de jogos Unity3D ao seu script para você poder utilizar suas funcionalidades. A Figura 8 mostra em detalhes esses três namespaces.

Figura 08 - Namespaces padrão de um script C# no Unity.
Namespaces padrão de um script C# no Unity.
Fonte: Captura de tela do Unity.https://unity3d.com/pt/. Acesso em: 24 de fev de 2017.

Após os namespaces o Unity adiciona uma nova classe que tem o mesmo nome do arquivo que você criou (sem a extensão, claro). Você não pode modificar o nome dessa classe (MoveObjeto) a não ser que também renomeie o arquivo para que o mesmo tenha o mesmo nome dela. A classe adicionada herda de MonoBehavior, que é uma classe base com diversas funcionalidades do motor de jogos Unity3D e que permite que a mesma seja associada a objetos na sua cena.

Dentro da classe MoveObjeto por padrão são adicionados dois métodos (Start e Update). Esses métodos são especiais e são executados pelo Unity durante a execução do seu jogo em momentos diferentes. Veja a Figura 9 destacando o código citado.

Figura 09 - Esqueleto padrão de uma classe C# em um script no Unity 3D.
Esqueleto padrão de uma classe C# em um script no Unity 3D.
Fonte: Captura de tela do Unity.https://unity3d.com/pt/. Acesso em: 24 de fev de 2017.

Versão 5.3 - Todos os Direitos reservados