Godot游戏框架踩坑记录
前言
毕设中使用Godot框架时遇到了一些问题,本文只对部分问题和解决方法做简要说明,而不对解决过程进行详细描述。
音频
因为版权问题,Godot不能导入mp3
格式的音频,可以将音频考虑转换为ogg
格式后导入。
播放
AudioStreamPlayer
适合用来播放BGM,AudioStreamPlayer2D
、AudioStreamPlayer3D
播放时声源带有位置信息,会出现左右声道不一致的问题。
音量控制
每个AudioStreamPlayer
可以将音频绑定到某一个Audio Bus
中,可以控制Bus的音量。
AudioServer.set_bus_mute(AudioServer.get_bus_index("Master"), mute)
可以使Master
Bus静音。
循环
导入音频文件时,设置导入的loop
属性为true
或false
来控制循环与否。
注:loop
是import
的属性而不是AudioStreamPlayer
的属性(可以观察到loop
出现在import文件中),通过代码设置loop
属性的方法为:$ActionPlayer.stream.set("loop", false)
捕捉事件
通过实现_input
方法来对事件进行捕捉,如下代码可以在不提供pressed
事件的节点中检测点击事件,is_visible_in_tree
函数用来判断节点是否可见,单纯判断visible
会判断失败(例如父节点不可见时子节点的visible
属性仍为true
)
1 | func _input(event): |
位置
centered
属性会导致节点坐标原点为中心而不是左上角。
透明度
透明度在modulate中进行调节
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 才才才的Blog!