This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using UnityEngine; | |
// Sets the rect of the attached RectTransform to a viewport space rect, regardless of the pivot, anchors, or (optionally) scale of the RectTransform. | |
[ExecuteAlways] | |
[RequireComponent(typeof(RectTransform))] | |
public class AbsoluteRectTransformController : MonoBehaviour { | |
public Rect viewportRect = new Rect(0,0,1,1); | |
public bool ignoreScale; | |
static Vector3[] corners = new Vector3[4]; | |
DrivenRectTransformTracker drivenRectTransformTracker; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using UnityEngine; | |
using UnityEditor; | |
using System.Collections; | |
public static class BetterPropertyField { | |
/// <summary> | |
/// Draws a serialized property (including children) fully, even if it's an instance of a custom serializable class. | |
/// Supersedes EditorGUILayout.PropertyField(serializedProperty, true); | |
/// </summary> | |
/// <param name="_serializedProperty">Serialized property.</param> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Developed by Tom Kail at Inkle | |
// Released under the MIT Licence as held at https://opensource.org/licenses/MIT | |
// Must be placed within a folder named "Editor" | |
using System; | |
using System.Reflection; | |
using System.Collections; | |
using System.Collections.Generic; | |
using UnityEngine; | |
using UnityEditor; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// RiveUIRenderer.cs created by Tom Kail. This file is licensed under the MIT License. | |
// Renders a Rive asset to Unity UI using a RenderTexture in a similar manner to RawImage. | |
// Supports pointer events and masking. | |
using UnityEngine; | |
using UnityEngine.Rendering; | |
using Rive; | |
using UnityEngine.EventSystems; | |
using UnityEngine.UI; | |
[ExecuteAlways] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Usage example: | |
// using System.Collections.Generic; | |
// using System.Text.RegularExpressions; | |
// public enum AudioCategory { | |
// Undefined, | |
// Music, | |
// Narration, | |
// } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System.Reflection; | |
using TMPro; | |
using UnityEngine; | |
using UnityEngine.EventSystems; | |
using UnityEngine.UI; | |
// Workaround for Unity's inability to keep an input field selected when you click a button. | |
// Call ReactivateInputField to immediately activate and restore caret position/selection. | |
// This class also tracks the state of the last selected input field in Update, allowing easier restoration of the input field when it becomes deselected. | |
// Common use cases are to: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System.IO; | |
using UnityEditor; | |
using UnityEditor.Presets; | |
using System.Linq; | |
// This script automatically applies Presets to assets when they are imported into a folder containing a Preset. | |
// It also adds any labels on the Preset file to the asset. | |
public class PresetImportPerFolder : AssetPostprocessor { | |
void OnPreprocessAsset() { | |
// Make sure we are applying presets the first time an asset is imported. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Add this to convert a local position to an anchored position | |
public static Vector2 GetLocalToAnchoredPositionOffset(this RectTransform rectTransform) { | |
var parentRT = (RectTransform) rectTransform.parent; | |
var pivotAnchor = new Vector2(Mathf.LerpUnclamped(rectTransform.anchorMin.x, rectTransform.anchorMax.x, rectTransform.pivot.x), Mathf.LerpUnclamped(rectTransform.anchorMin.y, rectTransform.anchorMax.y, rectTransform.pivot.y)); | |
return -parentRT.rect.size * (pivotAnchor - parentRT.pivot); | |
} | |
// Add this to convert a local position to an anchored position | |
public static Vector2 GetAnchoredToLocalPositionOffset(this RectTransform rectTransform) { | |
return -rectTransform.GetLocalToAnchoredPositionOffset(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Select:End="100000" RelativeTo="Project" Start="40" Track="0" TrackCount="1" | |
Delete: | |
Select:End="2" RelativeTo="ProjectEnd" Start="0" | |
Copy: | |
SelectNone: | |
Paste: | |
SelectTracks:Mode="Set" Track="0" TrackCount="2" | |
CrossfadeTracks:curve="0" direction="Automatic" type="ConstantGain" | |
MixAndRender: | |
SelectNone: |
NewerOlder