| 
                 Add Animation to Objects in Unity
  Create a GameObject->3D Object->Cube, or use any object in your scene.
  Select the model, Select Window->Animation->Animation  (This brings up a timeline.)      Select the Create button, name the animation   (This creates an Animator and the Animation Clip with keyframes.)      Select the Add Property button.           Choose Transform->Position +   (This adds 2 keyframes)                Open the down arrow   to see the XYZ channels and values, 2 default keyframes, frame 0 and 60 are added.           Change the time on the Timeline           Move the Cube           Click the Add keyframe button
  
  Play the Game to see the animation.
  Select Curves at the bottom of the Timeline window to manipulate acceleration between keys.      Right click over a key to bring up the menu, make your selection.
  Switch to Curves tab to see the curves
  Close the Timeline window when you are through.
 
  
  Select the object in the Hierarchy if the clip is not added under Animation, connect it.  
 
  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Import Maya Animation Channels  (Default Generic Animator)
  Save your Maya file with animation into your Assets folder.
  Select the Maya file from the Assets folder:      Under Rig leave the Animation Type Generic
       Under Animation select Loop Time      Hit Apply
 
  Drag your Maya file into your Hierarchy.
 
  Top menu bar  Assets->Create->Animator Controller, name it.
  Drag the Animation Controller onto your Maya file in the Hierarchy.
  From Assets, double click the Animation Controller, this brings up the Animator window.
  From Assets, open the small arrow to reveal the contents of your Maya file in the Project window  
  Drag Take 001 into the Animator window
 
  
 
 
  :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  Legacy Animator with Maya Model Select the Maya file in the Assets list, select the Model section in the Inspector tab      Change the Scale Factor to .3       Uncheck Import Cameras and Lights      Hit Apply
  
 
  Switch to Legacy Animation Select your Maya Model in the Assets area Switch to the Rig tab in the Inspector on the right.      Change Animation Type to Legacy  (default was Generic)      Hit Apply
 
  Loop and Fix channel name Change to the Animation section of the Inspector tab      Change Wrap Mode to Loop  (near top)      Change Wrap Mode located beneath Take 001 to Loop
       Change the Clip Name to Take 001 + something descriptive Hit Apply
 
  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Randomize the time and speed for multiple animations Written by Alex Rickett UCLA Game Lab
  Apply this script to any animated object, Legacy or Default.
  Select your object 
  Select the Add Component button      Scroll down to New script           Type a name: RandomAnimation           Double click the C# script in your Assets folder
  using System.Collections; using System.Collections.Generic; using UnityEngine;
  public class RandomAnimation : MonoBehaviour {     public float speedRandomizationAmount = .05f;     IEnumerator Start()     {         yield return null;         yield return null;         yield return null;         Animator animator = this.GetComponent<Animator>();         if (animator != null)         {             animator.speed = Random.Range(1 - speedRandomizationAmount, 1 + speedRandomizationAmount);             animator.Play(animator.GetAnimatorTransitionInfo(0).nameHash, 0, Random.Range(0f, 1f));                      }
          Animation animation = this.GetComponent<Animation>();         if (animation != null)         {
              animation[animation.clip.name].speed = Random.Range(1 - speedRandomizationAmount, 1 + speedRandomizationAmount);             animation[animation.clip.name].normalizedTime = Random.Range(0f, 1f);         }         //yield return new WaitForSeconds(0, .2f);     } }
 
 
 
 
  
  
             |