Unity3d导出后角色不能被控制
我做的事一个2d的横版游戏,控制移动使用的在Editor里面的Input设置的相关按键,然后C#代码是通过Input.Getbutton.getAxis("Horizon...
我做的事一个2d的横版游戏,控制移动使用的在Editor里面的Input设置的相关按键,然后C#代码是通过Input.Getbutton.getAxis("Horizontal");(控制左右移动是小键盘的方向键,并且改成input.getkeydown(keycode.space)导出后也没有反应)诸如此类的代码控制移动、弹跳、攻击等动作,但是我做完成后,直接导出exe执行文件后,可以运行,但是不管怎么按键盘上的代表各种功能的按键角色都没有任何反应。这是为什么?求大神指点指点我。
展开
2个回答
展开全部
首先这个问题的原因有可能未必是你的脚本这个部分出问题,我不知道你的导出之后除了输入没办法接受之外其他的部分还运行正常吗?会不会是其他的脚本组件等等原因造成的这个问题?在Editor里面里面运行的情况是否正常?
此外,你用的是什么方式实现的移动、弹跳、攻击等动作?如果是动画,你的动画有没有很好地被设置?你的状态机或者自己写的控制的代码是否卡在那个地方动不了?如果单纯就是transform类的操作,人物身上的脚本是不是运行正常的?因为导出之后出问题还是会继续跑的,错误被隐藏.....
如果可以,最好是将关键代码贴出来看一看,说实话这个问题本身有一点模糊了。
顺带说一句,楼下写的很靠谱,Translate方法可以实现移动,至于跳跃的动作其实也是可以用Translate方法实现的,向上移动.....此外我个人比较喜欢用AddForce ()来做跳跃。
此外,你用的是什么方式实现的移动、弹跳、攻击等动作?如果是动画,你的动画有没有很好地被设置?你的状态机或者自己写的控制的代码是否卡在那个地方动不了?如果单纯就是transform类的操作,人物身上的脚本是不是运行正常的?因为导出之后出问题还是会继续跑的,错误被隐藏.....
如果可以,最好是将关键代码贴出来看一看,说实话这个问题本身有一点模糊了。
顺带说一句,楼下写的很靠谱,Translate方法可以实现移动,至于跳跃的动作其实也是可以用Translate方法实现的,向上移动.....此外我个人比较喜欢用AddForce ()来做跳跃。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询