Professional Documents
Culture Documents
para mudar o pivot basta de uma img ,obj � s� clicar nela e clicar
em Sprite Editor
Luzes
-Tem como aplicar sim fontes de luz em jogos 2D e faz diferen�a
directional
-vai iluminar tudo independente da posi�ao que a luz esteja
o que importa nessa luz � a rota��o e ela que vai deternimar a quantidade
luz recebida
elas tem suas propriedades
POINT LIGHT
Ilumina em todas as dire��es e tem um range
enquanto a directional light ilumina tudo com o sol a Point Light
� como se fosse uma lanpada, depende de sua posicao para iluminar
os objetos
SPOT LIGHT
cria cone de luz com angulo e alcance
aposicao e rota�ao sao muito importantes
SPRITES
CRIA�AO DE PREFABS
-se arrastar para as pastas j� � um prefab
l� do hierarchy para o project
se vc clicar no sprite aparece um campo prefab
e � s� arrastar para a cena para criar outro
se vc modificar algum ddas copias do prefab e
ir l� na aba prefab e aplicar Apply todos serao
modificados
pode ser feito indo no projeto->botao direito->prefab e jogar em
cima
PARALLAX SCROLL
scroll que d� nocao de profundidade
tem mais de um objetos cada um em uma velocidade
mas distante, mais lento, mais proximo mais rapido
duplica o quad
e coloca no modo 3d e coloca um um poucos mais na frente q outro
como vc dublica, eles usam o mesmo script a� � s� trocar a velocidade de
cada um
INPUT
INPUT DE TECLADO
Input.GetKeyUP(KeyCode.RightArrow)
s� vai acontecer alguma coisa quano soltar a tecla de seta para
direita
Input.GetKeyUp(KeyCode.RightArrow) soltando
Input.GetKeyDown(KeyCode.RightArrow) pressionado
Input.GetKey(KeyCode.RightArrow) para movimenta�ao de personagem
se vc ficar pressionado d� varias respostas
INPUT TECLADO 2
ao inv� de usar if
vc usa os Axes
Edit->Project Settings->Input
e vai aparecer v�rios prontos
float H = Input.GetAxis("Lados");
float V = Input.GetAxis("Vertical");
transform.Translate(new Vector3(H * Time.deltaTime, V * Time.deltaTime, 0));
MOUSE INPUT
tem Axes: Mouse X, Mouse Y,MOuse ScrollWheel,
Fire1(mouse 0 ,joystick button 0= botao esq),
Fire2(mouse 1 ,joystick button 1 = botao dir)
INPUT DE JOYSTICK
tem varios tipos de joystick, tem playstation, xbox
tem mapeamentos dos controles na unity os repectivos valores
COLIS�ES
COLISORES
para adicionar um � s� clicar em um objeto e add component
pshsics 2d e colider � a linha verde de delimita
mas tem como editar � so ir no edit Collider no proprio obj
RIGIDBODY
d� vida a nossos eventos fisicos
tem q add rigidbody2d
linear drag-for�a contra gravidade
tem um check box para simular
gravity scale -for�a da gravidade
constrais-restrinde o movimento
if(Input.GetKeyDown(KeyCode.Space))
bola.AddForce(new Vector2(0, forca * Time.deltaTime), ForceMode2D.Impulse);
//usado para dar pulos for�a,se apertar varias vezes ele funciona v�rias
vezes quem q podar isso para dar um pulo, pulo duplo
obs:o inspector � s� para testar depois tem de trocar no script
TAGS
utilizar tags para dzer o que � cada objeto e gerir eventos
para criar tag clique no obj
va na aba inspector e tag->add tag-> +
this.gameObject.CompareTag("bola")
//nos diz se obj q estamos usando o scrpt � essa tag
void Update () {
if(duplo>0)
{
if(Input.GetKeyDown(KeyCode.Space))
{
bola.AddRelativeForce(new Vector2(0, forca * Time.deltaTime), ForceMode2D.Impulse);
duplo--;
}
}
}
TIROS
pegamos o sprint de uma arma
mas como temos q falar onde a bala sai
temos de criar um objeto vazio Create Empty
mas ele fica invisivel se clicarmos fora
entao clicamos nele e vamos no cubo do inspector e
criamos uma especie de rotulo
if(Input.GetKeyDown(KeyCode.Space))
{
Instantiate(balas, new Vector3(cano.transform.position.x,
cano.transform.position.y, cano.transform.position.z), Quaternion.identity);
}//instantiate cria objetos
//Quaternion d� para usar mas d� problema quando rot a arma
TRIGGER(gatilhos)
vc cria um gameobject vazio e marca trigger no inspector da� ele nao
nao colidira fisicamente
d� pra acionar armadilhas
COLETAR ITENS
para fazer a coleta de itens tbm se usa o trigger
pq vc nao quer que seu personagem colida com ele
//dentro de move Pato
AUDIO
fez o codigo
- public AudioSource musica;
if(Input.GetKeyDown(KeyCode.A))
{
musica.Play();
//musica.Stop();
//musica.Pause();
}
[proximo exemplo-funcional]
tempo -= Time.deltaTime;
if(tempo<=0)
{
Destroy(this.gameObject);
}
}
}
GERENCIADOR DE AUDIO
caminho dif�cil
come�ando
-cria-se um gameobject vazio chamado Audio_G
e um script para ele chamado Gerenciador
o c�digo awake abaixo nos diz que se inst nao estiver referenciando
para o this que � objeto em que vamos colocar o c�digo
� para destroir o obj
Gerenciador.inst.PlayAudio(puloSom);
a� vc joga o audio no scrit acessando bola
e agora tem o barulho do som de pulo
e d� para fazer com v�rios arquivos de audio
muito bom, gerenciador � mara
DISTANCE joint2D
component-physics2D ->tem todas as articula��es
FRICTIONPOINT2D
-objetos que vc bate neles e afundam e vai descendo a cada pulo
que vc pula em cima dela e elea gira deacordo com a for�a q vc colo
ca ali
HING JOINT
fazer efeito de corda e corrente
ele colocou uma corrente
adicionou box collider e rigidbody2d e diminuiu a massa para
0.5 eadicionou um hing joint ne;la e conectou o hing joint a uma madeira
ele ancorou os dois pontos juntos e na madeira o da prox
corrente jogou na propria mais em cima e linkou no hingi
RELATIVE JOINT
faz q dois objetos fiquem a uma determinada distancia a um deter
minado angulo
SLIDER JOINT
ele faz que um objeto fica deslizando de um lado para o outro de cima
para baixo
objeto vai se mover respeitando essa faixa verde
SPRING JOINT@D
ligados meio que q fosse por uma mola
TARGET JOINT@D
especie de mola
nao se conecta com outros gameobj
WHeel JOINT 2D
EFFECTS
AREA EFFECTORS 2D
consegue simular for�a
tipo se o bola atingir aquela �rea ser� empurrada com mais for�a
ele coloca imagens de setas e adiciona box collider,
e ele aumenta a �rea para que possoa refletir o efeito que ele quer
e aciona o Trigger e User by Effector
add nela o area effector
TEm a mask de colisao que diz se a colisao vai servir para todo mundo
se vc colocar a for�a para cima basta mudar ao force angle
90
Force Magnitude � a a intensidade
Force Variation-parecer ais realista
FOrce target pode escolher entre rigibody e Collider
aonde rigidbody n haverr� rotacao
BUOYANCY EFFECTOR 2D
ele cria um cenario
e coloca uma �gua no meio, adiciona nela um colisor
e add um boyancy effector
definiu q vai ser usado como trigger e used by effector
tem op�ao de mask
tem a parte da densidade
a linha verde � aonde os objetos finais ficarao ao cair nelas
a densidade mergulha mais sobre a linha o corpo
linear drag se diminuiir ele arrasta mais rapidamente e o inverso
o resultado inverso se vc colocar muit baixo at� passa vai para o infinito
rs
Se aumentar a surface ele pula,nao d� muito o efeito de �gua
mas para contrabalancear essse aumento vc pode aumentar o linear drag tbm
-Com Flow d� para fazer que a �gua tenha uma correnteza
vc pode colocar varia�ao para ficar o mais proximo do real
se colocar angulo de 180, vai para esquerda
POINT EFFECTOR
d� para simular uma explosao ou gravidade de um planetinha
cria game object vazio e chama de parede, adiciona um colisor nele
e esticou ele, para nao deixar os objetos nao voarem para longe
e colocou um monte de objetos e colocou uma bombinha no meio
com corpo colisor e aumentar o raio do colisor
pq ela ser� a �rea de efeito, impacto
habilitar trigger e used by effector no collider e adcinona o point
effector
a for�a pode ser positiva ou negativa para aproximar e para distanciar objetos
varia�ao d for�a parecer real
Distance Scale para aumentar a distancia de aplica�ao
force source para escolher com qual quer trabalhar
se trab com collider pto de origem no ponto � definado como ponto a
tual do colisor, ou com ponto atual do corpo rigido
PLATAFORM EFFECTOR
tem como andar sobre objeto putiagundo sem deslizar, tem de usar
material
tem o bounce de ficar pulando em um component
SURFACE EFFECTOR
uma for�a � aplicada sobre a base
d� para fazer que pule tbm ,suba a montada tanto para direita como esquerda
CONSTANTE FORCE2D
aplica uma forca contante
mastem for�a relativa
aplica torque constante tbm
UI
TEXT
o canvas � como se tivesse algo sobreposto ao visor da camera
dar para alinha colocar cor, feito ,alinhamento
se rich text estuver ativado dar para usar algumas tags de html
se desmarcar rich text vira texto puro
Best Fit � para assumir um tamanho legal
Min Size e Max controla o tamanho da informa�ao internamente
aqueles triangulos vc puxa ele e deixa nas extremidades o
component ui text para prender eles ali
IMAGE
serve para muita coisa
serve para dizer qual o tipo de objeto comoletado como o desenho de
uma moeda ,colocando uma sprite
-dar para colocar por exemplo colocar a vida de um personagem
pode mexer a tonalidade para chegar em uma cor interessante
-em Image Type vc consegue mexer em alguns apsectos da imagem
como a Sliced, indo l� e colocando bordas pelo sprite editor
se vc usar tiled ele repete
se usar fill e mexer em fill amount d� para fazer aquelas
esferas de vida
codigo
//dentro de Start
magnetImg.fillAmount=0.5f;
RAWIMAGE
nesse exemplo ele cria um codigo para acessar essa imagem e fazer um
scroll
//codigo
public RawImage rIMG;
BOTAO 01
UI BOTAO 2
TOGGLE
(caixinhas q pode assinalar tipo checkbox)
tem a animacao dos botoes
Is on- se j� vai marcado