Add IAacDefaultsProvider.ConfigureStateMachine(...) to position the core nodes
This commit is contained in:
@@ -634,10 +634,8 @@ namespace AnimatorAsCode.V0
|
|||||||
|
|
||||||
var layer = TryGetLayer(layerName);
|
var layer = TryGetLayer(layerName);
|
||||||
var machinist = new AacFlStateMachine(layer.stateMachine, _emptyClip, new AacBackingAnimator(this), _defaultsProvider);
|
var machinist = new AacFlStateMachine(layer.stateMachine, _emptyClip, new AacBackingAnimator(this), _defaultsProvider);
|
||||||
return machinist
|
_defaultsProvider.ConfigureStateMachine(layer.stateMachine);
|
||||||
.WithAnyStatePosition(0, 7)
|
return machinist;
|
||||||
.WithEntryPosition(0, -1)
|
|
||||||
.WithExitPosition(7, -1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private int FindIndexOf(string layerName)
|
private int FindIndexOf(string layerName)
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ namespace AnimatorAsCode.V0
|
|||||||
string ConvertLayerName(string systemName);
|
string ConvertLayerName(string systemName);
|
||||||
string ConvertLayerNameWithSuffix(string systemName, string suffix);
|
string ConvertLayerNameWithSuffix(string systemName, string suffix);
|
||||||
Vector2 Grid();
|
Vector2 Grid();
|
||||||
|
void ConfigureStateMachine(AnimatorStateMachine stateMachine);
|
||||||
}
|
}
|
||||||
|
|
||||||
public class AacDefaultsProvider : IAacDefaultsProvider
|
public class AacDefaultsProvider : IAacDefaultsProvider
|
||||||
@@ -54,5 +55,14 @@ namespace AnimatorAsCode.V0
|
|||||||
{
|
{
|
||||||
return new Vector2(250, 70);
|
return new Vector2(250, 70);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void ConfigureStateMachine(AnimatorStateMachine stateMachine)
|
||||||
|
{
|
||||||
|
var grid = Grid();
|
||||||
|
stateMachine.anyStatePosition = grid * new Vector2(0, 7);
|
||||||
|
stateMachine.entryPosition = grid * new Vector2(0, -1);
|
||||||
|
stateMachine.exitPosition = grid * new Vector2(7, -1);
|
||||||
|
stateMachine.parentStateMachinePosition = grid * new Vector2(3, -1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -115,6 +115,7 @@ namespace AnimatorAsCode.V0
|
|||||||
public readonly AnimatorStateMachine Machine;
|
public readonly AnimatorStateMachine Machine;
|
||||||
private readonly AnimationClip _emptyClip;
|
private readonly AnimationClip _emptyClip;
|
||||||
private readonly AacBackingAnimator _backingAnimator;
|
private readonly AacBackingAnimator _backingAnimator;
|
||||||
|
private readonly IAacDefaultsProvider _defaultsProvider;
|
||||||
private readonly float _gridShiftX;
|
private readonly float _gridShiftX;
|
||||||
private readonly float _gridShiftY;
|
private readonly float _gridShiftY;
|
||||||
|
|
||||||
@@ -126,6 +127,7 @@ namespace AnimatorAsCode.V0
|
|||||||
Machine = machine;
|
Machine = machine;
|
||||||
_emptyClip = emptyClip;
|
_emptyClip = emptyClip;
|
||||||
_backingAnimator = backingAnimator;
|
_backingAnimator = backingAnimator;
|
||||||
|
_defaultsProvider = defaultsProvider;
|
||||||
|
|
||||||
var grid = defaultsProvider.Grid();
|
var grid = defaultsProvider.Grid();
|
||||||
_gridShiftX = grid.x;
|
_gridShiftX = grid.x;
|
||||||
@@ -149,6 +151,7 @@ namespace AnimatorAsCode.V0
|
|||||||
{
|
{
|
||||||
var stateMachine = Machine.AddStateMachine(name, GridPosition(x, y));
|
var stateMachine = Machine.AddStateMachine(name, GridPosition(x, y));
|
||||||
var aacMachine = new AacFlStateMachine(stateMachine, _emptyClip, _backingAnimator, DefaultsProvider, this);
|
var aacMachine = new AacFlStateMachine(stateMachine, _emptyClip, _backingAnimator, DefaultsProvider, this);
|
||||||
|
_defaultsProvider.ConfigureStateMachine(stateMachine);
|
||||||
_childNodes.Add(aacMachine);
|
_childNodes.Add(aacMachine);
|
||||||
return aacMachine;
|
return aacMachine;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user