- Home /
Button texture
Hi, I'm fairly new to unity and I have a problem with loading a texture (through C# script) to be used for a button. I have a "center.png" file in the project assets folder, and this is the code I use,
public Texture2D center;
void Start () {
...
center = (Texture2D) Resources.Load("Assets/center.png");
...
}
void OnGUI() {
...
if (GUI.Button (new Rect (850, 370, 32, 32), new GUIContent(center))) {
...
}
...
}
Now the problem I have here, the button has no texture and center always has a null value. What am I doing wrong with the initialization of the texture? Any help will be much appreciated. Cheers.
Answer by Landern · Jan 04, 2013 at 01:44 PM
If you look at the documentation for Resources.Load there is already an assumption of the assets folder. More to the point however it expects that you will have a Assets/Resources folder. That is where you will start defining your file system path(like you did with Assets/center.png). So in this case, Create a folder in your project hierarchy called "Resources", that is going to be the assumed base of your Resources.Load call, you don't need to add that to the path. If you put your PNG in that folder, you can simply do
public Texture2D center;
void Start() {
...
center = (Texture2D) Resources.Load("center", typeof(Texture2D)); // Assigns a texture named "center.png" to a Texture2D(center).
...
}
void OnGUI() {
...
if (GUI.Button (new Rect (850, 570, 32, 32), new GUIContent(center))) {
...
}
...
}
Did you put it in Assets/Resources/center.png? Assets is a folder we all get for free, this is the base of the project hierarchy. So in the Unity UI you see base:
project base
-Resources/
--center.png
Answer by aelalaily · Jan 04, 2013 at 03:15 PM
The texture object "center" remains a null object.
$$anonymous$$ake sure you leave the file extension off :) In the following I am loading 'CFVisibleON.png'.
Texture2D visBTtext = (Texture2D)Resources.Load("CFVisibleON");
Your answer
Follow this Question
Related Questions
Empty spaces in buttons are detected by mouse 2 Answers
How do I Define the Size of a Texture Inside GUI.Button? 0 Answers
Making texture cover whole button 1 Answer
Stretching a Texture2D to fill entire button 2 Answers
Assiging an Image to a Button 1 Answer