Ativar/Desativar Sprites
5 participantes
Página 1 de 1
Ativar/Desativar Sprites
porquer isso aconteçe?
queria que quando eu ativasse segundo o primeiro desativa,e assim sucessivamente além do inverso
de ida e volta
sem a necessidade de ficar clicando pra ativar/desativar
já dei um deblog+transform no script do marcos mais não vi, resultado nenhum
queria que quando eu ativasse segundo o primeiro desativa,e assim sucessivamente além do inverso
de ida e volta
sem a necessidade de ficar clicando pra ativar/desativar
já dei um deblog+transform no script do marcos mais não vi, resultado nenhum
Última edição por MarcosSchultz em Ter Jun 13, 2017 3:54 pm, editado 4 vez(es) (Motivo da edição : Resolvido)
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
michelly escreveu:porquer isso aconteçe?
queria que quando eu ativasse segundo o primeiro desativa,e assim sucessivamente além do inverso
de ida e volta
sem a necessidade de ficar clicando pra ativar/desativar
já dei um deblog+transform no script do marcos mais não vi, resultado nenhum
Acho que você deveria dar um titulo melhor para o tópico, para outros que tenham uma duvida parecida possam encontrar.
Quanto ao problema, é simples, você não está desativando eles quando ativa outro, precisa criar um script para isso, se estiver usando UI, é bem fácil, só usar objeto.SetActive(True) e objeto.SetActive(false) dentro de um método e chamar o mesmo no OnClick do botão, isso se for vários objetos, se estiver só as imagens, é só mudar o sprite da imagem UI elas ai nem precisa desativar, se muda assim:
- Código:
public Image img;
public Sprite s1;
public Sprite s2;
public Sprite s3;
...
//Ou um array de sprites
void botao1(){
img.sprite = s1;
}
void botao2(){
img.sprite = s2;
}
void botao3(){
img.sprite = s3
}
...
//E é claro com um array de sprites é mais fácil, e você pode usar apenas um método para isso e passar um int como parâmetro, assim atribui o valor no OnClick dos botoes no canvas acompanhando o índice do array de sprites como desejar.
Re: Ativar/Desativar Sprites
mais para ativar/desativar usando Setactive
precisa ter dois botoes pra isso não é
ou estou errado?
ou pode fazer com apenas um botão onde ele ativa/desativa
ao passar para o proximo
precisa ter dois botoes pra isso não é
ou estou errado?
ou pode fazer com apenas um botão onde ele ativa/desativa
ao passar para o proximo
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
Boa tarde! Conforme o brow dipode disse, o título do tópico não está conforme o fórum, o mesmo será alterado por mim. Por gentileza, caso não tenha lido, leia as regras do fórum. Seja especifico e objetivo nos seus títulos, vamos manter a organização do fórum.
Abraço e sucesso!
Abraço e sucesso!
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class change : MonoBehaviour {
public Image image;
void Start () {
}
void Update () {
}
public void ClickToChange1(){ //linka no primeiro botão UI
image.sprite = Resources.Load<Sprite> ("albath"); //onde está o albath adicione a sua sprite e assim sucessivamente
}
public void ClickToChange2(){ //Linka no segundo botão UI
image.sprite = Resources.Load<Sprite> ("anakarius");
}
}
1-Basta apenas criar uma pasta com o nome Resources e jogar as sprites pra lá
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
michelly escreveu:resolvido, mais me digam uma coisa o mesmo serve pra gameobject?
Para desativar GameObject use GameObject .SetActive(True) e GameObject.SetActive(false), ai você não mudaria o sprite da Image UI, você desativaria um objeto e ativaria outro, ambos teriam que ter o componente Image UI com o sprite desejado em cada um, mas se sua intenção for só mudar o sprite da Image, criar vários objetos para isso não seria a melhor forma de se fazer.
Re: Ativar/Desativar Sprites
realmente mais pelo que eu tou vendo é a única forma
pois não é apenas imagens e sim sprites+text
a única forma de fazer tudo isso é com resource.load
mais não tou conseguindo vincular
tipo Resource.load/minhapasta
pois não é apenas imagens e sim sprites+text
a única forma de fazer tudo isso é com resource.load
mais não tou conseguindo vincular
tipo Resource.load/minhapasta
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
Há várias formas de fazer isso, mas não consigo imaginar o porque de usar Resource.Load nesse caso, se nem prefabs são, não são botões UI?michelly escreveu:realmente mais pelo que eu tou vendo é a única forma
pois não é apenas imagens e sim sprites+text
a única forma de fazer tudo isso é com resource.load
mais não tou conseguindo vincular
tipo Resource.load/minhapasta
Re: Ativar/Desativar Sprites
tou tentando usar o Resource porquer pra mim é a maneira mais fácil
e os demais não
e os demais não
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
michelly escreveu:tou tentando usar o Resource porquer pra mim é a maneira mais fácil
e os demais não
Não é, e Resource é lento para buscar, ficaria um menu de seleção lento e ainda teia que criar prefabs dos objetos UI, você tem os UI com seus eventos que são muito mais rápidos.
Re: Ativar/Desativar Sprites
enquanto a demora não senti muita diferença n veja ai com o resource que fiz
Embaralhou todo meu cerebro agora
enquanto a array que voce disse que é mais fácil
Exemplo
se eu fizer uma array assim
public GameObject [5] pasta;
colocar todos os objetos nelas
como eu criou no script um onclick para o gameobjet
pra puxar uma para cada array
Embaralhou todo meu cerebro agora
enquanto a array que voce disse que é mais fácil
Exemplo
se eu fizer uma array assim
public GameObject [5] pasta;
colocar todos os objetos nelas
como eu criou no script um onclick para o gameobjet
pra puxar uma para cada array
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
michelly escreveu:enquanto a demora não senti muita diferença n veja ai com o resource que fiz
Embaralhou todo meu cerebro agora
enquanto a array que voce disse que é mais fácil
Exemplo
se eu fizer uma array assim
public GameObject [5] pasta;
colocar todos os objetos nelas
como eu criou no script um onclick para o gameobjet
pra puxar uma para cada array
É simples, com poucas linhas você faz isso:
- Código:
//Coloca a imagem aqui no inspector
public Image img;
//Coloca os sprites no inspector
public Sprite[] sprites;
//Metodo que você terá que atribuir em cada OnClick nos botoes, é só ir no botao e vai ver lá OnClick,
//ai é só arrastar o objeto que está este script e selecionar o metodo botoes, ai verá um campo que é o
//parametro i do metodo botoes, você coloca o numero que deseja referente a ordem que colocou os sprites
//no array sprites, tipo se colocou "personagem1" na posição 0(porque array começa no 0 e não no 1) do array,
// e no botao1 você deseja que apareça o "personagem1", então é só atribuir 0 no campo.
public void botoes(int i){
img.sprite = sprites[i];
}
Re: Ativar/Desativar Sprites
buguei vei, não tou conseguindo de nenhum método
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
UP para eu ver esse tópico em casa... mas a princípio, é só jogar todos os sprites em uma array, e toda vez que clicar em um botão, fazer um for para desativar TODOS os sprites da array, e logo depois do for, ativar somente o indice clicado.
Re: Ativar/Desativar Sprites
UP, BOM MARCOS ENQUANTO AO SPRITES ISSO É FÁCIL, COMO VC PODE VER NO VIDEO
OQUE EU QUERIA É AO INVEZ DE USAR SPRITES, ERA USAR O GAMEOBJECT
OQUE EU QUERIA É AO INVEZ DE USAR SPRITES, ERA USAR O GAMEOBJECT
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
michelly escreveu:UP, BOM MARCOS ENQUANTO AO SPRITES ISSO É FÁCIL, COMO VC PODE VER NO VIDEO
OQUE EU QUERIA É AO INVEZ DE USAR SPRITES, ERA USAR O GAMEOBJECT
Mesma coisa, objeto ou imagem, mesma lógica:
- Código:
//Coloca os GameObjects no inspector
public GameObject[] arrayObjetos;
public void botoes(int num){
for(int i = 0; i < arrayObjetos.Length; i++){
if( arrayObjetos[num] = arrayObjetos[i]){
arrayObjetos[i].SetActive(true);
}else{
arrayObjetos[i].SetActive(false);
}
}
}
Re: Ativar/Desativar Sprites
Corrigindo aqui:
Para dois "==", pois é comparação, apenas um "=" é atribuição:
- Código:
if( arrayObjetos[num] = arrayObjetos[i]){
Para dois "==", pois é comparação, apenas um "=" é atribuição:
- Código:
if( arrayObjetos[num] == arrayObjetos[i]){
Re: Ativar/Desativar Sprites
estranho dipode está dando end of file
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
até que em fim conseguir, vlwzao pela força.
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class exemplo : MonoBehaviour
{
public GameObject[] arrayObjetos;
public void botoes(int num)
{
for(int i = 0; i < arrayObjetos.Length; i++)
{
if( arrayObjetos[num] == arrayObjetos[i])
{
arrayObjetos[i].SetActive(true);
}else{
arrayObjetos[i].SetActive(false);
}
}
}
}
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: Ativar/Desativar Sprites
ASSISTA!michelly escreveu:porquer isso aconteçe?
queria que quando eu ativasse segundo o primeiro desativa,e assim sucessivamente além do inverso
de ida e volta
sem a necessidade de ficar clicando pra ativar/desativar
já dei um deblog+transform no script do marcos mais não vi, resultado nenhum
Gabriel César O- Profissional
- PONTOS : 3986
REPUTAÇÃO : 217
Idade : 23
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras :
Tópicos semelhantes
» Ativar e desativar o emission
» Ativar/Desativar Complemento
» Ativar e desativar botão UI
» Desativar e ativar Player
» Sistema de ativar e desativar gameObjetc
» Ativar/Desativar Complemento
» Ativar e desativar botão UI
» Desativar e ativar Player
» Sistema de ativar e desativar gameObjetc
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos