Skip to content

Instantly share code, notes, and snippets.

@SolarianZ
SolarianZ / AnimationClipCurveTool.cs
Last active May 7, 2024 05:21
{"category": "Unity Engine/Editor/Extensions", "keywords": "Unity, Editor, AnimationClip, Curve, Bind, PropertyStreamHandle, RootMotion, Pose"} AnimationClip extensions for process curves.
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEditor;
using UnityEngine;
using UDebug = UnityEngine.Debug;
public static class AnimationClipCurveTool
{
#region Playable Binding
@SolarianZ
SolarianZ / MotionPreview.cs
Last active July 3, 2024 20:09
{"category": "Unity Engine/Editor/Extensions", "keywords": "Unity, Editor, AnimationClip, Preview, UI"} An `AnimationClip` preview UI component that can be embedded into other `Editor`s.
using System;
using UnityEditor.Animations;
using UnityEngine;
using Object = UnityEngine.Object;
// NOTE: The Reflector.cs is here: https://gist.github.com/SolarianZ/e8980ee322182a76745e6cb5aac99b4d
// Usage(function calling hierarchy):
// 1. YourCustomInpector.OnEnable() -> _motionPreview = new MotionPreview();
// 2. YourCustomInpector.OnPreviewSettings() -> _motionPreview.OnPreviewSettings();
@SolarianZ
SolarianZ / Reflector.cs
Last active November 26, 2024 12:43
{"category": "C#/Runtime/Utility", "keywords": "Reflection"} A simple C# utility class used to access non-public types and members.
using System;
using System.Reflection;
public static class Reflector
{
public const BindingFlags DefaultBindingFlags = BindingFlags.Instance | BindingFlags.Static |
BindingFlags.Public | BindingFlags.NonPublic;
#region Type/Instance