Unity3d 这个统一脚本没有理由让精灵移动,但它会移动 代码如下:
使用UnityEngineUnity3d 这个统一脚本没有理由让精灵移动,但它会移动 代码如下:,unity3d,Unity3d,使用UnityEngine public class playerMovement : MonoBehaviour { public Rigidbody2D rb; public float strength = 100f; void Start () { //Initialize the body of the sprite so that forces //can be applied. rb = GetCompo
public class playerMovement : MonoBehaviour {
public Rigidbody2D rb;
public float strength = 100f;
void Start () {
//Initialize the body of the sprite so that forces
//can be applied.
rb = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void FixedUpdate () {
//Note2Self: var says this is a variable of unspecified type.
var touch = new Touch();
/*
if (touch.phase == TouchPhase.Began){
rb.AddForce(transform.forward * strength);
}*/
if (Input.anyKey)
rb.position.Set(0, 100);
}
}
我试图在Unity中练习一些基本的东西,我根本不习惯在IDE中编程,到目前为止,当我偶然发现这个奇怪的东西时,我们刚刚在我的程序中使用了vim
首先,我不明白为什么精灵会在没有触摸识别的情况下移动,因为我还没有在移动设备上测试过。所以我把它注释掉了,出于某种原因,精灵仍然在移动。该代码不应该做任何事情,但它确实做了
我已经检查了精灵是否使用了最新的脚本-它是-并且我已经检查了脚本是否针对正确的刚体,它是否是rigidbody2D。是的
发生了什么事?我查看了unity文档: 也就是说,将刚体2D组件应用于一个对象,将使其处于物理引擎的控制之下 Rigidbody2D类在2D中提供的功能与Rigidbody类在3D中提供的功能基本相同。向sprite添加Rigidbody2D组件将使其处于物理引擎的控制之下。就其本身而言,这意味着精灵将受到重力的影响,并且可以通过使用力的脚本进行控制 我不止一次遇到刚体的问题,我建议您在unity inspector窗口中检查刚体2D组件,并确保取消选中use gravity
此外,您可能希望只编写自定义脚本而不使用刚体。在youtube上搜索可能会为您提供所需的信息。希望这有帮助 我查看了unity文档: 也就是说,将刚体2D组件应用于一个对象,将使其处于物理引擎的控制之下 Rigidbody2D类在2D中提供的功能与Rigidbody类在3D中提供的功能基本相同。向sprite添加Rigidbody2D组件将使其处于物理引擎的控制之下。就其本身而言,这意味着精灵将受到重力的影响,并且可以通过使用力的脚本进行控制 我不止一次遇到刚体的问题,我建议您在unity inspector窗口中检查刚体2D组件,并确保取消选中use gravity
此外,您可能希望只编写自定义脚本而不使用刚体。在youtube上搜索可能会为您提供所需的信息。希望这有帮助 如果它刚刚落下,可能会受到重力的影响 您可以通过添加rb.gravityScale=0在脚本中关闭此功能;在开始函数的末尾 或
通过在编辑器中的刚体组件内部设置它,如果它刚刚下落,可能会受到重力的影响 您可以通过添加rb.gravityScale=0在脚本中关闭此功能;在开始函数的末尾 或
通过在刚体组件内部的编辑器中设置它,最好是选中IsKinetic或切换约束。最好是选中IsKinetic或切换约束。