- Home /
How do I get Texture from material
Hi, I have 14 buttons with different textures. I made a sprite sheet and assigned to the texture of a Material. I am trying to use the SetTextureOffset() to get the required image from the sprite. I am sure that my offset and tiling are correct (because I can see them in the preview windows of the material). When I try to display it on my device, I just get a black rectangle. I am using UnityPro iOS. and the app is for iPAD only.
How can I get the desired Texture from Material? Also, I am not sure if "_MainTex" is the right parameter?
Here is my code:
Material agentMaterial = Resources.Load("AgentMaterial") as Material;
agentMaterial.SetTextureOffset("_MainTex",new Vector2(0.0f,0.875f));
Texture tex = agentMaterial.GetTexture("_MainTex");
GUI.DrawTexture (scaleRect(500,20,250,250),tex);
Why don't you just use .mainTextureOffset and .mainTexture?
I tried it (code below).. But result is still the same- I get all of the main texture ins$$anonymous$$d of a part of it :/
agent$$anonymous$$aterial.mainTextureOffset = new Vector2(0.0f,0.875f);
Texture tex = agent$$anonymous$$aterial.mainTexture;
GUI.DrawTexture (scaleRect(450,20,250,250),tex);
Answer by PAEvenson · Dec 28, 2012 at 06:08 PM
I am pretty sure GetTexture returns the full texture, I dont believe you can use material like what you are doing...try looking at this http://answers.unity3d.com/questions/230128/texcoords-rect-for-guidrawtexturewithtexcoords.html
Your answer
Follow this Question
Related Questions
Identical material with different textures 0 Answers
Offset detail texture in c# 1 Answer
Render GUI with Material 1 Answer
iphone like date pickers 1 Answer
How to create a GUI button to change a character's texture in real-time? 2 Answers