簡體   English   中英

變量* Time.deltaTime始終僅返回Time.deltaTime

[英]Variable * Time.deltaTime always return just Time.deltaTime

當鼠標在邊界上時,我當前正在為屏幕平移編寫代碼。 該代碼可以工作,但是無論浮動速度值如何,它都以相同的速度滾動(我嘗試了諸如3000000這樣的巨大值來進行檢查),根據我在線檢查的內容,我正確地使用了Time.deltaTime,所以我沒有知道發生了什么事。

public static bool isOnMap = true;
public GameObject CameraObject;
public int Boundary = 50; // distance from edge scrolling starts
public float speed = 1f;
private int theScreenWidth;
private int theScreenHeight;
public static float MapWidth;
public static float MapHeight;

public float Velocity ()
{
    float velocity;
    velocity = speed * Time.smoothDeltaTime;
    Debug.Log(velocity);
    return velocity;
}

void Start()
{
    theScreenWidth = Screen.width;
    theScreenHeight = Screen.height;

}
void Update()
{   
    //mouse
    #region
    if (isOnMap && Input.mousePosition.x > theScreenWidth - Boundary)
    {
        if (transform.position.x >= MapWidth)
        {
            return;
        }
        else
        {
            transform.position = new Vector3(transform.position.x + Velocity(), transform.position.y, transform.position.z);
        }
    }
    if (isOnMap && Input.mousePosition.x < 0 + Boundary)
    {
        if (transform.position.x <= 5)
        {
            return;
        }
        else
        {
            transform.position = new Vector3(transform.position.x - Velocity(), transform.position.y, transform.position.z);
        }
    }
    if (isOnMap && Input.mousePosition.y > theScreenHeight - Boundary)
    {
        if (transform.position.y >= MapHeight + 5)
        {
            return;
        }
        else
        {
            transform.position = new Vector3(transform.position.x, transform.position.y + Velocity(), transform.position.z);
        }
    }
    if (isOnMap && Input.mousePosition.y < 0 + Boundary)
    {
        if (transform.position.y <= 0)
        {
            return;
        }
        else
        {
            transform.position = new Vector3(transform.position.x, transform.position.y - Velocity(), transform.position.z);
        }
    }
  }

如下更改。 也可以將speed1更改為整體速度。

public float Velocity ()
{
    return speed * Time.deltaTime;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM