COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
2 participantes
Página 1 de 1
COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Seguinte estou usando o script da PILHA da lanterna, que o Marcos disponibilizou aq, e quando eu vou pegar a pilha aparece o texto na tela: "Aperte 'E' para pegar a pilha" na parte de baixo da tela, int eu queria que o texto aparecesse exatamente junto com a pilha como se fosse parte dele de forma que eu mexesse a camera e ele ficasse no msm lugar.
Exemplo: - http://prnt.sc/ag08is
SCRIPT PILHA:
Exemplo: - http://prnt.sc/ag08is
SCRIPT PILHA:
- Código:
using UnityEngine;
using System.Collections;
public class PILHA : MonoBehaviour {
private bool EstaNoLocal;
public float CargaDaBateria = 50;
public Font FonteBateria;
void OnTriggerEnter (){
EstaNoLocal = true;
}
void OnTriggerExit (){
EstaNoLocal = false;
}
void Update (){
if (Input.GetKeyDown ("e") && EstaNoLocal == true) {
Lanterna.Carga = Lanterna.Carga + CargaDaBateria;
Destroy (gameObject);
}
}
void OnGUI (){
GUI.skin.font = FonteBateria;
GUI.skin.label.fontSize = Screen.height/25;
if (EstaNoLocal == true) {
GUI.Label (new Rect (Screen.width / 1.62f - Screen.width / 5, Screen.height / 1 - Screen.height / 16, Screen.width / 2.5f, Screen.height / 8), "Aperte 'E' para pegar a pilha");
}
}
}
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Tem usando 3D Text. Tem usando GUIText.
O modo mais facil é 3D Text:
Para isso eu criei um texto 3d dentro do objeto. Depois eu arrumei cor e tamanho manualmente mesmo.
Depois criei um objeto vazio e coloquei este script:
Depois dentro do inspector eu linkei os objetos corretos.
O modo mais facil é 3D Text:
Para isso eu criei um texto 3d dentro do objeto. Depois eu arrumei cor e tamanho manualmente mesmo.
Depois criei um objeto vazio e coloquei este script:
- Código:
using UnityEngine;
using System.Collections;
public class TextScripts : MonoBehaviour {
public Transform Player;
public TextMesh Texto;
public float DistanciaMinima;
// Use this for initialization
void Start () {
Texto.transform.localScale = new Vector3(-1,Texto.transform.localScale.y,Texto.transform.localScale.z);
Texto.gameObject.SetActive (false);
}
// Update is called once per frame
void Update () {
if (Texto.gameObject.activeInHierarchy)
Texto.transform.LookAt (Player);
}
void LateUpdate(){
if (Vector3.Distance(Player.position,Texto.transform.position) < DistanciaMinima)
Texto.gameObject.SetActive (true); else Texto.gameObject.SetActive (false);
}
}
Depois dentro do inspector eu linkei os objetos corretos.
RenanMSV- Instrutor
- PONTOS : 4484
REPUTAÇÃO : 356
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Valeu man, mas esse script posso usar tranquilo que ele nao atrapalha no funcionamento do script da pilha?
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
RenanMSV- Instrutor
- PONTOS : 4484
REPUTAÇÃO : 356
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Funcionou direitnho! vllw msm =) so mais um coisa, tem como melhorar a qualidade do texto?
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Sim, troque para este script. Talvez seja necessario arrumar o tamanho novamente.
- Código:
using UnityEngine;
using System.Collections;
public class TextScripts : MonoBehaviour {
public Transform Player;
public TextMesh Texto;
public float DistanciaMinima;
// Use this for initialization
void Start () {
Texto.transform.localScale = new Vector3(-Texto.transform.localScale.x,Texto.transform.localScale.y,Texto.transform.localScale.z);
Texto.fontSize = 200;
Texto.gameObject.SetActive (false);
}
// Update is called once per frame
void Update () {
if (Texto.gameObject.activeInHierarchy)
Texto.transform.LookAt (Player);
}
void LateUpdate(){
if (Vector3.Distance(Player.position,Texto.transform.position) < DistanciaMinima)
Texto.gameObject.SetActive (true); else Texto.gameObject.SetActive (false);
}
}
RenanMSV- Instrutor
- PONTOS : 4484
REPUTAÇÃO : 356
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Eu ajustei tudinho, mas quando diminuo o temanho da fonte pra o msm q tava antes ela ainda fica com a qualidade nao muito boa.
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
A fonte só fica com qualidade boa qnd o Font Size ta em 200 ou parecido. Portanto arrume o tamanho do objeto em escala ou algo assim
RenanMSV- Instrutor
- PONTOS : 4484
REPUTAÇÃO : 356
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :
Re: COMO FAÇO PARA QUE UM TEXTO GUI APAREÇA DO LADO DO OBJETO QUANDO VOU PEGA-LO
Ata vllw, agr eu consegui =D
MeverPlays- Mestre
- PONTOS : 3868
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Tópicos semelhantes
» Como fazer para o personagem ao sairdas delimitações da tela apareca no lado oposto?
» Como faço para quando o meu personagem morrer a luz fique vermelha?
» Como faço para quando pegar item,sai umas particulas para cima e ai colide com o chão?
» Como faço para mudar a posição de um objeto para perto de outro.
» Como que faço para rotacionar um objeto na posição do player como o cenario
» Como faço para quando o meu personagem morrer a luz fique vermelha?
» Como faço para quando pegar item,sai umas particulas para cima e ai colide com o chão?
» Como faço para mudar a posição de um objeto para perto de outro.
» Como que faço para rotacionar um objeto na posição do player como o cenario
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos