【问题标题】:Why does exporting to Unity WebGL change the speed of objects in my game?为什么导出到 Unity WebGL 会改变游戏中对象的速度?
【发布时间】:2021-10-02 21:32:08
【问题描述】:

目标
所以我做了一个太空入侵者类型的游戏来练习团结,我想像过去一样把它上传到 Itch.io。 This 是游戏片段。
我在构建设置等中将平台切换到 WebGL,并且在 Unity 中一切正常。

问题
但是,当我构建它并将 zip 文件上传到 Itch.io 时,the aliens are now a lot faster than usual。
(请注意,可能还有其他事情发生了变化,我只是无法找到它们,因为这非常困难)。

代码

外星人运动:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class AleenController : MonoBehaviour
{
    Rigidbody2D rigidbody;

    public float speed = 10f;

    ScoreController scoreController;

    AudioSource aleenDie;

    void Start()
    {
        scoreController = GameObject.Find("Canvas/Score").GetComponent<ScoreController>();
        rigidbody = GetComponent<Rigidbody2D>();
        aleenDie = GameObject.Find("Main Camera/AleenDie").GetComponent<AudioSource>();
    }

    void Update()
    {
        rigidbody.MovePosition(transform.position + new Vector3 (0, -1, 0) * speed * Time.deltaTime);
    }

    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "laser")
        {
            aleenDie.Play();
            scoreController.score += 1;
            Destroy(gameObject);
        }
    }
}

注意
我真的很难找出这里出了什么问题,因为一切都很好。如果您确实需要更多详细信息,请发表评论。

【问题讨论】:

  • 在不知道您的游戏是如何编写的情况下,任何人都只能猜测。我们的 WebGL 版本没有任何速度问题。它们与 Android 和 iOS 相同。
  • 你如何更新他们的动作?你在使用增量时间吗?
  • @SoDamnMetal 抱歉,我已经更新了问题
  • @RetiredNinja 抱歉,我已经更新了问题

标签: unity3d build webgl game-physics


【解决方案1】:

如果你使用物理,你应该

  • 根本不通过Transform 设置或获取值
  • 在FixedUpdate做事

一般来说,虽然在你的情况下而不是使用

void Update()
{
    rigidbody.MovePosition(transform.position + new Vector3 (0, -1, 0) * speed * Time.deltaTime);
}

只需将速度设置一次,例如

void Start ()
{
    ...

    rigidbody.velocity = Vector3.down * speed;
}

其余部分似乎取决于您的屏幕尺寸。看起来您正在像素空间中移动元素 -> 显示器越小,顶部和底部之间的像素距离越小 -> 元素似乎移动得越快。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多