调试.DrawRay未显示在场景中



我试着查找了所有类似的问题,但似乎找不到问题所在,我正在用一个模板和视频中的说明进行学习,但一切都很完美,.cs文件没有显示任何错误或问题,我可以完美地运行一切,除了

if (Physics2D.Raycast(transform.position, Vector3.down, 0.1f))
{
Grounded = true;
}
else Grounded = false;

因为一旦我按下键W;跳跃";如果我一直按这个键;浮动";像一只扑腾的小鸟,我还放了调试。Drawray为了显示这个光线投射,但它没有在编辑器中显示,我尝试将值从0.1f更改为100f,但没有显示,我是新手,所以可能是一些标点符号,或者我在键入代码时出错了。

这是整个代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class JhonMovement : MonoBehaviour
{
public float JumpForce;
public float Speed;
private Rigidbody2D Rigidbody2D;
private float Horizontal;
private bool Grounded;
void Start()
{
Rigidbody2D = GetComponent<Rigidbody2D>();
}
void Update()
{

Horizontal = Input.GetAxisRaw("Horizontal");
Debug.DrawRay(transform.position, Vector3.down * 0.1f, Color.red);
if (Physics2D.Raycast(transform.position, Vector3.down, 0.1f))
{
Grounded = true;
}
else Grounded = false;
if (Input.GetKeyDown(KeyCode.W) && Grounded)
{
Jump();
}
}
private void FixedUpdate()
{
Rigidbody2D.velocity = new Vector2(Horizontal * Speed, Rigidbody2D.velocity.y);
}
private void Jump()
{
Rigidbody2D.AddForce(Vector2.up * JumpForce);
}

如果我把";如果";选项角色也这样做,不知道我在哪里犯了错误,我四处查看了一下,似乎还可以。

我将感谢你的帮助。

  1. 单击Gizmos确保它处于打开状态,如果您看到相机图标,则其处于打开状态
  2. 或者光线长度太小而看不见
  3. 下至#Scene

您可以看到Shaded单击并更改为Wireframe

private void OnDrawGizmos()//used to see Ray in editor without update function
{
//your Ray code here
//before i click play i like to hide this method 
Debug.DrawRay(transform.position, Vector2.down * 1f, Color.white); // try this
}

相关内容

  • 没有找到相关文章

最新更新