unity3d - 你能在 Unity 中根据 .png 文件的像素网格进行寻路吗?
问题描述
TL; DR:有人可以根据 .png 文件的像素网格的透明度在没有障碍物、固定和已知起点以及边缘的情况下帮助寻路。
我正在尝试为我的学生制作一个简单的应用程序来教他们正确的笔画顺序和中国笔画的方向。
到目前为止,我已经通过将“开始”和“结束”游戏对象与精灵生成的CircleCollider2D
组件分层来实现这一点,PolygonCollider2D
以检查它们是否开始了笔划,停留在笔划内,并正确退出。
是的,它可以完成这项工作,但它不会像您对此类应用程序所期望的那样为填充过程设置动画,更不用说我需要自己手动添加“开始”和“结束”点。
理想情况下,我可以只提供笔画精灵,告诉它我想要笔画的方向(从左到右,从右到左等),然后让程序根据第一个/最后 10% 的像素创建末端,然后当然,一旦正确完成,就可以对其进行动画处理。
但是宝贝步骤!
首先,如果有人能告诉我如何让像素网格开始,我将不胜感激,这样我也许可以尝试 A* 方法。
谢谢!
解决方案
如果他们以正确的方式参加比赛,那么验证 AI 赛车手的情况也是如此。您将必须指出某种按您想要的笔划方式排序的航点系统。
想象一下,您正在教他们写数字 2。您必须从数字的左上角开始创建一个节点数组,直到到达另一端。如果他们的手指通过正确的顺序,您可以验证笔划。
不需要复杂的 A* 算法。
但是,如果您想自动化所有内容,这将不可行。这将需要您进行某种图像处理、编辑器工具和大量验证。不过,我不建议使用自动化的。
推荐阅读
- git - 如何使用作曲家要求托管在 bitbucket.org 上的私有包?
- python - 有效地从数组中弹出元素
- sql-server - 在 Windows 窗体中更新数据库值
- firebase-realtime-database - 将 iOS/android 项目连接到 firebase
- c# - C#找到int的最大值,然后输出最大值的变量名
- machine-learning - 如果数据具有线性关系,线性回归不会导致样本内误差为零
- php - PHP mysql-7.2 无法在 Ubuntu 上安装
- excel - 了解条件锁定
- html - 如何在 div 中定位 css 中的子元素?
- java - 为什么这段代码不起作用?(使用 Selenium-Java 登录谷歌)