Unity中小地图做法

FPS游戏的小地图

在FPS的这个Demo中,制作了一个小地图,效果图如下

image

主相机设置

下面来看一下,主相机的设置

image

解释

通过上面两幅图,能够看出来两个摄像机所渲染的Layer不一样,当然它们所在的Layer也不一样,所以就有了小地图。它其实所照射的场景是整个的游戏场景,而小地图摄像机

摄像机分屏

通过一代码来演示摄像机的分屏

示例代码

using UnityEngine;
using System.Collections;

/// <summary>
/// 把此脚本绑定在Main Camera上
/// 作用:
/// 日期:2013-09-09
/// </summary>

[AddComponentMenu("Zombie Killer/CamRect")]
public class CamRect : MonoBehaviour
{
    // 每帧调用此函数一次
    void Update ()
    {
        if (Input.GetMouseButton (0)) {
            //定义一个随机值
            float margin = Random.Range (0.0f, 0.3f);
            //相机被渲染到屏幕规范化坐标中的位置
            //Rect的范围在0(左/下) 到 1(右上)
            camera.rect = new Rect (margin, 1 - margin * 1.5f, 1 - margin * 2, 1 - margin * 2.5f);
        }
    }
}

操作步骤

新建一个Scene,把此脚本绑定在Main Camera上,运行游戏

分屏效果

image image

适用情况

如果你的场景中需要使用多个Camera,就可以使用这个Camera的分屏。

资料

此Demo来自《Unity3D手机游戏开发》,我通过看书,然后自己动手操作一遍,感谢金玺曾老师编写的教程!

posted @ 2013-09-09 10:50  赵青青  阅读(1690)  评论(0编辑  收藏  举报