- Home /
Radar script help
Hi,
i wan't to make a minimap like GTA 4 and Red Dead Redemption i have the script already written but i hava a qeastion,
The Blips for a MissionObjective or Missionstartingpoint i wan't it that if the player is out of a specific range the blip will draw but on the edge of the radar.
If you don't know what i'am talking about watch this sample video of RDR begin at min 2.20 klik the linktext below
This is part of the script that draws the GUI blip;
enter function drawBlip(go,aTexture){
centerPos=centerObject.position;
extPos=go.transform.position;
// first we need to get the distance of the enemy from the player
dist=Vector3.Distance(centerPos,extPos);
dx=centerPos.x-extPos.x; // how far to the side of the player is the enemy?
dz=centerPos.z-extPos.z; // how far in front or behind the player is the enemy?
// what's the angle to turn to face the enemy - compensating for the player's turning?
deltay=Mathf.Atan2(dx,dz)*Mathf.Rad2Deg - 270 - centerObject.eulerAngles.y;
// just basic trigonometry to find the point x,y (enemy's location) given the angle deltay
bX=dist*Mathf.Cos(deltay * Mathf.Deg2Rad);
bY=dist*Mathf.Sin(deltay * Mathf.Deg2Rad);
if(dist>=distnce){
bX=bX*mapScale; // scales down the x-coordinate so that the plot stays within our radar
bY=bY*mapScale; // scales down the y-coordinate so that the plot stays within our radar
// this is the diameter of our largest radar circle
GUI.DrawTexture(Rect(mapCenter.x+bX,mapCenter.y+bY,25,25),aTexture);
}
Answer by aldonaletto · Jun 01, 2011 at 09:41 PM
If you just want to do a kind of "round clamp" in order to bring bx and by to the border of your round radar, do something like this:
if (dist*mapScale>radarRadius){
var k:float = radarRadius/(dist*mapScale);
bx *= k;
by *= k;
}
GUI.DrawTexture(...
where radarRadius is (obviously) the radius of your radar screen.
Your answer
Follow this Question
Related Questions
getting a sum from two scripts 1 Answer
How do I check for triangle triangle intersection? 1 Answer
How do I find the inverse cosine ??? 1 Answer
How to map square coordinates to a circle? 1 Answer
itween move to do not end(even it is) 0 Answers