예제 #1
0
        protected virtual void OnDrawGizmos()
        {
            if (showGrid && world)
            {
                Gizmos.color = gizmosColor;
                Vector3 p = Vector3.zero;

                for (int i = 0; i <= spanX; i++)
                {
                    p.x = i * world.cellSize;
                    p.z = 0;
                    Vector3 startPos = IsoUtil.IsoPosToLocalPos(p.x, p.y, p.z);
                    p.z = spanZ * world.cellSize;
                    Vector3 endPos = IsoUtil.IsoPosToLocalPos(p.x, p.y, p.z);
                    Gizmos.DrawLine(transform.TransformPoint(startPos), transform.TransformPoint(endPos));
                }

                for (int i = 0; i <= spanZ; i++)
                {
                    p.z = i * world.cellSize;
                    p.x = 0;
                    Vector3 startPos = IsoUtil.IsoPosToLocalPos(p.x, p.y, p.z);
                    p.x = spanX * world.cellSize;
                    Vector3 endPos = IsoUtil.IsoPosToLocalPos(p.x, p.y, p.z);
                    Gizmos.DrawLine(transform.TransformPoint(startPos), transform.TransformPoint(endPos));
                }
            }
        }
예제 #2
0
        public virtual void UpdateScreenPos()
        {
            Vector2 ScPos = IsoUtil.IsoPosToLocalPos(m_pos3D.x, m_pos3D.y, m_pos3D.z);
            Vector3 pos   = transform.localPosition;

            pos.x = ScPos.x;
            pos.y = ScPos.y;
            transform.localPosition = pos;
            UpdateSpanPos();
        }