money 发表于 2013-1-7 20:17

Unity3D小地图代码

@script ExecuteInEditMode()
public var blip : Texture; //定義一個指針文件代表角色
public var radarBG : Texture; //地圖背景圖片,我直接用場景里我創建的render texture
public var centerObject : Transform; //選擇角色的物體的位置信息
public var mapScale = 0.3; //地圖縮放
public var mapCenter = Vector2(50,50); //地圖中心
function OnGUI () {
   
    bX=centerObject.transform.position.x * mapScale;
    bY=centerObject.transform.position.z * mapScale;
      
    bX=centerObject.transform.position.x * mapScale;
    bY=centerObject.transform.position.z * mapScale;
      
    GUI.DrawTexture(Rect(mapCenter.x-32,mapCenter.y-32,**,**),radarBG);
   // 上面的mapCenter.x-32是地圖的x位置,mapCenter.y-32是y位置,**,**是地圖的大小
    DrawBlipsForEnemies();
}
function DrawBlipsForCows(){
   
    var gos : GameObject[];
    gos = GameObject.FindGameObjectsWithTag("Cow");
    var distance = Mathf.Infinity;
    var position = transform.position;
    for (var go : GameObject in gos){
      drawBlip(go,blip);
    }
}
function drawBlip(go,aTexture){
   
    centerPos=centerObject.position;
    extPos=go.transform.position;
   
    dist=Vector3.Distance(centerPos,extPos);
   
    dx=centerPos.x-extPos.x;
    dz=centerPos.z-extPos.z;
   
    deltay=Mathf.Atan2(dx,dz)*Mathf.Rad2Deg - 270 - centerObject.eulerAngles.y;
   
    bX=dist*Mathf.Cos(deltay * Mathf.Deg2Rad);
    bY=dist*Mathf.Sin(deltay * Mathf.Deg2Rad);
   
    bX=bX*mapScale;
    bY=bY*mapScale;
   
    if(dist<=200){
       GUI.DrawTexture(Rect(mapCenter.x+bX,mapCenter.y+bY,2,2),aTexture);
    }
}
function DrawBlipsForEnemies(){
   
    var gos : GameObject&#91;&#93;;
    gos = GameObject.FindGameObjectsWithTag("Enemy");
    var distance = Mathf.Infinity;
    var position = transform.position;
    for (var go : GameObject in gos){
    drawBlip(go,blip);
    }
}

引兔那么写 发表于 2013-2-3 14:13

var gos : GameObject&#91;&#93;;
者句提示错误怎么办

blueskys 发表于 2013-2-18 19:51

谢谢分享{:5_424:}

nokia8012 发表于 2013-3-20 15:25

谢谢分享{:soso_e100:}

lovesky4 发表于 2013-4-6 21:26

{:5_430:}{:5_430:}{:5_430:}{:5_430:}

qwer4650987 发表于 2013-10-30 10:04

小白对这里的算法不懂能介绍下吗

devilrrt1013 发表于 2014-8-11 14:33


膜拜中。。。。{:soso__7524161091986203637_5:}

xiaohei 发表于 2017-4-10 20:52

好帖就是要顶

naktim 发表于 2017-4-10 21:03

真心顶

/yb张真人 发表于 2017-4-10 21:47

难得一见的好帖
页: [1]
查看完整版本: Unity3D小地图代码