unity3d - 如何使用代码引用弓的“电枢动作”?
问题描述
我正在尝试制作弓箭游戏。我下载了一个弓,上面有一个动画(?),绳子被拉回来。
我想制作一个脚本,当播放器左键单击时触发该动画(显示在我的 gif 的右下角)。但我不知道如何参考动画。
是不是类似于_anim = GetComponent<Animator>();
然后animation.Play
?我什至不知道动画的名称是什么。
此外.. 能够根据用户按住按钮的时间来控制动画的长度,而不是完全播放它,即使用户只点击左键,这将是非常棒的。我不确定这将如何实现?
解决方案
好的,这个问题看起来很短,但解决方案会很长,你需要做一些学习。所以,让我们一步一步地解决你的问题。
我下载了一个有动画的弓(?)
是的,它是一个带有动画的 3D 弓模型。
我想制作一个脚本,当播放器左键单击时触发该动画(显示在我的 gif 的右下角)。但我不知道如何参考动画。
为了触发该动画,您需要一个Animator Controller附加到弓模型实例。然后您可以单击该 Animator Controller 以打开其面板。打开面板后,您可以简单地将动画拖放到那里。当你第一次放下你的动画时,它将是默认的动画状态。但是,如果您不想立即触发动画,我建议您创建一个空状态并过渡到弓形动画。
是不是像 _anim = GetComponent(); 然后动画。播放?
或多或少像这样,但您应该检查文档以获得更好的理解,该文档很好地解释了它,并且为您的用例提供了一个非常好的示例。
我什至不知道动画的名称是什么。
将动画拖放到面板后,您将看到要在脚本中使用的动画名称。
此外.. 能够根据用户按住按钮的时间来控制动画的长度,而不是完全播放它,即使用户只点击左键,这将是非常棒的。我不确定这将如何实现?
动画的播放方式有很多种,例如,可以设置一个动画参数来保持动画状态。此外,您还可以禁用转换中的Has Exit Time值,使其在用户停止按住按钮后立即停止动画。
总的来说,在动画方面,Unity 非常强大,我的建议是阅读文档并观看一些教程。
希望这可以帮助。
推荐阅读
- ios - 如何从 NSPersistentHistoryChange 中判断对象类型
- c - Linux驱动编写,file_operations不兼容的指针类型错误
- php - 在 Laravel 中选择图像部分
- google-apps-script - 如何在目标文件夹中创建工作表副本
- user-interface - 如何添加用户以用户身份而不是 root Yocto 项目 sama5d27 板登录
- python - 如何并排连接两个图像?
- salesforce-lightning - 如何清除 sfdx 缓存(如果存在这种情况)
- python - 如何在pytorch中初始化不同样式的nn.Sequential块的不同层的权重?
- javascript - 如何使用异步在js中动态设置参数?
- css - Bootstrap 4:使图像大于容器