c# - Unity C# 脚本中的这个变量是什么?
问题描述
我是 Unity 新手,我正在通过阅读从 Unity Asset Store 下载的资产附带的脚本来研究它。这就是我学习新东西的方式,如果这对于阅读标准 Unity 编码教程的人来说应该很明显,请原谅我。
编码:
using System;
using UnityEngine;
namespace UnityStandardAssets._2D
{
public class PlatformerCharacter2D : MonoBehaviour
{
// some variable declarations here
private void FixedUpdate()
{
m_Grounded = false;
Collider2D[] colliders = Physics2D.OverlapCircleAll(m_GroundCheck.position, k_GroundedRadius, m_WhatIsGround);
for (int i = 0; i < colliders.Length; i++)
{
if (colliders[i].gameObject != gameObject)
m_Grounded = true;
}
m_Anim.SetBool("Ground", m_Grounded);
m_Anim.SetFloat("vSpeed", m_Rigidbody2D.velocity.y);
}
// some function declarations here
}
}
gameObject
语句右边的变量是什么colliders[i].gameObject != gameObject
?
它没有在任何地方定义。我查看了脚本文件夹中的其他 C# 文件,所有这些文件都在 中namespace UnityStandardAssets._2D
,并且变量gameObject
没有在其中任何一个中定义。System
它是or命名空间中的变量UnityEngine
吗?
我在 Visual Studio 中使用了转到定义,它会弹出一个对话框,上面写着“无法导航到插入符号下的符号”。
解决方案
gameObject
变量在Component
继承的类中定义MonoBehaviour
,每个Unity对象都应该继承。它指出了GameObject
应该存在于Scene
. 如果你不明白我刚才所说的,那么我强烈建议你从官方的 Unity 教程中学习,而不是仅仅阅读现有的代码。这些是 Unity 编程的基础知识,所以不知道这些会让你觉得你的学习很努力。
推荐阅读
- python - 使用 knn 预测来自另一个 DataFrame 的值(Python 3.6)
- javascript - 如果字符匹配,则选择第 N 个字符 - RegEx
- python - 从子进程 Popen 进程中运行的烧瓶 localhost 应用程序获取端口
- html - 如何修复 Outlook 中两个 HTML 表格中的空白
- algorithm - a 的 b 次方 - 递归算法
- angular - Angular - 无法设置标题
- reactjs - 无法在 monorepo 中配置 mobx(使用 yarn 工作区)
- javascript - Laravel 不接受函数中的参数
- javascript - 我的 JavaScript 文件中的全局变量问题
- reactjs - Webpack-dev-server 显示具有正确路由的完整应用程序,但路由在 localhost 上不起作用