public void SetUp() { _controlDriver = new ControlDriver(DriverName, true); _keyframes = new int[3].Select(_ => new SimpleCel()).ToArray(); _testedNode = SimpleAnimationNode.Create <SimpleAnimationNode>( _controlDriver, _keyframes ); }
protected void Awake() { var drivers = new DriverDictionary(); drivers.keys.Add(EventDriver); drivers.values.Add(0); var frame = new SimpleCel(drivers: drivers); Frames = new[] { frame }; Root = SimpleAnimationNode.Create <SimpleAnimationNode>(cels: Frames); Renderer = gameObject.AddComponent <SpriteRenderer>(); Reanimator = gameObject.AddComponent <Reanimator>(); Reanimator.root = Root; }
private static void CreateFromTextures() { var trailingNumbersRegex = new Regex(@"(\d+$)"); var sprites = new List <Sprite>(); var textures = Selection.GetFiltered <Texture2D>(SelectionMode.Assets); foreach (var texture in textures) { string path = AssetDatabase.GetAssetPath(texture); sprites.AddRange(AssetDatabase.LoadAllAssetsAtPath(path).OfType <Sprite>()); } var cels = sprites .OrderBy( sprite => { var match = trailingNumbersRegex.Match(sprite.name); return(match.Success ? int.Parse(match.Groups[0].Captures[0].ToString()) : 0); } ) .Select(sprite => new SimpleCel(sprite)) .ToArray(); var asset = SimpleAnimationNode.Create <SimpleAnimationNode>( cels: cels ); string baseName = trailingNumbersRegex.Replace(textures[0].name, ""); asset.name = baseName + "_animation"; string assetPath = Path.GetDirectoryName(AssetDatabase.GetAssetPath(textures[0])); AssetDatabase.CreateAsset(asset, Path.Combine(assetPath ?? Application.dataPath, asset.name + ".asset")); AssetDatabase.SaveAssets(); }