Arrays com texturas diferentes!!
2 participantes
Página 1 de 1
Arrays com texturas diferentes!!
bom dia a tds!!
como faco para em uma lista eu tenho 3 modelos de balao diferentes , preciso cada um deles tenha uma textura diferente (cada balao tem um array de textura diferente);
using UnityEngine.EventSystems;
using System.Collections.Generic;
using UnityEngine;
using System.Collections;
public class Botoes : MonoBehaviour
{
public GameObject CHINES;
public GameObject papelHigienico;
public GameObject botaoAumentarBalao;
public GameObject botaoDiminuirBalao;
public GameObject botaoAcenderGaiola;
public GameObject botaoGaiola;
public GameObject botaotrocarTemaBalao;
public GameObject botaoEscolherBalao;
public GameObject botaoTexturaBand;
public GameObject botaoInstancBandeira;
private GameObject newFlag;
public clicou descerBalao;
public clicou levantarBalao;
public GameObject player;
public GameObject inventarioBalao;
public GameObject FogosParticulas;
private GameObject camera;
public GameObject[] bocas;
public GameObject gaiola;
public Texture[] bandeiraTexture;
private int idBandeiraTexture;
public GameObject bandeira;
private SkinnedMeshRenderer MeshBandeira;
public float spd = 1f;
public GameObject Aqui;
public GameObject[] balao; <------- aqui
private GameObject novoBalao;
public Texture[] balaoTexture; <------ aqui
private int idBalaoTexture;
private MeshRenderer meshBalao;
private Rigidbody rb;
private GameObject guia;
public bool conectado = true;
//public GameObject bandeira;
void Start()
{
camera = GameObject.Find("camera");
GameObject fogos = GameObject.FindWithTag("fogo");
// fogos.SetActive(false);
rb = GetComponent<Rigidbody>();
}
public void InstanciarBalao(int idBalao) <------ aqui
{
novoBalao = Instantiate(balao[idBalao], new Vector3(Aqui.transform.position.x, Aqui.transform.position.y + 5, Aqui.transform.position.z), balao[idBalao].transform.rotation);
meshBalao = novoBalao.GetComponent<MeshRenderer>();
idBalaoTexture = 0;
meshBalao.material.mainTexture = balaoTexture[idBalaoTexture]; <------ aqui
muito obg a tds!!
como faco para em uma lista eu tenho 3 modelos de balao diferentes , preciso cada um deles tenha uma textura diferente (cada balao tem um array de textura diferente);
using UnityEngine.EventSystems;
using System.Collections.Generic;
using UnityEngine;
using System.Collections;
public class Botoes : MonoBehaviour
{
public GameObject CHINES;
public GameObject papelHigienico;
public GameObject botaoAumentarBalao;
public GameObject botaoDiminuirBalao;
public GameObject botaoAcenderGaiola;
public GameObject botaoGaiola;
public GameObject botaotrocarTemaBalao;
public GameObject botaoEscolherBalao;
public GameObject botaoTexturaBand;
public GameObject botaoInstancBandeira;
private GameObject newFlag;
public clicou descerBalao;
public clicou levantarBalao;
public GameObject player;
public GameObject inventarioBalao;
public GameObject FogosParticulas;
private GameObject camera;
public GameObject[] bocas;
public GameObject gaiola;
public Texture[] bandeiraTexture;
private int idBandeiraTexture;
public GameObject bandeira;
private SkinnedMeshRenderer MeshBandeira;
public float spd = 1f;
public GameObject Aqui;
public GameObject[] balao; <------- aqui
private GameObject novoBalao;
public Texture[] balaoTexture; <------ aqui
private int idBalaoTexture;
private MeshRenderer meshBalao;
private Rigidbody rb;
private GameObject guia;
public bool conectado = true;
//public GameObject bandeira;
void Start()
{
camera = GameObject.Find("camera");
GameObject fogos = GameObject.FindWithTag("fogo");
// fogos.SetActive(false);
rb = GetComponent<Rigidbody>();
}
public void InstanciarBalao(int idBalao) <------ aqui
{
novoBalao = Instantiate(balao[idBalao], new Vector3(Aqui.transform.position.x, Aqui.transform.position.y + 5, Aqui.transform.position.z), balao[idBalao].transform.rotation);
meshBalao = novoBalao.GetComponent<MeshRenderer>();
idBalaoTexture = 0;
meshBalao.material.mainTexture = balaoTexture[idBalaoTexture]; <------ aqui
muito obg a tds!!
capim22- Avançado
- PONTOS : 2045
REPUTAÇÃO : 20
Respeito as regras :
capim22- Avançado
- PONTOS : 2045
REPUTAÇÃO : 20
Respeito as regras :
capim22- Avançado
- PONTOS : 2045
REPUTAÇÃO : 20
Respeito as regras :
Re: Arrays com texturas diferentes!!
você pode criar uma struct pra armazenar o objeto balão e o array de texturas correspondentes;
O código abaixo é só um exemplo, pra você não ficar perdido como acessar os itens, tente escrever conforme sua necessidade
Um pedido Capim22, se a resposta resolver seu problema, por favor, avise se deu certo para que possamos marcar o tópico como resolvido.
O código abaixo é só um exemplo, pra você não ficar perdido como acessar os itens, tente escrever conforme sua necessidade
Um pedido Capim22, se a resposta resolver seu problema, por favor, avise se deu certo para que possamos marcar o tópico como resolvido.
- Código:
using UnityEngine;
public class Balao : MonoBehaviour
{
public VarianteBalao[] baloes;
private void Start()
{
//setando
baloes[0].balao = blabla;
baloes[0].balaoTexture[0] = texturablabla;
baloes[0].balaoTexture[1] = texturablabla;
baloes[0].balaoTexture[2] = texturablabla;
baloes[1].balao = blabla;
baloes[1].balaoTexture[0] = texturablabla;
baloes[1].balaoTexture[1] = texturablabla;
baloes[1].balaoTexture[2] = texturablabla;
//Usando
GameObject balaoInstanciado = Instantiate(baloes[0].balao);
balaoInstanciado.GetComponent<MeshRenderer>().sharedMaterial.mainTexture = baloes[0].balaoTexture[0];
}
}
[System.Serializable]
public struct VarianteBalao
{
public GameObject balao;
public Texture2D[] balaoTexture;
}
Fagner- Moderador
- PONTOS : 4443
REPUTAÇÃO : 667
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO]quero saber como criar arrays de arrays
» Como colocar dois backgrounds diferentes para dois canvas diferentes?
» classe com arrays dentro de uma classe com arrays
» ARRAYS
» Pontuar em botões diferentes C#
» Como colocar dois backgrounds diferentes para dois canvas diferentes?
» classe com arrays dentro de uma classe com arrays
» ARRAYS
» Pontuar em botões diferentes C#
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos