【问题标题】:Can JavaScript be expressly used to develop Unity games?JavaScript 可以明确用于开发 Unity 游戏吗?
【发布时间】:2015-03-04 17:38:05
【问题描述】:

我想要一个权威的答案,这个问题对我来说一直是个问号。似乎经常使用术语 JavaScript 来表示或描述 UnityScript。

我一再被告知您可以使用实际的 JavaScript 在 Unity 中开发游戏,但据我了解,UnityScript 最多只能被描述为 JavaScript 的超集,但确实有一些项目可能不是'不完全兼容,你不能像往常一样简单地使用 JS 来开发 Unity 游戏,因为你必须遵循它们的约定。

我错了吗?你真的可以在不遵循 UnityScript 设置的参数的情况下直接使用纯 JS 及其约定来制作 Unity 游戏吗?

【问题讨论】:

  • UnityScript 和 JavaScript 根本不是同一种语言。他们只是有相似之处。

标签: javascript unity3d unityscript


【解决方案1】:

简短回答:不,您不能使用 PURE JavaScript。据我所知 - Unity 使用它自己的类似 JS 的语法(有些人将其称为 Unity JS),但它通常被称为 UnityScript。

您的问题源于 Unity 社区将 JavaScript 和 UnityScript 视为等效且可互换的事实。

虽然这些外观和感觉非常相似 - 存在一些根本差异,例如 UnityScript 是基于类的,而 JavaScript 不支持类。

您绝对可以使用之前在 UnityScript 中获得的 JavaScript 约定,因为其中很多都适用。使用的语义略有不同——但我发现很快就能掌握这些小的变化。

在此处了解更多信息:UnityScript versus JavaScript

编码愉快!

【讨论】:

  • 好吧,你基本上已经把我收集到的东西联系起来了,但是......我希望能再深入一点,并假设我需要在这一点上提出一个后续问题。我真正想知道的是 US 是否是 JS 的“严格”超集。也就是说,你能不能按照 JS 中存在的“限制”来编写 UnityScript。原因在于将 JS 作为 Unity 3D 的桥梁语言。即,我们是否可以采用另一种可以编译或转译为 JS 的语言并将其用作桥梁。
  • 我会说它们足够不同,以至于不能将它们视为另一个的子集或超集。我能回忆起的唯一相似之处(我有一段时间没有使用 UnityScript)是它类似于 C 的语法,使用var 进行变量声明,使用function 进行函数声明。您依赖的许多 JS 特性在 US 中只是编译错误,而 US 中许多必需的语法方面都是 JS 中的错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多