The floating point values in the Rect get rounded to the nearest integer. In this case, Rect(0,0,1,1). Is this a bug, or a very unfortunate intended behaviour?
DrawGUITexture uses screen coordinates which are integers. If you wish to position say 25% from the left you can calculate this with Screen.Width / 4f.
So you would place the screen coordinates (as Int) in the Rect().
I have the same problem but I can’t see why… I’m trying to render prefabs contents (Textures from Sprite Renderers) in the editor scene without instantiating them (preview a prefab in the scene as a Gizmo). While it’s moslty ok, I’m having bad times with their position. Any help would be greatly appreciated. Here is the code : https://pastebin.com/0PZ6sewE
While the rect.center is properly set, DrawGUITexture just snap the texture somewhere else.