多米诺 发表于 2012-6-11 22:58

利用世界坐标在object上显示text

<pre>var target : Transform;// Object that this label should follow

var offset = Vector3.up;    // Units in world space to offset; 1 unit above object by default
var clampToScreen = false;// If true, label will be visible even if object is off screen
var clampBorderSize = .05;// How much viewport space to leave at the borders when a label is being clamped
var useMainCamera = true;   // Use the camera tagged MainCamera
var cameraToUse : Camera;   // Only use this if useMainCamera is false
private var cam : Camera;
private var thisTransform : Transform;
private var camTransform : Transform;

function Start () {
    thisTransform = transform;
    if (useMainCamera)
      cam = Camera.main;
    else
      cam = cameraToUse;
    camTransform = cam.transform;
}

function Update () {
    if (clampToScreen) {
      var relativePosition = camTransform.InverseTransformPoint(target.position);
      relativePosition.z = Mathf.Max(relativePosition.z, 1.0);
      thisTransform.position = cam.WorldToViewportPoint(camTransform.TransformPoint(relativePosition + offset));
      thisTransform.position = Vector3(Mathf.Clamp(thisTransform.position.x, clampBorderSize, 1.0-clampBorderSize),
                                       Mathf.Clamp(thisTransform.position.y, clampBorderSize, 1.0-clampBorderSize),
                                       thisTransform.position.z);
    }
    else {
      thisTransform.position = cam.WorldToViewportPoint(target.position + offset);
    }
}

@script RequireComponent(GUIText)

</pre>

aaabbbsss12345 发表于 2014-5-8 14:11

好好 顶顶顶

zswnet 发表于 2017-4-9 21:53

很不错

stevens 发表于 2017-4-9 21:58

好帖就是要顶

天道无亲 发表于 2017-4-9 22:09

顶顶多好

hufuyu 发表于 2017-4-9 22:18

真心顶

he4330937 发表于 2017-4-9 22:30

难得一见的好帖

ZGM 发表于 2017-5-18 14:57

楼主是超人

你的嘉年华 发表于 2017-5-18 15:21

好帖就是要顶

陈圣新 发表于 2017-5-18 15:21

顶顶多好
页: [1]
查看完整版本: 利用世界坐标在object上显示text