Unity 实现近小远大
using System.Collections;using System.Collections.Generic;using UnityEngine;public class MainGame : MonoBehaviour{public GameObject TargetObj;public GameObject MoveObj;private float StartDis;void Star
·
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MainGame : MonoBehaviour
{
public GameObject TargetObj;
public GameObject MoveObj;
private float StartDis;
void Start()
{
StartDis = CalculateDis();
}
// Update is called once per frame
void Update()
{
Near_little_far_bjg();
}
/// <summary>
/// 近小远大
/// </summary>
private void Near_little_far_bjg()
{
float dis = CalculateDis();
if(dis>0.2f)
{
// 近小远大
float xyz = (dis/ StartDis)*1.2f;
gameObject.transform.localScale = new Vector3(xyz, xyz, 1);
// 近大远小
// float xyzx = 0.2f / dis;
// gameObject.transform.localScale = new Vector3(xyzx, xyzx, 1);
}
}
/// <summary>
/// 计算距离
/// </summary>
/// <returns></returns>
private float CalculateDis()
{
return Vector3.Distance(TargetObj.transform.position, MoveObj.transform.position);
}
}
更多推荐
所有评论(0)
您需要登录才能发言
加载更多