【问题标题】:Handling Single character input in Unity在 Unity 中处理单个字符输入
【发布时间】:2020-01-05 21:12:12
【问题描述】:

我正在制作一个密码谜题迷你游戏,作为大型太空生存游戏的一部分。我仍处于研究和设计阶段,在构思如何处理单数字符输入时遇到了麻烦。我想要一种编码语言,每个字母都有自己的资产。然后我希望用户通过在空格中输入字母来翻译这种语言。然后需要用代表所输入字符的资产来填充这些空白。

我最初尝试对每个字母使用拖放资产的解决方案。这对我来说感觉很笨拙,因此我正在尝试使用涉及键盘和鼠标而不是拖放的解决方案。

我还没有任何代码,但我会对处理字符输入和正确选择代表字母的资产的一些有用示例感兴趣。

【问题讨论】:

    标签: c# user-interface unity3d user-controls user-input


    【解决方案1】:

    您可以将input fields 用于用户输入字符的位置,然后代替代表字符的资产,只需查找/制作您自己的字体 - 您甚至可以使用TextMeshPro 进行更多自定义。

    这将不那么笨重并且花费最少的精力 - 因为 Unity 的输入字段已经具有限制字符输入的选项(以及一堆其他设置),并且您不必为每个人都拥有大量资源特点。

    这就是我将如何处理您的问题。

    【讨论】:

    • 那么在这种情况下,允许在单个输入字段中输入完整的单词并检查整个单词会更好,还是单独检查每个字符会更好?我很高兴听到我可以使用字体而不是资产,因为它看起来不那么笨重。
    • 嗯,这真的取决于你想怎么做!你想要什么样的视觉效果?这应该是优先事项。如果你想要一个输入字段,你可以只做if (enteredWord == answerWord) --> do something 否则我会将所有字符连接(基本上是一个用于组合字符串的花哨的词)成一个字符串然后检查它(以避免单独检查每个字符)。
    • 只要猜测与上面的“外星人”单词正确对齐并且看起来正确,任何一个都适合我的用例。在使视觉效果看起来合适方面,您会比其他更推荐吗?
    • 我的意思是当我写下我的原始答案时,这就是我的想法。像这样的东西(proxy.duckduckgo.com/iu/…)。但实际上这取决于您 - 以后可以轻松更改这种简单的东西。我会尝试两者,看看哪个更适合您的游戏!
    猜你喜欢
    • 1970-01-01
    • 2014-02-26
    • 1970-01-01
    • 2019-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多