Skip to content

Instantly share code, notes, and snippets.

View lazlo-bonin's full-sized avatar

Lazlo lazlo-bonin

View GitHub Profile
@lazlo-bonin
lazlo-bonin / UndoUtility.cs
Last active January 29, 2024 11:24
Fixing Unity's broken Undo.RecordObject
using UnityEditor;
using UnityEngine;
using UnityObject = UnityEngine.Object;
namespace Ludiq
{
public static class UndoUtility
{
private static void RecordObject(UnityObject uo, string name)
{
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
namespace Impossible.Ete
{
// Relays IK values to the animator callback
[RequireComponent(typeof(Animator))]
public class InverseKinematicsRelay : BaseComponent
Ludiq.Graph.Clip=Ai8AAAAAAF4AAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5IYXNoU2V0YDFbW0x1ZGlxLklHcmFwaEVsZW1lbnQsIEx1ZGlxLkdyYXBocy5SdW50aW1lXV0sIFN5c3RlbS5Db3JlAAAAAAYRAAAAAAAAAAIvAQAAAAAkAAAAQm9sdC5JbnZva2VNZW1iZXIsIEJvbHQuRmxvdy5SdW50aW1lAQAAACkABAAAAGd1aWTC5vsPlV4hR4MaGc1bXbVFAQANAAAAZGVmYXVsdFZhbHVlcy8CAAAAAGYAAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5EaWN0aW9uYXJ5YDJbW1N5c3RlbS5TdHJpbmcsIG1zY29ybGliXSxbU3lzdGVtLk9iamVjdCwgbXNjb3JsaWJdXSwgbXNjb3JsaWICAAAAAQAIAAAAY29tcGFyZXIvAwAAAABZAAAAU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWMuR2VuZXJpY0VxdWFsaXR5Q29tcGFyZXJgMVtbU3lzdGVtLlN0cmluZywgbXNjb3JsaWJdXSwgbXNjb3JsaWIDAAAABQYDAAAAAAAAAAQuKAAGAAAAdGFyZ2V0LgUELigABgAAACVmb3JjZQIvBAAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMywgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZQQAAAAgAAAAACAAAAAAIAAAAEEFBQQuKAAFAAAAJW1vZGUCLwUAAAAAMAAAAFVuaXR5RW5naW5lLkZvcmNlTW9kZSwgVW5pdHlFbmdpbmUuUGh5c2ljc01vZHVsZQUAAAAeAAAAAAAAAAAFBQcFAwAIAAAAcG9zaXRpb24vBgAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMiwgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZSAAwAxEIAAADMIFKwAKAAAAYnJlYWtwb2ludAABAAYAAABtZW1
Ludiq.Graph.Clip=Ai8AAAAAAF4AAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5IYXNoU2V0YDFbW0x1ZGlxLklHcmFwaEVsZW1lbnQsIEx1ZGlxLkdyYXBocy5SdW50aW1lXV0sIFN5c3RlbS5Db3JlAAAAAAYFAAAAAAAAAAIvAQAAAAAkAAAAQm9sdC5JbnZva2VNZW1iZXIsIEJvbHQuRmxvdy5SdW50aW1lAQAAACkABAAAAGd1aWTC5vsPlV4hR4MaGc1bXbVFAQANAAAAZGVmYXVsdFZhbHVlcy8CAAAAAGYAAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5EaWN0aW9uYXJ5YDJbW1N5c3RlbS5TdHJpbmcsIG1zY29ybGliXSxbU3lzdGVtLk9iamVjdCwgbXNjb3JsaWJdXSwgbXNjb3JsaWICAAAAAQAIAAAAY29tcGFyZXIvAwAAAABZAAAAU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWMuR2VuZXJpY0VxdWFsaXR5Q29tcGFyZXJgMVtbU3lzdGVtLlN0cmluZywgbXNjb3JsaWJdXSwgbXNjb3JsaWIDAAAABQYDAAAAAAAAAAQuKAAGAAAAdGFyZ2V0LgUELigABgAAACVmb3JjZQIvBAAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMywgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZQQAAAAgAAAAACAAAAAAIAAAAEEFBQQuKAAFAAAAJW1vZGUCLwUAAAAAMAAAAFVuaXR5RW5naW5lLkZvcmNlTW9kZSwgVW5pdHlFbmdpbmUuUGh5c2ljc01vZHVsZQUAAAAeAAAAAAAAAAAFBQcFAwAIAAAAcG9zaXRpb24vBgAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMiwgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZSAAwAxEIAAADMIFKwAKAAAAYnJlYWtwb2ludAABAAYAAABtZW1
Ludiq.Graph.Clip=Ai8AAAAAAF4AAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5IYXNoU2V0YDFbW0x1ZGlxLklHcmFwaEVsZW1lbnQsIEx1ZGlxLkdyYXBocy5SdW50aW1lXV0sIFN5c3RlbS5Db3JlAAAAAAYFAAAAAAAAAAIvAQAAAAAkAAAAQm9sdC5JbnZva2VNZW1iZXIsIEJvbHQuRmxvdy5SdW50aW1lAQAAACkABAAAAGd1aWTC5vsPlV4hR4MaGc1bXbVFAQANAAAAZGVmYXVsdFZhbHVlcy8CAAAAAGYAAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5EaWN0aW9uYXJ5YDJbW1N5c3RlbS5TdHJpbmcsIG1zY29ybGliXSxbU3lzdGVtLk9iamVjdCwgbXNjb3JsaWJdXSwgbXNjb3JsaWICAAAAAQAIAAAAY29tcGFyZXIvAwAAAABZAAAAU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWMuR2VuZXJpY0VxdWFsaXR5Q29tcGFyZXJgMVtbU3lzdGVtLlN0cmluZywgbXNjb3JsaWJdXSwgbXNjb3JsaWIDAAAABQYDAAAAAAAAAAQuKAAGAAAAdGFyZ2V0LgUELigABgAAACVmb3JjZQIvBAAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMywgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZQQAAAAgAAAAACAAAAAAIAAAAEEFBQQuKAAFAAAAJW1vZGUCLwUAAAAAMAAAAFVuaXR5RW5naW5lLkZvcmNlTW9kZSwgVW5pdHlFbmdpbmUuUGh5c2ljc01vZHVsZQUAAAAeAAAAAAAAAAAFBQcFAwAIAAAAcG9zaXRpb24vBgAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMiwgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZSAAwAxEIAAADMIFKwAKAAAAYnJlYWtwb2ludAABAAYAAABtZW1
Ludiq.Graph.Clip=Ai8AAAAAAF4AAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5IYXNoU2V0YDFbW0x1ZGlxLklHcmFwaEVsZW1lbnQsIEx1ZGlxLkdyYXBocy5SdW50aW1lXV0sIFN5c3RlbS5Db3JlAAAAAAYFAAAAAAAAAAIvAQAAAAAkAAAAQm9sdC5JbnZva2VNZW1iZXIsIEJvbHQuRmxvdy5SdW50aW1lAQAAACkABAAAAGd1aWTC5vsPlV4hR4MaGc1bXbVFAQANAAAAZGVmYXVsdFZhbHVlcy8CAAAAAGYAAABTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYy5EaWN0aW9uYXJ5YDJbW1N5c3RlbS5TdHJpbmcsIG1zY29ybGliXSxbU3lzdGVtLk9iamVjdCwgbXNjb3JsaWJdXSwgbXNjb3JsaWICAAAAAQAIAAAAY29tcGFyZXIvAwAAAABZAAAAU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWMuR2VuZXJpY0VxdWFsaXR5Q29tcGFyZXJgMVtbU3lzdGVtLlN0cmluZywgbXNjb3JsaWJdXSwgbXNjb3JsaWIDAAAABQYDAAAAAAAAAAQuKAAGAAAAdGFyZ2V0LgUELigABgAAACVmb3JjZQIvBAAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMywgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZQQAAAAgAAAAACAAAAAAIAAAAEEFBQQuKAAFAAAAJW1vZGUCLwUAAAAAMAAAAFVuaXR5RW5naW5lLkZvcmNlTW9kZSwgVW5pdHlFbmdpbmUuUGh5c2ljc01vZHVsZQUAAAAeAAAAAAAAAAAFBQcFAwAIAAAAcG9zaXRpb24vBgAAAAArAAAAVW5pdHlFbmdpbmUuVmVjdG9yMiwgVW5pdHlFbmdpbmUuQ29yZU1vZHVsZSAAwAxEIAAADMIFKwAKAAAAYnJlYWtwb2ludAABAAYAAABtZW1