• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by emilche123 · Feb 05, 2018 at 10:36 AM · c#animationclipblendshapescsv

Is it possible to add blendshape animation through script?

Hi. I have been trying to add some animation to my blendshapes through a text document that is separated through commas. I have been able to read the lines and everything just fine. the only thing is that I can not reference the blendshapes on the skinned mesh.

alt text

So I guess my problem is that I am not able to reference to the correct mesh renderer. Or that it is the meta file that does not work.

Here is my code: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor;

 public class ReadLines : EditorWindow {
 
     
     public Object csvFile;
     public string text;
     public GameObject animobject;
     public AnimationClip anim_obj;
     public Keyframe[] ks;
     public string[] bs_name;
 
     [MenuItem("Window/Import Blendshapes")]
     public static void ShowWindow()
     {
         GetWindow<ReadLines>("Import Blendshapes");
     }
 
     void OnGUI()
     {
         GUILayout.Label("Insert text here.", EditorStyles.boldLabel);
         csvFile = EditorGUILayout.ObjectField(csvFile, typeof(TextAsset), true);
         anim_obj = EditorGUILayout.ObjectField("Animation", anim_obj, typeof(AnimationClip), true) as AnimationClip;
         animobject = EditorGUILayout.ObjectField("Mesh to get blendshapes", animobject, typeof(GameObject), true) as GameObject;
         AnimationClip anim = anim_obj;
        
         if(GUILayout.Button("Read Lines"))
         {
             AnimationCurve curve;
             AnimationClip clip = anim;
             clip.legacy = false;
             text = csvFile.ToString();
             string[] lines = text.Split("\n"[0]);
             bs_name = new string[lines.Length];
             ks = new Keyframe[lines.Length];
             int y = 0;
             
             foreach (var i in lines)
             {
                 string[] parts = i.Split(","[0]);
                 foreach(var x in parts)
                 {
                     //Debug.Log(parts[1]);
                     //Debug.Log(parts[2]);
                     //Debug.Log(parts[3]);
                     float kf = float.Parse(parts[0]);
                     
                     string timestamp = parts[1];
                     
                     bs_name[y] = "Blend Shape." + parts[2];
                     
                     float bs_amount = float.Parse(parts[3]);
                     
                     ks[y] = new Keyframe(kf, bs_amount);
                     
                     
                 }
                 y++;
             }
             curve = new AnimationCurve(ks);
             
             foreach (string bs in bs_name)
             {
                 
                 clip.SetCurve(animobject.name, typeof(SkinnedMeshRenderer), bs, curve);
             }
             
         }
         
     }
 
 }
issue.jpg (143.3 kB)
Comment
Add comment · Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image meat5000 ♦ · Feb 05, 2018 at 10:48 AM 0
Share

https://docs.unity3d.com/$$anonymous$$anual/BlendShapes.html

Did you read this page?

avatar image emilche123 meat5000 ♦ · Feb 05, 2018 at 12:10 PM 0
Share

yes. But i do not need to set the value in runtime. I need to set the animation curve of a keyframe in the animation clip through an editor script. And the animation clip does not find my blendshape. it says it is missing.

2 Replies

· Add your reply
  • Sort: 
avatar image
3
Best Answer

Answer by emilche123 · Feb 05, 2018 at 12:26 PM

This has been solved. The problem was the "Blend Shape." reference. It has to be "blendShape."

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by huanzhang · Sep 14, 2018 at 02:40 AM

I want to know what documents you read. Can I see the contents?

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

497 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Distribute terrain in zones 3 Answers

Play a second animation 2 Answers

How to add Animation with C# 0 Answers

Animations one by one 0 Answers

Multiple Cars not working 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges