SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
É assim que se começa um "novo mundo" na era medieval? kkjk
Recrutamento de equipe
Tempo Minutos e Segundos Transformar em Volta mais Rapida
[TUTORIAL] Unity 5.5 - Splash Screen
R7 - GOOH (resident evil 7)
InputField/String Com formato para data XX/XX/XXXX
Estou com varias duvidas sobre o inputfield do ui canvas
(Dúvida) Setar ultima string de uma array
[Ajuda] Unity 5.5.0 não abre
Coroutines Loop
[____TÓPICO LIVRE____] FALE O QUE QUISER
Destruindo objeto em uma outra cena
modo desenvolvedor xbox one?
como usar o Lookat com o addforce do rigidibody?
Cryengine 3?
Transferência de valores.
Teste de usuário para um jogo
Ajuda com variaveis multiplas?
Animação da arma (Mirar/Recarregar)
script
Dash2D
[TUTORIAL] Barra de VIDA / HP contínua
Tornar objeto filho por script
Time.timeScale continua em 0
Animacao2D
Duvida Animation Play não faz nada
Unity 5 Bugado
Escolher que resoluções jogo vai ter
Baixar Documentaçao Unity 3D?
COMO DESATIVAR O SCRIPT "FisrtPersonController" DO PLAYER ATRAVÉS DE OUTRO SCRIPT
Ajuda Movimento2D
AJUDA COM BAKE EM LUZES
Tem como editar o inspector?
[TUTORIAL] Como Abrir e Fechar Gavetas - Unity 5
Números aleatorios
[TUTORIAL]Save Load Criptografado (Atualizado 07/12/16)
Trocar de true pra false em uma animação bool
[TUTORIAL] Alterarando o ícone do Executável do Jogo
Baixar Unity ?
Unity 5 + um pouco de conhecimento ou Skyrim?
Procuro vagas em equipes [Programador]
Help minha void oncollisionenter nao funciona e nao consio encontrar o do por que :/
Converter um Gameobject para uma byte array (byte[])
Asset de FPS - AU FPS Kit [unity 5] v1.5
[TUTORIAL] Dicas de otimização
Preciso saber o ponto medio entre dois Transform
[TUTORIAL] Banco de dados || MySQL
Unity 5.5 BETA (Mudanças)
[TUTORIAL] Serialização - JSON
[TUTORIAL] Melhorar a estabilidade dos veículos com Wheel Collider
[TUTORIAL]Como colocar videos ou intros simples na unity free
[TUTORIAL] Deformar o terreno
[TUTORIAL] Scripts Básicos para Iniciantes
Qual asset comprar?
Ideias para level design 3D
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Alien Planet - Atmospheric scattering test
Integração PHP e Unity
Ideia Inovadora
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
Pra que serve o [SerializeField] e por que usar ele?
Forma uma equipe
Feixe de luz - melhor forma de fazer
erro sinistro
Duvida sobre o Peso do jogo?
Alquem tem alguma ideia de como fazer o Player tipo a cabeça olhar para o seu inimigo?
Como mudar rotacao de um objeto em relacao a posicao do outro objeto
Gostaria da opinião de vocês sobre o beta da Unity
Script
[TUTORIAL] Sistema de Escada Estilo FPS
Guitar The Legends of Brazil
[TUTORIAL] Escolher a quantos FPS (fixos) o seu jogo deverá rodar.
Examinar
Formação de Equipe Battle of Worlds
me ajudem neste script para subir escada
Hoje à(s) 7:04 am
Hoje à(s) 1:38 am
Ontem à(s) 11:02 pm
Ontem à(s) 10:41 pm
Ontem à(s) 10:37 pm
Ontem à(s) 7:40 pm
Ontem à(s) 7:39 pm
Ontem à(s) 6:44 pm
Ontem à(s) 6:26 pm
Ontem à(s) 5:41 pm
Ontem à(s) 4:19 pm
Ontem à(s) 11:42 am
Ontem à(s) 11:15 am
Ontem à(s) 8:45 am
Ontem à(s) 6:17 am
Qua Dez 07, 2016 11:58 pm
Qua Dez 07, 2016 11:55 pm
Qua Dez 07, 2016 10:57 pm
Qua Dez 07, 2016 10:22 pm
Qua Dez 07, 2016 10:03 pm
Qua Dez 07, 2016 8:53 pm
Qua Dez 07, 2016 8:51 pm
Qua Dez 07, 2016 8:47 pm
Qua Dez 07, 2016 8:45 pm
Qua Dez 07, 2016 8:42 pm
Qua Dez 07, 2016 8:36 pm
Qua Dez 07, 2016 8:32 pm
Qua Dez 07, 2016 8:30 pm
Qua Dez 07, 2016 8:22 pm
Qua Dez 07, 2016 7:47 pm
Qua Dez 07, 2016 5:54 pm
Qua Dez 07, 2016 5:50 pm
Qua Dez 07, 2016 4:31 pm
Qua Dez 07, 2016 4:16 pm
Qua Dez 07, 2016 3:40 pm
Qua Dez 07, 2016 3:26 pm
Qua Dez 07, 2016 3:01 pm
Qua Dez 07, 2016 2:31 pm
Qua Dez 07, 2016 10:42 am
Ter Dez 06, 2016 10:46 pm
Ter Dez 06, 2016 10:30 pm
Ter Dez 06, 2016 6:02 pm
Ter Dez 06, 2016 5:01 pm
Ter Dez 06, 2016 3:31 am
Seg Dez 05, 2016 11:52 pm
Seg Dez 05, 2016 6:52 pm
Seg Dez 05, 2016 6:48 pm
Seg Dez 05, 2016 6:32 pm
Seg Dez 05, 2016 6:17 pm
Seg Dez 05, 2016 6:15 pm
Seg Dez 05, 2016 4:08 pm
Seg Dez 05, 2016 3:10 pm
Seg Dez 05, 2016 1:36 pm
Seg Dez 05, 2016 12:35 pm
Dom Dez 04, 2016 10:52 pm
Dom Dez 04, 2016 6:37 pm
Dom Dez 04, 2016 6:33 pm
Dom Dez 04, 2016 5:46 am
Dom Dez 04, 2016 3:34 am
Sab Dez 03, 2016 11:36 pm
Sab Dez 03, 2016 11:31 pm
Sab Dez 03, 2016 1:32 pm
Sab Dez 03, 2016 10:53 am
Sab Dez 03, 2016 1:25 am
Sab Dez 03, 2016 1:11 am
Sab Dez 03, 2016 1:08 am
Sex Dez 02, 2016 11:20 pm
Sex Dez 02, 2016 11:15 pm
Sex Dez 02, 2016 11:10 pm
Sex Dez 02, 2016 11:08 pm
Sex Dez 02, 2016 10:58 pm
Sex Dez 02, 2016 10:52 pm
Sex Dez 02, 2016 10:50 pm
Sex Dez 02, 2016 10:04 pm
Sex Dez 02, 2016 9:12 pm
Callyde Jr
Locodapraça
AndyShow
MarcosSchultz
foxtenn
leandroinforware
leandroinforware
hetrodo_gamer
hetrodo_gamer
hetrodo_gamer
Manawydan
kleytonpb
AndyShow
Dom3000
Callyde Jr
Matrirxp
zBanidor
MarcosSchultz
zBanidor
artplayer
MarcosSchultz
MarcosSchultz
DoctorGame15
dstaroski
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
hetrodo_gamer
Marlonwanger
diegopds
Dom3000
joabr
natanael.olimpio
hetrodo_gamer
hetrodo_gamer
Callyde Jr
dstaroski
Dom3000
Creat Games
Dom3000
hetrodo_gamer
dimmuo
Dom3000
Dom3000
artplayer
weslleyFx
RenanMSV
weslleyFx
Deiverson
John Rambo
Deiverson
Madness
Madness
weslleyFx
weslleyFx
artplayer
Madness
weslleyFx
weslleyFx
mafipt
dimmuo
Dom3000
Dom3000
Dom3000
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Dom3000
edumoran

[TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

TUTORIAL [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por RenanMSV em Seg Dez 21, 2015 9:32 pm

MonoBehaviour

MonoBehaviour é a classe base para todos os scripts do Unity.
Usando Javascript o script irá ser derivado do MonoBehaviour automáticamente.
Usando C# você precisa colocar logo no começo. Felizmente o proprio Unity/Monodevelop preenche essa parte para você:

Código:
public class SUACLASSE : MonoBehaviour {} // Como padrao no Unity os scripts irão sempre herdar do MonoBehaviour

Você podera usar alguns eventos ou Messages como eles sao chamados pela documentacao do Unity. Tenho certeza que você já usa alguns, mas você sabe pra que serve cada um?

Programar no Unity nao é como a tradicional ideia de programação onde o codigo fica rodando em loop até que uma condição seja atendida. O Unity passa o controle para o script somente caso algum evento previamente declarado seja chamado. Ao final do evento ser completado o Unity retoma controle do Objeto novamente. E assim sucessivamente.  

Vou listar aqui os Eventos derivados do MonoBehaviour mais importantes e explicar exatamente pra que servem.


Awake = É chamado assim que o script é carregado.

Start = É chamado assim que o objeto é carregado e se torna ativo.

Update = É chamado em todo frame do jogo.

OnCollisionEnter = É chamado somente quando o collider/rigidbody toca no collider/rigidbody de outro objeto.

OnCollisionEnter2D = Igual a de cima mas em jogos 2D.

OnCollisionExit = É chamado somente quando o collider/rigidbody deixa de tocar no collider/rigidbody de outro objeto.

OnCollisionExit2D = Igual a de cima mas em jogos 2D.

OnCollisionStay = É chamado somente quando o collider/rigidbody se mantem tocando no collider/rigidbody de outro objeto.

OnCollisionStay2D = Igual a de cima mas em jogos 2D.

OnTriggerEnter = Semelhante a OnCollisionEnter só que para Colliders com Trigger ativado.

OnTriggerEnter2D = Semelhante a OnCollisionEnter2D só que para Colliders com Trigger ativado.

OnTriggerExit = Semelhante a OnCollisionExit só que para Colliders com Trigger ativado.

OnTriggerExit2D = Semelhante a OnCollisionExit2D só que para Colliders com Trigger ativado.

OnTriggerStay = Semelhante a OnCollisionStay só que para Colliders com Trigger ativado.

OnTriggerStay2D = Semelhante a OnCollisionStay2D só que para Colliders com Trigger ativado.

OnDestroy = É chamado quando o script ou objeto é destruido.

OnDisable = É chamado quando o objeto ou script é desabilitado.

OnEnable = É chamado quando o objeto ou script é habilitado.

OnGUI = É chamado para renderizar todo tipo de GUI. As GUI somente serao renderizadas se estiverem dentro desse evento.

OnLevelWasLoaded = É chamado sempre que um novo level foi carregado.

OnMouseDown = É chamado sempre que clica-se com o mouse em um objeto que contem um elemento GUI ou um Collider.

OnMouseDrag = É chamado sempre que o mouse se mantem clicado em um objeto que contem um elemento GUI ou um Collider.

OnMouseEnter = É chamado sempre que o mouse entra em cima de um objeto que contem um elemento GUI ou um Collider.

OnMouseExit = É chamado sempre que o mouse sai de cima de um objeto que contem um elemento GUI ou um Collider.

OnMouseOver = É chamado sempre que o mouse se mantem em cima de um objeto que contem um elemento GUI ou um Collider.

OnMouseUp = É chamado sempre que o mouse deixar de clicar em um objeto que contem um elemento GUI ou um Collider.

OnMouseUpAsButton = É chamado se o mouse deixar de clicar exatamente em cima do objeto em que clicou primeiro. Funcionando como um botao. Se você clicar, manter clicado, tirar o mouse de cima do objeto e soltar o metodo nao é chamado.

Reset = É chamado quando o desenvolvedor clica no botao reset na aba inspector ou quando ele adiciona o script pela primeira vez no GameObject. Toda e qualquer variavel designada aqui dentro vai aparecer la.
ex:
Código:
                   
public int variavel1 = 524,variavel2 = 93;

void Reset(){
 variavel1 = 20;
 variavel2 = 32;
 }
ao clicar no reset os valores vão virar 20 e 32 ao inves de 524 e 93.




Bem esses sao os eventos mais basicos derivados do MonoBehaviour. Com o tempo vou aumentando a lista para quem sabe colocar todos que existem.




Atributos

Atributos são modos de controlar melhor a interface do inspector ou adicionar comportamentos especiais a classes  funcoes.

Vou explicar como usa-los sobre variaveis.
Para utilizá-los, em C#, é necessário colocá-los entre colchetes. Ex: [Header(“Texto”)], [Space(10)], [Range(0,100)].
O atributo deve ir sempre uma linha antes da variável na qual será atrelado e sobre a qual terá efeito. Não utiliza-se o ; para finalizar a instrução. É permitido colocar 2 ou mais atributos na mesma variavel. Bastando por 2 ou mais atributos acima da variavel.

Abaixo uma lista contendo os mais corriqueiramente usados e suas finalidades:

Header(“Texto”) = Usado para escrever um Titulo em cima da variavel no inspector.

Space(10) = Usado para adicionar um espaço entre duas variaveis. O valor entre parenteses sao os pixels que o Unity deve pular para por a proxima variavel.

Tooltip(“Texto”) = Usado para adicionar uma "dica" que ira aparecer ao posicionar o mouse em cima da variavel no inspector.

ContextMenuItem(“Texto”,“Método”) = Serve para criar uma opcao que aparece ao clicar com o botao direito sobre a variavel no inspector. Ao clicar nessa opcao o metodo que voce especificou no atributo sera executado mesmo sem o jogo estar em andamento.

Range(0,10) = Utilizado para definir o minimo e maximo que uma variavel pode assumir. Adicionalmente isto coloca um slider no inspector para voce alterar essa variavel. Aceita int e float.

Multiline (5) ou Multiline = Utilizado para aumentar o valor maximo de linhas que uma string pode ter no inspector. Por padrao este valor é 1. O valor entre parenteses é o valor de linhas.

HideInInspector = Serve para esconder uma variavel publica. Ela nao ira aparecer no inspector, mas sera acessivel por outros scripts normalmente por ser publica.

SerializeField = Serve para mostrar uma variavel privada. Ela aparecera no inspector, mas ainda sera privada nao podendo ser acessivel por outras classes.

System.Serializable = Ao criar uma classe que não herde do MonoBehavour esta classe  nao aparecera no inspector. Ao usar isto ela passara a aparecer.

Espero que tenham gostado, pois eu sim ;D


Última edição por RenanMSV em Sex Dez 25, 2015 12:24 am, editado 3 vez(es)

RenanMSV
Instrutor

Masculino PONTOS : 1523
REPUTAÇÃO : 310
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por noocktall em Seg Dez 21, 2015 10:13 pm

Boa cara Very Happy

noocktall
Membro
Membro

Masculino PONTOS : 562
REPUTAÇÃO : 18
Idade : 15
Áreas de atuação : progamação
Respeito as regras :

Ver perfil do usuário http://kuork.org

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por RenanMSV em Ter Maio 03, 2016 3:41 am

UP POR QUE É importante

RenanMSV
Instrutor

Masculino PONTOS : 1523
REPUTAÇÃO : 310
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por weslleyFx em Ter Maio 03, 2016 7:25 am

Boa Vai Ajudar Muita gente

weslleyFx
Moderador

Masculino PONTOS : 1878
REPUTAÇÃO : 406
Idade : 18
Áreas de atuação : Csharp programming language C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por RenanMSV em Ter Maio 03, 2016 6:35 pm

ah, antes que eu me esqueça


Parabéns pela TAG Very Happy Very Happy

RenanMSV
Instrutor

Masculino PONTOS : 1523
REPUTAÇÃO : 310
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Unity Csharp Script - Dicas, Informações..etc

Mensagem por weslleyFx em Ter Maio 03, 2016 7:18 pm

vlw Very Happy

weslleyFx
Moderador

Masculino PONTOS : 1878
REPUTAÇÃO : 406
Idade : 18
Áreas de atuação : Csharp programming language C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum