加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在拖放游戏中匹配对象

发布时间:2020-12-15 21:32:33 所属栏目:百科 来源:网络整理
导读:我正在开发一个教育游戏,我给用户一些选择的单词.目标是通过单独拖动每个单词并将其按顺序放置在提供的区域上,将这些单词排列成句子.我有一个飞机准备好拖动每个单词,但我不确定如何确定用户是否已将他们的单词拖到句子中的正确位置. 我想也许我可以为每个单
我正在开发一个教育游戏,我给用户一些选择的单词.目标是通过单独拖动每个单词并将其按顺序放置在提供的区域上,将这些单词排列成句子.我有一个飞机准备好拖动每个单词,但我不确定如何确定用户是否已将他们的单词拖到句子中的正确位置.

我想也许我可以为每个单词提供一个ID /标签,并为每个平面提供相关的ID /标签.当两个碰撞时,我可以比较两个ID,如果它们匹配,则认为它是成功的放置.

我想知道是否有其他人有更好的解决方案,因为我不确定最好的解决方法?

解决方法

你的想法很好,我不明白为什么不.根据你如何实现这个,如果你有很多单词,你可以做很多工作,对吧?

我建议你这样做:制作一个由2个碰撞器(及其各自的游戏对象)和一个脚本组成的预制件.一个对应的单词和一个正确位置的colider.脚本将从某处读取(资源xml,编辑器中的字段等)并应用单词的初始位置和“正确位置”对撞机的位置.此脚本还将读取其他信息(如实际单词)并进行这些对象的所有配置.

这样您就可以轻松地将“单词预制件”拖动到场景中并单独配置它们.

此外,您可以在场景中使用外部脚本来表示“级别”(如果该概念适用于您的游戏……),而不是拖动此预制件.这里的想法是这个脚本可以在运行时加载该“级别”的预制件.它甚至可以传递预制脚本的所有数据来配置对象,就像我之前说过的那样.

我忘了说最重要的区别:在这种方法中你不必担心ID.它们属于同一个GameObject父级,因此您可以轻松地在脚本中检索所需的对象.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读