【问题标题】:How do to use a python script in Unity?如何在 Unity 中使用 python 脚本?
【发布时间】:2022-06-28 11:56:53
【问题描述】:

我正在尝试在 Unity 中运行人脸检测模型。它从网络摄像头获取输入,然后吐出一张脸。但是尝试使用 C# 进行这项工作绝对是一场噩梦。尽管我遭受了所有的痛苦,但我仍然无法让它发挥作用!

如果我可以使用 python,我就能轻松完成它。所以,很明显,我想找到一种方法让 python 脚本在 Unity 中工作。但 IronPython 是我能找到的唯一东西,而且它已经过时了。

我需要了解如何使 IronPython 工作(尽管已经过时)或其他一些方法。请。

【问题讨论】:

  • “如果我可以使用 Python,我就可以轻松完成它”——作为一名程序员,在其职业生涯中使用过 20 多种语言,并且今天每天使用多种语言,C# 和包括 Python,我必须告诉你:你错了。这实际上与语言无关,而是与您尝试使用的库和底层框架有关。在 Unity 中观看一些 OpenCV 教程,从小处着手。有多种方法可以将 Python 脚本集成到 Unity 应用程序中,但从本质上讲,您需要并且想要学习 C# 和/或 C++。 Rust 和 IronPython 在你的水平上只是分散注意力,而 IronPython 是死路一条。
  • 像 Grismar 一样,多年来我学习了许多语言,一旦你的大脑真正理解分解你想要的逻辑,它只是选择如何编写它的问题,无论是 c#、python 还是别的东西。 C# 不是他要学习的,但如果你想使用统一,它将是无价的。而且 c# 比 unreal 和 c++ 更宽容

标签: python unity3d


【解决方案1】:

很遗憾,Unity 目前不支持 Python。虽然,您可以使用一些 Python 资产。我不确定你可以用这个资产做什么,但我知道它可以帮助最少:https://assetstore.unity.com/packages/tools/integration/python-interpreter-645

快速提示:大多数编程语言的工作方式大致相同。如果你弄清楚 C#/UnityC# 的文档和语法/标点符号,你应该就可以了。

【讨论】:

  • 我遇到的问题是我的模型的输入/输出图像。 Python 使用 numpy 数组。它们干净、简单、直接。 C# 使用十种不同风格的 texture2D、颜色结构和二十种类型的数组。我似乎无法用我的小脑袋来处理所有这些古怪的概念。
  • 那么,尽您所能获得的详细信息,到目前为止,您希望在 Python 中完成什么?我也许可以帮助将它放入 C# 或其他东西中。
  • 我将网络摄像头的提要作为网络摄像头纹理(texture2D 的变体)。我将其转换为texture2D。我将其输入人脸检测模型。它吐出人脸,然后我将其输入另一个模型(情绪识别模型)。这种情绪识别模型给出了最终输出 - 检测到的情绪。
【解决方案2】:

Unity不支持python,但是你可以编写Python代码并通过Socket编程运行它,用python创建服务器并发送数据,在C#中连接到服务器并使用用python发送的数据。

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
【解决方案3】:

嘿,这个预览包对您有帮助吗? https://docs.unity3d.com/Packages/com.unity.scripting.python@5.0/manual/installation.html 仅供参考,我自己还没有测试过

【讨论】:

    猜你喜欢
    • 2017-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-09
    • 2020-03-29
    • 2017-06-16
    • 2021-10-28
    相关资源
    最近更新 更多