Unity KGFMapSystem插件制作小地图
KGFMapSystem版本:2.3
在我们开发游戏或者虚拟现实中,一般都会用到小地图,如果要我们去写小地图,可以用到unity 3d中就有一个插件,是专门开发小地图用的,这个插件就是KGFMapSystem。这个是它的官网:http://www.kolmich.at/documentation/
还有一个介绍用KGFMapSystem制作小地图的台湾网站,内容比较详细:http://www.cg.com.tw/KGFMapSystem/Content/KGFMapSystem_001.asp
一、使用插件自带的Demo:
1、导入KGFMapSystem包,找到kolmich\KGFMapSystem\demo\scenes\quickstart_demo.scene,打开自带的demo,选中Hierarhy中的KGFMapSystem,可以看到Inspector中出现一个错误,显示图如下:
意为“地图系统需要一个名字叫mapsystem的层”,我们就需要自己创建一个层;
2、在上方的Layer中选择Add Layer:
在出现的Layer窗口中添加一个名为“mapsystem”的Layer,名字一定得是“mapsystem”,如图:
3、添加名为mapsystem的层后,就可以运行了,效果如下图,右上角已经成功出现小地图,可以在左侧的框中调节小地图的各种选项:
如果觉得上面中的设置窗口太碍眼,可以删除KGFMapSystemDemoScene中的C#脚本组件:
成功使用了插件自带的demo,接下来我们在自己的项目中使用这个插件来制作小地图;
二、在自己的项目中使用KGFMapSystem制作小地图:
打开quickstart_try_yourself这个场景,运行后可以发现,场景中是没有小地图的,就像我们之间的项目一样(这边把KGFMapSystemDemoScene重命名为MyProject),开始时按“使用插件自带的Demo”上面中的2步骤,如果Layers中没有名为mapsystem的层,需用添加一个层。接下来就可以开始小地图的制作:
1、如果接下来我们把Assets\kolmich\KGFMapSystem\prefabs目录下的KGFMapSystem.prefab文件直接拉到我们的工程中:
会看到Inspector中会提示错误“itsTarget必须不为空,请添加一个时时都显示在小地图中央位置的目标”;
2、我们就必须为小地图添加一个目标,打开Its Data Module Minimap——Its Global Settings——Its Taget,为Its Target选定一个项目:找到MyProject中的3rdPerson,直接拉到Its Target中,即把那个圆柱设为Target:
运行后会发现,小地图是可以正确显示了,但是,小地图中没有表示角色的标识:
3、我们就需要为场景中出现的一些物体添加标识:
打开kolmich\KGFMapSystem\prefabs\mapicons_samples,目录下会有很多预设文件,随便拉一个到3rdPerson下面,表示用该预设文件作为这个物体的标识:
可以看到,在小地图中成功显示了这个标识,如果我们要为场景中固定的长方体添加标识同样是这个操作,只需要找到对应的预设文件添加到某个Cube下面即可。
三、在小地图中使用战争迷雾
使用战争迷雾,我们在二的基础上对战争迷雾进行设置就可以了;选中Hierarchy中的KGFMapSystem,在Inspector中的Its Data Module Minimap——Its Fog Of War中勾选Its Active选项就可以开启小地图中的战争迷雾了,再设置有关参数即可;
参数的介绍可以参考官网上面的有关介绍:http://www.kolmich.at/documentation/,找到KGFMapSystem Manual——Fog Of War,查看详细的参数介绍:
设置好后,运行即可看到迷雾效果:
可以看到,小地图的周围有战争迷雾的效果。
注:
官网上对使用quickstart_demo有个介绍:
在参考链接中也有类似的操作,即在添加完名为mapsystem的Layer后,选中3edPerson下的camera,在Culling Mask中去掉刚才建的mapsystem这个layer,但是测试过,系统默认的好像是不打勾的,即默认是去掉了,又测试了下选中的效果,好像没什么影响,所以如果有时候出现显示问题可以添加这个操作试试,如图:
参考链接:http://blog.csdn.net/dingxiaowei2013/article/details/18669919