| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | using UnityEngine;using System.Collections;namespace TMPro.Examples{        public class TMPro_InstructionOverlay : MonoBehaviour    {        public enum FpsCounterAnchorPositions { TopLeft, BottomLeft, TopRight, BottomRight };        public FpsCounterAnchorPositions AnchorPosition = FpsCounterAnchorPositions.BottomLeft;        private const string instructions = "Camera Control - <#ffff00>Shift + RMB\n</color>Zoom - <#ffff00>Mouse wheel.";        private TextMeshPro m_TextMeshPro;        private TextContainer m_textContainer;        private Transform m_frameCounter_transform;        private Camera m_camera;        //private FpsCounterAnchorPositions last_AnchorPosition;        void Awake()        {            if (!enabled)                return;            m_camera = Camera.main;            GameObject frameCounter = new GameObject("Frame Counter");            m_frameCounter_transform = frameCounter.transform;            m_frameCounter_transform.parent = m_camera.transform;            m_frameCounter_transform.localRotation = Quaternion.identity;            m_TextMeshPro = frameCounter.AddComponent<TextMeshPro>();            m_TextMeshPro.font = Resources.Load<TMP_FontAsset>("Fonts & Materials/LiberationSans SDF");            m_TextMeshPro.fontSharedMaterial = Resources.Load<Material>("Fonts & Materials/LiberationSans SDF - Overlay");            m_TextMeshPro.fontSize = 30;            m_TextMeshPro.isOverlay = true;            m_textContainer = frameCounter.GetComponent<TextContainer>();            Set_FrameCounter_Position(AnchorPosition);            //last_AnchorPosition = AnchorPosition;            m_TextMeshPro.text = instructions;        }        void Set_FrameCounter_Position(FpsCounterAnchorPositions anchor_position)        {            switch (anchor_position)            {                case FpsCounterAnchorPositions.TopLeft:                    //m_TextMeshPro.anchor = AnchorPositions.TopLeft;                    m_textContainer.anchorPosition = TextContainerAnchors.TopLeft;                    m_frameCounter_transform.position = m_camera.ViewportToWorldPoint(new Vector3(0, 1, 100.0f));                    break;                case FpsCounterAnchorPositions.BottomLeft:                    //m_TextMeshPro.anchor = AnchorPositions.BottomLeft;                    m_textContainer.anchorPosition = TextContainerAnchors.BottomLeft;                    m_frameCounter_transform.position = m_camera.ViewportToWorldPoint(new Vector3(0, 0, 100.0f));                    break;                case FpsCounterAnchorPositions.TopRight:                    //m_TextMeshPro.anchor = AnchorPositions.TopRight;                    m_textContainer.anchorPosition = TextContainerAnchors.TopRight;                    m_frameCounter_transform.position = m_camera.ViewportToWorldPoint(new Vector3(1, 1, 100.0f));                    break;                case FpsCounterAnchorPositions.BottomRight:                    //m_TextMeshPro.anchor = AnchorPositions.BottomRight;                    m_textContainer.anchorPosition = TextContainerAnchors.BottomRight;                    m_frameCounter_transform.position = m_camera.ViewportToWorldPoint(new Vector3(1, 0, 100.0f));                    break;            }        }    }}
 |