Helper function to rotate the GUI around a point.
Modifies GUI.matrix to rotate all GUI elements angle degrees around pivotPoint.
See Also: GUI.matrix, ScaleAroundPivot
// Rotate a button 10 degrees clockwise when presed.
private var rotAngle : float = 0;
private var pivotPoint : Vector2;
function OnGUI () {
pivotPoint = Vector2(Screen.width/2,Screen.height/2);
GUIUtility.RotateAroundPivot (rotAngle, pivotPoint);
if(GUI.Button(Rect(Screen.width/2-25, Screen.height/2-25, 50, 50),"Rotate"))
rotAngle += 10;
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
private float rotAngle = 0;
private Vector2 pivotPoint;
void OnGUI() {
pivotPoint = new Vector2(Screen.width / 2, Screen.height / 2);
GUIUtility.RotateAroundPivot(rotAngle, pivotPoint);
if (GUI.Button(new Rect(Screen.width / 2 - 25, Screen.height / 2 - 25, 50, 50), "Rotate"))
rotAngle += 10;
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
private rotAngle as single = 0
private pivotPoint as Vector2
def OnGUI():
pivotPoint = Vector2((Screen.width / 2), (Screen.height / 2))
GUIUtility.RotateAroundPivot(rotAngle, pivotPoint)
if GUI.Button(Rect(((Screen.width / 2) - 25), ((Screen.height / 2) - 25), 50, 50), 'Rotate'):
rotAngle += 10