UnityEditor.SkinnedMeshRendererEditor.OnBlendShapeUI C# (CSharp) Method

OnBlendShapeUI() public method

public OnBlendShapeUI ( ) : void
return void
        public void OnBlendShapeUI()
        {
            SkinnedMeshRenderer target = (SkinnedMeshRenderer) base.target;
            int num = (target.sharedMesh != null) ? target.sharedMesh.blendShapeCount : 0;
            if (num != 0)
            {
                GUIContent label = new GUIContent {
                    text = "BlendShapes"
                };
                EditorGUILayout.PropertyField(this.m_BlendShapeWeights, label, false, new GUILayoutOption[0]);
                if (this.m_BlendShapeWeights.isExpanded)
                {
                    EditorGUI.indentLevel++;
                    Mesh sharedMesh = target.sharedMesh;
                    int arraySize = this.m_BlendShapeWeights.arraySize;
                    for (int i = 0; i < num; i++)
                    {
                        label.text = sharedMesh.GetBlendShapeName(i);
                        if (i < arraySize)
                        {
                            EditorGUILayout.PropertyField(this.m_BlendShapeWeights.GetArrayElementAtIndex(i), label, new GUILayoutOption[0]);
                        }
                        else
                        {
                            EditorGUI.BeginChangeCheck();
                            float num4 = EditorGUILayout.FloatField(label, 0f, new GUILayoutOption[0]);
                            if (EditorGUI.EndChangeCheck())
                            {
                                this.m_BlendShapeWeights.arraySize = num;
                                arraySize = num;
                                this.m_BlendShapeWeights.GetArrayElementAtIndex(i).floatValue = num4;
                            }
                        }
                    }
                    EditorGUI.indentLevel--;
                }
            }
        }