- Home /
How do I use function OnGui to display a 2D texture?
I am clueless and have been searching the web for hours and can't find anything. I would really appreciate and help
Answer by aldonaletto · Dec 19, 2012 at 12:34 AM
You can use GUI.DrawTexture, or GUI.Label - there's a Label version that accepts a texture instead of a string (textures can be used instead of strings in all GUI buttons as well):
var tex: Texture2D; // drag the texture here
function OnGUI(){
GUI.DrawTexture(Rect(100,100,256,256), tex);
}
Thanks for the help but when i add that in the code I keep getting error messages on how its not expecting 'OnGui'? Please help me if you can.
#pragma strict
var myTimer : float = 300.0;
function Start () {
}
function Update () {
if(myTimer > 0){
myTimer -= Time.deltaTime;
}
if(myTimer <= 0){
Debug.Log("GA$$anonymous$$E OVER");
}
var tex: Texture2D; // drag the texture here
function OnGUI(){
if(myTimer <= 0) {
GUI.DrawTexture(Rect(100,100,256,256), tex);
}
}
}
That's because you're declaring OnGUI inside Update - declaring functions inside other functions isn't allowed in Unity. $$anonymous$$ove the code outside Update, and remember to drag the texture to the Tex field in the Inspector:
...
function Update () {
if(myTimer > 0){
myTimer -= Time.deltaTime;
}
if(myTimer <= 0){
Debug.Log("GA$$anonymous$$E OVER");
}
}
var tex: Texture2D; // drag the texture here
function OnGUI(){
if(myTimer <= 0) {
GUI.DrawTexture(Rect(100,100,256,256), tex);
}
}
Your answer
Follow this Question
Related Questions
GuiTexture Width Change 1 Answer
How to call a function from a script in another scene 5 Answers
Need help with my script 0 Answers
How do I make the buttons work on this GUI? 2 Answers
If String is in List Then... 2 Answers