コード例 #1
0
        void Awake()
        {
            //Debug.Log("Test");
            Modular3DText text = gameObject.GetComponent <Modular3DText>();

            if (!text)
            {
                return;
            }

            bool empty = true;

            if (text.characterObjectList.Count > 0)
            {
                for (int i = 0; i < text.characterObjectList.Count; i++)
                {
                    if (text.characterObjectList[i])
                    {
                        empty = false;
                    }
                }
                if (gameObject.GetComponent <MeshFilter>())
                {
                    if (gameObject.GetComponent <MeshFilter>().sharedMesh != null)
                    {
                        empty = false;
                    }
                }
            }

            if (empty)
            {
                text.UpdateText();
            }
        }
コード例 #2
0
        void OnEnable()
        {
            myTarget = (Modular3DText)target;
            soTarget = new SerializedObject(target);

            text = soTarget.FindProperty("text");

            //creation settings
            autoCreateInPlayMode = soTarget.FindProperty("autoCreateInPlayMode");
            autoCreateInEditor   = soTarget.FindProperty("autoCreateInEditor");
            autoSaveMesh         = soTarget.FindProperty("autoSaveMesh");

            //main settings
            font     = soTarget.FindProperty("font");
            material = soTarget.FindProperty("material");
            fontSize = soTarget.FindProperty("fontSize");

            characterSpacingInput = soTarget.FindProperty("characterSpacingInput");
            lineSpacingInput      = soTarget.FindProperty("lineSpacingInput");

            //position settings
            height = soTarget.FindProperty("height");
            length = soTarget.FindProperty("length");
            //depth = soTarget.FindProperty("depth");

            //circular Layout
            circularAlignmentRadius       = soTarget.FindProperty("circularAlignmentRadius");
            circularAlignmentSpreadAmount = soTarget.FindProperty("circularAlignmentSpreadAmount");
            circularAlignmentAngle        = soTarget.FindProperty("circularAlignmentAngle");

            //effects
            typingEffects             = soTarget.FindProperty("typingEffects");
            deletingEffects           = soTarget.FindProperty("deletingEffects");
            customDeleteAfterDuration = soTarget.FindProperty("customDeleteAfterDuration");
            deleteAfter = soTarget.FindProperty("deleteAfter");

            //advanced
            repositionOldCharacters       = soTarget.FindProperty("repositionOldCharacters");
            reApplyModulesToOldCharacters = soTarget.FindProperty("reApplyModulesToOldCharacters");
            //activateChildObjects = soTarget.FindProperty("activateChildObjects");

            pool = soTarget.FindProperty("pooling");
            combineMeshInEditor              = soTarget.FindProperty("combineMeshInEditor");
            dontCombineInEditorAnyway        = soTarget.FindProperty("dontCombineInEditorAnyway");
            combineMeshDuringRuntime         = soTarget.FindProperty("combineMeshDuringRuntime");
            hideLettersInHierarchyInPlayMode = soTarget.FindProperty("hideLettersInHierarchyInPlayMode");
            hideLettersInHierarchyInEditMode = soTarget.FindProperty("hideLettersInHierarchyInEditMode");
            combineMeshDuringRuntime         = soTarget.FindProperty("combineMeshDuringRuntime");

            canBreakOutermostPrefab = soTarget.FindProperty("canBreakOutermostPrefab");


            showCreationettings  = myTarget.showCreationettingsInEditor;
            showMainSettings     = myTarget.showMainSettingsInEditor;
            showModuleSettings   = myTarget.showModuleSettingsInEditor;
            showAdvancedSettings = myTarget.showAdvancedSettingsInEditor;
        }
コード例 #3
0
        public static GameObject GetObject(char c, Modular3DText text)
        {
            GameObject obj = null;

#if UNITY_EDITOR
            if (EditorApplication.isPlaying)
            {
                if (text.pooling && text.pool)
                {
                    obj = text.pool.GetPoolItem(text.font, c);
                }
                else
                {
                    Mesh meshPrefab = text.font.RetrievePrefab(c);
                    if (meshPrefab)
                    {
                        obj = new GameObject {
                            name = c.ToString()
                        };
                        obj.AddComponent <MeshFilter>();
                        obj.GetComponent <MeshFilter>().sharedMesh = meshPrefab;
                    }
                }
            }
            else
            {
                Mesh meshPrefab = text.font.RetrievePrefab(c);
                if (meshPrefab)
                {
                    obj = new GameObject {
                        name = c.ToString()
                    };
                    obj.AddComponent <MeshFilter>();
                    obj.GetComponent <MeshFilter>().sharedMesh = meshPrefab;
                }
            }
#else
            if (text.pooling && text.pool)
            {
                obj = text.pool.GetPoolItem(text.font, c);
            }
            else
            {
                Mesh meshPrefab = text.font.RetrievePrefab(c);
                if (meshPrefab)
                {
                    obj = new GameObject();
                    obj.AddComponent <MeshFilter>();
                    obj.GetComponent <MeshFilter>().sharedMesh = meshPrefab;
                    obj.name = c.ToString();
                }
            }
#endif
            if (obj == null)
            {
                obj = new GameObject {
                    name = "space"
                };
            }

#if UNITY_EDITOR
            if (!Application.isPlaying)
            {
                if (text.combineMeshInEditor || text.hideLettersInHierarchyInEditMode)
                {
                    obj.hideFlags = HideFlags.HideInHierarchy;
                }
            }
            else
            {
                if (text.hideLettersInHierarchyInPlayMode)
                {
                    obj.hideFlags = HideFlags.HideInHierarchy;
                }
            }
#endif

            //if (text.activateChildObjects)
            obj.SetActive(true);
            //else obj.SetActive(false);
            return(obj);
        }
コード例 #4
0
ファイル: TimerDisplay.cs プロジェクト: mirobeka/isometric_3d
 void Start()
 {
     modularText = GetComponent <Modular3DText>();
 }