Base class for all visual UI Component.
When creating visual UI components you should inherit from this class. Below is a simple example that draws a colored quad inside the Rect Transform area.
using UnityEngine; using UnityEngine.UI; using System.Collections.Generic; [ExecuteInEditMode] public class SimpleImage : Graphic { protected override void OnFillVBO (List<UIVertex> vbo) { Vector2 corner1 = Vector2.zero; Vector2 corner2 = Vector2.zero; corner1.x = 0f; corner1.y = 0f; corner2.x = 1f; corner2.y = 1f; corner1.x -= rectTransform.pivot.x; corner1.y -= rectTransform.pivot.y; corner2.x -= rectTransform.pivot.x; corner2.y -= rectTransform.pivot.y; corner1.x *= rectTransform.rect.width; corner1.y *= rectTransform.rect.height; corner2.x *= rectTransform.rect.width; corner2.y *= rectTransform.rect.height; vbo.Clear(); UIVertex vert = UIVertex.simpleVert; vert.position = new Vector2(corner1.x, corner1.y); vert.color = color; vbo.Add(vert); vert.position = new Vector2(corner1.x, corner2.y); vert.color = color; vbo.Add(vert); vert.position = new Vector2(corner2.x, corner2.y); vert.color = color; vbo.Add(vert); vert.position = new Vector2(corner2.x, corner1.y); vert.color = color; vbo.Add(vert); } }
defaultGraphicMaterial | Default material used to draw UI elements if no explicit material was specified. |
canvas | A reference to the Canvas this Graphic is rendering to. |
canvasRenderer | The CanvasRenderer used by this Graphic. |
color | Base color of the Graphic. |
defaultMaterial | Returns the default material for the graphic. |
depth | Absolute depth of the graphic in the hierarchy, used by rendering and events. |
mainTexture | The graphic's texture. (Read Only). |
material | The Material set by the user. |
materialForRendering | The material that will be sent for Rendering (Read only). |
rectTransform | The RectTransform component used by the Graphic. |
CrossFadeAlpha | Tweens the alpha of the CanvasRenderer color associated with this Graphic. |
CrossFadeColor | Tweens the CanvasRenderer color associated with this Graphic. |
GetPixelAdjustedRect | Returns a pixel perfect Rect closest to the Graphic RectTransform. |
PixelAdjustPoint | Adjusts the given pixel to be pixel perfect. |
Raycast | When a GraphicRaycaster is raycasting into the scene it will first filter the elments using their RectTransform rect and then it will use this function to determine the elements hit mby the raycast. |
Rebuild | Rebuilds the graphic geometry and its material on the PreRender cycle. |
SetAllDirty | Mark the Graphic as dirty. |
SetLayoutDirty | Mark the layout as dirty. |
SetMaterialDirty | Mark the Material as dirty. |
SetNativeSize | Adjusts the graphic size to make it pixel-perfect. |
SetVerticesDirty | Mark the vertices as dirty. |
enabled | Enabled Behaviours are Updated, disabled Behaviours are not. |
animation | The Animation attached to this GameObject (null if there is none attached). |
audio | The AudioSource attached to this GameObject (null if there is none attached). |
camera | The Camera attached to this GameObject (null if there is none attached). |
collider | The Collider attached to this GameObject (null if there is none attached). |
collider2D | The Collider2D component attached to the object. |
constantForce | The ConstantForce attached to this GameObject (null if there is none attached). |
gameObject | The game object this component is attached to. A component is always attached to a game object. |
guiText | The GUIText attached to this GameObject (null if there is none attached). |
guiTexture | The GUITexture attached to this GameObject (Read Only). (null if there is none attached). |
hingeJoint | The HingeJoint attached to this GameObject (null if there is none attached). |
light | The Light attached to this GameObject (null if there is none attached). |
networkView | The NetworkView attached to this GameObject (Read Only). (null if there is none attached). |
particleEmitter | The ParticleEmitter attached to this GameObject (null if there is none attached). |
particleSystem | The ParticleSystem attached to this GameObject (null if there is none attached). |
renderer | The Renderer attached to this GameObject (null if there is none attached). |
rigidbody | The Rigidbody attached to this GameObject (null if there is none attached). |
rigidbody2D | The Rigidbody2D that is attached to the Component's GameObject. |
tag | The tag of this game object. |
transform | The Transform attached to this GameObject (null if there is none attached). |
useGUILayout | Disabling this lets you skip the GUI layout phase. |
hideFlags | Should the object be hidden, saved with the scene or modifiable by the user? |
name | The name of the object. |
BroadcastMessage | Calls the method named methodName on every MonoBehaviour in this game object or any of its children. |
CompareTag | Is this game object tagged with /tag/? |
GetComponent | Returns the component of Type type if the game object has one attached, null if it doesn't. |
GetComponentInChildren | Returns the component of Type type in the GameObject or any of its children using depth first search. |
GetComponentInParent | Returns the component of Type type in the GameObject or any of its parents. |
GetComponents | Returns all components of Type type in the GameObject. |
GetComponentsInChildren | Returns all components of Type type in the GameObject or any of its children. |
GetComponentsInParent | Returns all components of Type type in the GameObject or any of its parents. |
SendMessage | Calls the method named methodName on every MonoBehaviour in this game object. |
SendMessageUpwards | Calls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour. |
CancelInvoke | Cancels all Invoke calls on this MonoBehaviour. |
Invoke | Invokes the method methodName in time seconds. |
InvokeRepeating | Invokes the method methodName in time seconds, then repeatedly every repeatRate seconds. |
IsInvoking | Is any invoke on methodName pending? |
StartCoroutine | Starts a coroutine. |
StopAllCoroutines | Stops all coroutines running on this behaviour. |
StopCoroutine | Stops all coroutines named methodName running on this behaviour. |
GetInstanceID | Returns the instance id of the object. |
ToString | Returns the name of the game object. |
IsActive | Returns true if the GameObject and the Component are active. |
IsDestroyed | Returns true if the native representation of the behaviour has been destroyed. |
Logs message to the Unity Console (identical to Debug.Log). | |
Destroy | Removes a gameobject, component or asset. |
DestroyImmediate | Destroys the object obj immediately. You are strongly recommended to use Destroy instead. |
DontDestroyOnLoad | Makes the object target not be destroyed automatically when loading a new scene. |
FindObjectOfType | Returns the first active loaded object of Type type. |
FindObjectsOfType | Returns a list of all active loaded objects of Type type. |
Instantiate | Clones the object original and returns the clone. |
bool | Does the object exist? |
operator != | Compares if two objects refer to a different object. |
operator == | Compares if two objects refer to the same. |
Awake | Awake is called when the script instance is being loaded. |
FixedUpdate | This function is called every fixed framerate frame, if the MonoBehaviour is enabled. |
LateUpdate | LateUpdate is called every frame, if the Behaviour is enabled. |
OnAnimatorIK | Callback for setting up animation IK (inverse kinematics). |
OnAnimatorMove | Callback for processing animation movements for modifying root motion. |
OnApplicationFocus | Sent to all game objects when the player gets or loses focus. |
OnApplicationPause | Sent to all game objects when the player pauses. |
OnApplicationQuit | Sent to all game objects before the application is quit. |
OnAudioFilterRead | If OnAudioFilterRead is implemented, Unity will insert a custom filter into the audio DSP chain. |
OnBecameInvisible | OnBecameInvisible is called when the renderer is no longer visible by any camera. |
OnBecameVisible | OnBecameVisible is called when the renderer became visible by any camera. |
OnCollisionEnter | OnCollisionEnter is called when this collider/rigidbody has begun touching another rigidbody/collider. |
OnCollisionEnter2D | Sent when an incoming collider makes contact with this object's collider (2D physics only). |
OnCollisionExit | OnCollisionExit is called when this collider/rigidbody has stopped touching another rigidbody/collider. |
OnCollisionExit2D | Sent when a collider on another object stops touching this object's collider (2D physics only). |
OnCollisionStay | OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider. |
OnCollisionStay2D | Sent each frame where a collider on another object is touching this object's collider (2D physics only). |
OnConnectedToServer | Called on the client when you have successfully connected to a server. |
OnControllerColliderHit | OnControllerColliderHit is called when the controller hits a collider while performing a Move. |
OnDestroy | This function is called when the MonoBehaviour will be destroyed. |
OnDisable | This function is called when the behaviour becomes disabled () or inactive. |
OnDisconnectedFromServer | Called on the client when the connection was lost or you disconnected from the server. |
OnDrawGizmos | Implement OnDrawGizmos if you want to draw gizmos that are also pickable and always drawn. |
OnDrawGizmosSelected | Implement this OnDrawGizmosSelected if you want to draw gizmos only if the object is selected. |
OnEnable | This function is called when the object becomes enabled and active. |
OnFailedToConnect | Called on the client when a connection attempt fails for some reason. |
OnFailedToConnectToMasterServer | Called on clients or servers when there is a problem connecting to the MasterServer. |
OnGUI | OnGUI is called for rendering and handling GUI events. |
OnJointBreak | Called when a joint attached to the same game object broke. |
OnLevelWasLoaded | This function is called after a new level was loaded. |
OnMasterServerEvent | Called on clients or servers when reporting events from the MasterServer. |
OnMouseDown | OnMouseDown is called when the user has pressed the mouse button while over the GUIElement or Collider. |
OnMouseDrag | OnMouseDrag is called when the user has clicked on a GUIElement or Collider and is still holding down the mouse. |
OnMouseEnter | OnMouseEnter is called when the mouse entered the GUIElement or Collider. |
OnMouseExit | OnMouseExit is called when the mouse is not any longer over the GUIElement or Collider. |
OnMouseOver | OnMouseOver is called every frame while the mouse is over the GUIElement or Collider. |
OnMouseUp | OnMouseUp is called when the user has released the mouse button. |
OnMouseUpAsButton | OnMouseUpAsButton is only called when the mouse is released over the same GUIElement or Collider as it was pressed. |
OnNetworkInstantiate | Called on objects which have been network instantiated with Network.Instantiate. |
OnParticleCollision | OnParticleCollision is called when a particle hits a collider. |
OnPlayerConnected | Called on the server whenever a new player has successfully connected. |
OnPlayerDisconnected | Called on the server whenever a player disconnected from the server. |
OnPostRender | OnPostRender is called after a camera finished rendering the scene. |
OnPreCull | OnPreCull is called before a camera culls the scene. |
OnPreRender | OnPreRender is called before a camera starts rendering the scene. |
OnRenderImage | OnRenderImage is called after all rendering is complete to render image. |
OnRenderObject | OnRenderObject is called after camera has rendered the scene. |
OnSerializeNetworkView | Used to customize synchronization of variables in a script watched by a network view. |
OnServerInitialized | Called on the server whenever a Network.InitializeServer was invoked and has completed. |
OnTriggerEnter | OnTriggerEnter is called when the Collider other enters the trigger. |
OnTriggerEnter2D | Sent when another object enters a trigger collider attached to this object (2D physics only). |
OnTriggerExit | OnTriggerExit is called when the Collider other has stopped touching the trigger. |
OnTriggerExit2D | Sent when another object leaves a trigger collider attached to this object (2D physics only). |
OnTriggerStay | OnTriggerStay is called once per frame for every Collider other that is touching the trigger. |
OnTriggerStay2D | Sent each frame where another object is within a trigger collider attached to this object (2D physics only). |
OnValidate | This function is called when the script is loaded or a value is changed in the inspector (Called in the editor only). |
OnWillRenderObject | OnWillRenderObject is called once for each camera if the object is visible. |
Reset | Reset to default values. |
Start | Start is called on the frame when a script is enabled just before any of the Update methods is called the first time. |
Update | Update is called every frame, if the MonoBehaviour is enabled. |