签到

05月05日
尚未签到

共有回帖数 1

    幻梦如戏

    等级:
    圆形小地图,
    可实现远近调节
    方向标示




    这是PlayerIcon,是要在小地图显示你的位置和方向的。很简单,创建一个Quad然后作为你的Player的子物体就欧了。材质想必大家不用说怎么创建添加了,贴图是我在PS随便画的。
























    现在把代码部分贴上来


    两个脚本,一个是用于zoom,一个用于方向。
    新建C#脚本命名为ZoomMiniMap,将其挂载到MinimapCamera,参考前面的MiniMapCamera检视面板。脚本如下


    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    public class ZoomMiniMap : MonoBehaviour {
    public Transform playerIcon;
    public float speed = 10f;
    Camera c;
    bool canZoomIn;
    bool canZoomOut;
    float ratio;
    void Start ()
    {
    c = GetComponentCamera ();
    canZoomIn = false;
    canZoomOut = false;


    ratio = playerIcon.localScale.x / c.orthographicSize;
    }

    // Update is called once per frame
    void Update ()
    {


    if (canZoomIn)
    {
    c.orthographicSize -= speed * Time.deltaTime;
    playerIcon.localScale -= (new Vector3(ratio,ratio,0f)) * speed * Time.deltaTime;
    }

    else if (canZoomOut)
    {
    c.orthographicSize += speed * Time.deltaTime;
    playerIcon.localScale += (new Vector3(ratio,ratio,0f)) * speed * Time.deltaTime;
    }




    c.orthographicSize = Mathf.Clamp (c.orthographicSize, 30f, 300f);
    playerIcon.localScale = new Vector3 (Mathf.Clamp (playerIcon.localScale.x, ratio * 30f, ratio * 300f), Mathf.Clamp (playerIcon.localScale.x, ratio * 30f, ratio * 300f), 1f);






    }
    public void ZoomIn()
    {
    canZoomIn = true;
    }


    public void ZoomOut()
    {
    canZoomOut = true;
    }


    public void UnZoom()
    {
    canZoomOut = canZoomIn = false;
    }
    }


    并将你的Player拖放进Player.


    代码如下


    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    public class Direction : MonoBehaviour {


    public Transform player;
    RectTransform tr;


    void Start () {
    tr = GetComponentRectTransform ();


    }



    void Update ()
    {
    Quaternion rotation = Quaternion.identity;
    rotation.eulerAngles = new Vector3 (0f, 0f, player.rotation.eulerAngles.y);
    tr.rotation = rotation;


    }
    }

    楼主 2015-07-25 23:01 回复

共有回帖数 1
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知