Skip to content

Commit 170133d

Browse files
committed
Pull request fixes
1 parent 70f956c commit 170133d

File tree

1 file changed

+20
-22
lines changed

1 file changed

+20
-22
lines changed

Assets/FbxExporters/Editor/FbxExporter.cs

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@ public class ModelExporter : System.IDisposable
8585
const string ClipMenuItemName = "GameObject/Export All Timeline Clips...";
8686
const string TimelineClipMenuItemName = "GameObject/Export Selected Timeline Clip...";
8787

88-
8988
const string AnimOnlyMenuItemName = "GameObject/Export Animation Only";
9089

9190
const string FileBaseName = "Untitled";
@@ -1337,7 +1336,7 @@ protected bool ExportLight (GameObject unityGo, FbxScene fbxScene, FbxNode fbxNo
13371336
if (!MapLightType.TryGetValue (unityLight.type, out fbxLightType))
13381337
return false;
13391338

1340-
FbxLight fbxLight = FbxLight.Create (fbxScene.GetFbxManager (), unityLight.name);
1339+
FbxLight fbxLight = FbxLight.Create (fbxScene.GetFbxManager (), unityLight.name);
13411340

13421341
// Set the type of the light.
13431342
fbxLight.LightType.Set(fbxLightType);
@@ -2528,7 +2527,7 @@ protected Dictionary<GameObject, AnimationOnlyExportData> GetTimelineAnimationEx
25282527
return data;
25292528
}
25302529

2531-
protected Dictionary<GameObject, AnimationOnlyExportData> GetAnimationExportData(HashSet<GameObject> exportSet)
2530+
protected Dictionary<GameObject, AnimationOnlyExportData> GetAnimationExportData(HashSet<GameObject> exportSet)
25322531
{
25332532
Dictionary<GameObject, AnimationOnlyExportData> hierarchyToExportData = new Dictionary<GameObject, AnimationOnlyExportData>();
25342533

@@ -2613,8 +2612,6 @@ protected Dictionary<GameObject, AnimationOnlyExportData> GetAnimationExportData
26132612
return hierarchyToExportData;
26142613
}
26152614

2616-
2617-
26182615
/// <summary>
26192616
/// Export components on this game object.
26202617
/// Transform components have already been exported.
@@ -2824,7 +2821,7 @@ public enum TransformExportType { Local, Global, Reset };
28242821
///
28252822
/// This refreshes the asset database.
28262823
/// </summary>
2827-
public int ExportAll (IEnumerable<UnityEngine.Object> unityExportSet, Dictionary<GameObject, AnimationOnlyExportData> animationExportData /*, bool animOnly = false*/)
2824+
public int ExportAll (IEnumerable<UnityEngine.Object> unityExportSet, Dictionary<GameObject, AnimationOnlyExportData> animationExportData)
28282825
{
28292826
exportCancelled = false;
28302827

@@ -3057,7 +3054,10 @@ private void ReplaceFile ()
30573054
}
30583055
}
30593056

3060-
[MenuItem(TimelineClipMenuItemName, false, 31)]
3057+
/// <summary>
3058+
/// Add an option "Export selected Timeline clip" in the contextual GameObject menu.
3059+
/// </summary>
3060+
[MenuItem(TimelineClipMenuItemName, false, 31)]
30613061
static void OnClipContextClick(MenuCommand command)
30623062
{
30633063
// Now that we know we have stuff to export, get the user-desired path.
@@ -3072,27 +3072,22 @@ static void OnClipContextClick(MenuCommand command)
30723072
{
30733073
return;
30743074
}
3075-
Debug.Log(folderPath);
3076-
30773075

30783076
var selectedObjects = Selection.objects;
30793077
foreach (var obj in selectedObjects)
30803078
{
30813079
if (obj.GetType().Name.Contains("EditorClip"))
30823080
{
30833081
var selClip = obj.GetType().GetProperty("clip").GetValue(obj, null);
3084-
UnityEngine.Timeline.TimelineClip timeLineClip = selClip as UnityEngine.Timeline.TimelineClip;
3082+
UnityEngine.Timeline.TimelineClip timeLineClip = selClip as UnityEngine.Timeline.TimelineClip;
30853083

30863084
var selClipItem = obj.GetType().GetProperty("item").GetValue(obj, null);
30873085
var selClipItemParentTrack = selClipItem.GetType().GetProperty("parentTrack").GetValue(selClipItem, null);
30883086
AnimationTrack editorClipAnimationTrack = selClipItemParentTrack as AnimationTrack;
30893087

30903088
GameObject animationTrackGObject = UnityEditor.Timeline.TimelineEditor.playableDirector.GetGenericBinding (editorClipAnimationTrack) as GameObject;
30913089

3092-
Debug.Log("obj name: " + obj.name + " /clip name: " + editorClipAnimationTrack.name + " /timelineAssetName: " + animationTrackGObject.name);
3093-
30943090
string filePath = folderPath + "/" + animationTrackGObject.name + "@" + timeLineClip.animationClip.name + ".fbx";
3095-
Debug.Log("filepath: " + filePath);
30963091
UnityEngine.Object[] myArray = new UnityEngine.Object[] { animationTrackGObject, timeLineClip.animationClip };
30973092

30983093
ExportObjects(filePath, myArray, AnimationExportType.timelineAnimationClip);
@@ -3103,7 +3098,7 @@ static void OnClipContextClick(MenuCommand command)
31033098

31043099

31053100
/// <summary>
3106-
/// Add an option "Update from FBX" in the contextual GameObject menu.
3101+
/// Add an option "Export all Timeline clips" in the contextual GameObject menu.
31073102
/// </summary>
31083103
[MenuItem(ClipMenuItemName, false, 31)]
31093104
static void OnGameObjectWithTimelineContextClick(MenuCommand command)
@@ -3151,12 +3146,15 @@ static void OnGameObjectWithTimelineContextClick(MenuCommand command)
31513146
AnimationTrack at = output.sourceObject as AnimationTrack;
31523147

31533148
GameObject atObject = pd.GetGenericBinding(output.sourceObject) as GameObject;
3149+
// One file by animation clip
3150+
foreach(TimelineClip timeLineClip in at.GetClips())
3151+
{
3152+
string filePath = folderPath + "/" + atObject.name + "@" + timeLineClip.animationClip.name + ".fbx";
3153+
UnityEngine.Object[] myArray = new UnityEngine.Object[] { atObject, timeLineClip.animationClip };
3154+
Debug.Log("filepath: " + filePath);
3155+
ExportObjects(filePath, myArray, AnimationExportType.timelineAnimationClip);
31543156

3155-
string filePath = folderPath + "/" + atObject.name + "@" + at.name + ".fbx";
3156-
Debug.Log("filepath: " + filePath);
3157-
UnityEngine.Object[] myArray = new UnityEngine.Object[] { atObject, at};
3158-
3159-
ExportObjects(filePath, myArray, AnimationExportType.timelineAnimationTrack);
3157+
}
31603158
}
31613159
}
31623160
}
@@ -3187,8 +3185,8 @@ public static bool ValidateClipContextClick()
31873185
return false;
31883186
}
31893187

3190-
/// <summary>
3191-
/// Add a menu item to a GameObject's context menu.
3188+
/// <summary>
3189+
/// Add a menu item "Export Model..." to a GameObject's context menu.
31923190
/// </summary>
31933191
/// <param name="command">Command.</param>
31943192
[MenuItem (MenuItemName, false, 30)]
@@ -3211,7 +3209,7 @@ public static bool OnValidateMenuItem ()
32113209
}
32123210

32133211
/// <summary>
3214-
/// Add a menu item to a GameObject's context menu.
3212+
/// Add a menu item "Export Animation Only" to a GameObject's context menu.
32153213
/// </summary>
32163214
/// <param name="command">Command.</param>
32173215
[MenuItem (AnimOnlyMenuItemName, false, 30)]

0 commit comments

Comments
 (0)