Compare commits
23 Commits
Author | SHA1 | Date |
---|---|---|
Spencer Killen | c38c9cbb4b | |
Spencer Killen | df09636af9 | |
EvanGee | aaee834a61 | |
EvanGee | 6668bff3dd | |
Spencer Killen | c7283297ab | |
Spencer Killen | 00ff4fd9c5 | |
Spencer Killen | c3e5073011 | |
EvanGee | c9edb73c50 | |
Spencer Killen | a88607a316 | |
Spencer Killen | 79df0710c0 | |
EvanGee | 21e16b16a5 | |
Spencer Killen | 4ff3ed3e7c | |
EvanGee | 8fbd8c86f3 | |
Spencer Killen | b54c7d72fa | |
Spencer Killen | a9dad02fb9 | |
Spencer Killen | 55d26874bd | |
Spencer Killen | 2005ef652e | |
Spencer Killen | ef5ceb0b95 | |
Spencer Killen | ba14ca7ea0 | |
Spencer Killen | f9847bcb37 | |
Spencer Killen | ef8553fe45 | |
Spencer Killen | 3eb8b2a718 | |
Spencer Killen | 6766c63abe |
|
@ -13,3 +13,7 @@
|
|||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.pur filter=lfs diff=lfs merge=lfs -text
|
||||
*.res filter=lfs diff=lfs merge=lfs -text
|
||||
*.a filter=lfs diff=lfs merge=lfs -text
|
||||
*.dll filter=lfs diff=lfs merge=lfs -text
|
||||
*.dynlib filter=lfs diff=lfs merge=lfs -text
|
||||
*.so filter=lfs diff=lfs merge=lfs -text
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
# Here because gdextension does not support editor export plugin for now.
|
||||
# https://github.com/godotengine/godot/issues/80593
|
||||
@tool
|
||||
class_name FmodEditorExportPluginProxy
|
||||
extends FmodEditorExportPlugin
|
|
@ -0,0 +1,11 @@
|
|||
@tool
|
||||
extends Node
|
||||
|
||||
func _ready():
|
||||
process_mode = PROCESS_MODE_ALWAYS
|
||||
|
||||
func _process(delta):
|
||||
FmodServer.update()
|
||||
|
||||
func _notification(what):
|
||||
FmodServer.notification(what)
|
|
@ -0,0 +1,76 @@
|
|||
@tool
|
||||
class_name FmodPlugin extends EditorPlugin
|
||||
|
||||
|
||||
const ADDON_PATH = "res://addons/fmod"
|
||||
|
||||
|
||||
@onready var theme = get_editor_interface().get_base_control().get_theme()
|
||||
|
||||
|
||||
var fmod_bank_explorer_window: PackedScene = load("res://addons/fmod/tool/ui/FmodBankExplorer.tscn")
|
||||
var bank_explorer: FmodBankExplorer
|
||||
var fmod_button: Button
|
||||
var export_plugin = FmodEditorExportPluginProxy.new()
|
||||
var emitter_inspector_plugin = FmodEmitterPropertyInspectorPlugin.new(self)
|
||||
var bank_loader_inspector_plugin = FmodBankLoaderPropertyInspectorPlugin.new(self)
|
||||
|
||||
|
||||
func _init():
|
||||
add_autoload_singleton("FmodManager", "res://addons/fmod/FmodManager.gd")
|
||||
fmod_button = Button.new()
|
||||
fmod_button.icon = load("res://addons/fmod/icons/fmod_icon.svg")
|
||||
fmod_button.text = "Fmod Explorer"
|
||||
|
||||
fmod_button.pressed.connect(_on_project_explorer_button_clicked)
|
||||
|
||||
add_control_to_container(EditorPlugin.CONTAINER_TOOLBAR, fmod_button)
|
||||
|
||||
bank_explorer = fmod_bank_explorer_window.instantiate()
|
||||
bank_explorer.theme = get_editor_interface().get_base_control().get_theme()
|
||||
bank_explorer.visible = false
|
||||
add_child(bank_explorer)
|
||||
|
||||
add_inspector_plugin(bank_loader_inspector_plugin)
|
||||
add_inspector_plugin(emitter_inspector_plugin)
|
||||
|
||||
|
||||
func _on_project_explorer_button_clicked():
|
||||
bank_explorer.should_display_copy_buttons = true
|
||||
bank_explorer.should_display_select_button = false
|
||||
_popup_project_explorer(FmodBankExplorer.ToDisplayFlags.BANKS | FmodBankExplorer.ToDisplayFlags.BUSES | FmodBankExplorer.ToDisplayFlags.VCA | FmodBankExplorer.ToDisplayFlags.EVENTS)
|
||||
|
||||
|
||||
func open_project_explorer_events(on_select_callable: Callable):
|
||||
_open_project_explorer(FmodBankExplorer.ToDisplayFlags.BANKS | FmodBankExplorer.ToDisplayFlags.EVENTS, on_select_callable)
|
||||
|
||||
|
||||
func open_project_explorer_bank(on_select_callable: Callable):
|
||||
_open_project_explorer(FmodBankExplorer.ToDisplayFlags.BANKS, on_select_callable)
|
||||
|
||||
|
||||
func _open_project_explorer(display_flag: int, on_select_callable: Callable):
|
||||
bank_explorer.should_display_copy_buttons = false
|
||||
bank_explorer.should_display_select_button = true
|
||||
_popup_project_explorer(display_flag, on_select_callable)
|
||||
|
||||
|
||||
func _popup_project_explorer(to_display: int, callable: Callable = Callable()):
|
||||
if bank_explorer.visible == true:
|
||||
bank_explorer.close_window()
|
||||
return
|
||||
bank_explorer.regenerate_tree(to_display, callable)
|
||||
bank_explorer.popup_centered()
|
||||
|
||||
|
||||
func _enter_tree():
|
||||
add_export_plugin(export_plugin)
|
||||
|
||||
|
||||
func _exit_tree():
|
||||
remove_inspector_plugin(emitter_inspector_plugin)
|
||||
remove_inspector_plugin(bank_loader_inspector_plugin)
|
||||
|
||||
remove_control_from_container(EditorPlugin.CONTAINER_TOOLBAR, fmod_button)
|
||||
fmod_button.queue_free()
|
||||
remove_export_plugin(export_plugin)
|
|
@ -0,0 +1,101 @@
|
|||
[configuration]
|
||||
entry_symbol = "fmod_library_init"
|
||||
compatibility_minimum = 4.2
|
||||
|
||||
[libraries]
|
||||
windows.editor.x86_64 = "res://addons/fmod/libs/windows/libGodotFmod.windows.editor.x86_64.dll"
|
||||
windows.debug.x86_64 = "res://addons/fmod/libs/windows/libGodotFmod.windows.template_debug.x86_64.dll"
|
||||
windows.release.x86_64 = "res://addons/fmod/libs/windows/libGodotFmod.windows.template_release.x86_64.dll"
|
||||
macos.editor = "res://addons/fmod/libs/macos/libGodotFmod.macos.editor.framework"
|
||||
macos.debug = "res://addons/fmod/libs/macos/libGodotFmod.macos.template_debug.framework"
|
||||
macos.release = "res://addons/fmod/libs/macos/libGodotFmod.macos.template_release.framework"
|
||||
linux.editor.x86_64 = "res://addons/fmod/libs/linux/libGodotFmod.linux.editor.x86_64.so"
|
||||
linux.debug.x86_64 = "res://addons/fmod/libs/linux/libGodotFmod.linux.template_debug.x86_64.so"
|
||||
linux.release.x86_64 = "res://addons/fmod/libs/linux/libGodotFmod.linux.template_release.x86_64.so"
|
||||
android.debug.x86_64 = "res://addons/fmod/libs/android/x86_64/libGodotFmod.android.template_debug.x86_64.so"
|
||||
android.release.x86_64 = "res://addons/fmod/libs/android/x86_64/libGodotFmod.android.template_release.x86_64.so"
|
||||
android.debug.arm64 = "res://addons/fmod/libs/android/arm64/libGodotFmod.android.template_debug.arm64.so"
|
||||
android.release.arm64 = "res://addons/fmod/libs/android/arm64/libGodotFmod.android.template_release.arm64.so"
|
||||
ios.debug = "res://addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.dylib"
|
||||
ios.release = "res://addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.dylib"
|
||||
|
||||
[icons]
|
||||
FmodEventEmitter2D = "res://addons/fmod/icons/fmod_icon.svg"
|
||||
FmodEventEmitter3D = "res://addons/fmod/icons/fmod_icon.svg"
|
||||
FmodListener2D = "res://addons/fmod/icons/fmod_icon.svg"
|
||||
FmodListener3D = "res://addons/fmod/icons/fmod_icon.svg"
|
||||
FmodBankLoader = "res://addons/fmod/icons/fmod_icon.svg"
|
||||
|
||||
[dependencies]
|
||||
windows.editor.x86_64 = {
|
||||
"libs/windows/fmodL.dll": "",
|
||||
"libs/windows/fmodstudioL.dll": ""
|
||||
}
|
||||
windows.debug.x86_64 = {
|
||||
"libs/windows/fmodL.dll": "",
|
||||
"libs/windows/fmodstudioL.dll": ""
|
||||
}
|
||||
windows.release.x86_64 = {
|
||||
"libs/windows/fmod.dll": "",
|
||||
"libs/windows/fmodstudio.dll": ""
|
||||
}
|
||||
linux.editor.x86_64 = {
|
||||
"libs/linux/libfmodL.so": "",
|
||||
"libs/linux/libfmodL.so.13": "",
|
||||
"libs/linux/libfmodL.so.13.12": "",
|
||||
"libs/linux/libfmodstudioL.so": "",
|
||||
"libs/linux/libfmodstudioL.so.13": "",
|
||||
"libs/linux/libfmodstudioL.so.13.12": ""
|
||||
}
|
||||
linux.debug.x86_64 = {
|
||||
"libs/linux/libfmodL.so": "",
|
||||
"libs/linux/libfmodL.so.13": "",
|
||||
"libs/linux/libfmodL.so.13.12": "",
|
||||
"libs/linux/libfmodstudioL.so": "",
|
||||
"libs/linux/libfmodstudioL.so.13": "",
|
||||
"libs/linux/libfmodstudioL.so.13.12": ""
|
||||
}
|
||||
linux.release.x86_64 = {
|
||||
"libs/linux/libfmod.so": "",
|
||||
"libs/linux/libfmod.so.13": "",
|
||||
"libs/linux/libfmod.so.13.12": "",
|
||||
"libs/linux/libfmodstudio.so": "",
|
||||
"libs/linux/libfmodstudio.so.13": "",
|
||||
"libs/linux/libfmodstudio.so.13.12": ""
|
||||
}
|
||||
macos.editor = {
|
||||
"libs/macos/libfmodL.dylib": "",
|
||||
"libs/macos/libfmodstudioL.dylib": ""
|
||||
}
|
||||
macos.debug = {
|
||||
"libs/macos/libfmodL.dylib": "",
|
||||
"libs/macos/libfmodstudioL.dylib": ""
|
||||
}
|
||||
macos.release = {
|
||||
"libs/macos/libfmod.dylib": "",
|
||||
"libs/macos/libfmodstudio.dylib": ""
|
||||
}
|
||||
android.debug.x86_64 = {
|
||||
"libs/android/x86_64/libfmodL.so": "",
|
||||
"libs/android/x86_64/libfmodstudioL.so": "",
|
||||
}
|
||||
android.release.x86_64 = {
|
||||
"libs/android/x86_64/libfmod.so": "",
|
||||
"libs/android/x86_64/libfmodstudio.so": "",
|
||||
}
|
||||
android.debug.arm64 = {
|
||||
"libs/android/arm64/libfmodL.so": "",
|
||||
"libs/android/arm64/libfmodstudioL.so": "",
|
||||
}
|
||||
android.release.arm64 = {
|
||||
"libs/android/arm64/libfmod.so": "",
|
||||
"libs/android/arm64/libfmodstudio.so": "",
|
||||
}
|
||||
ios.debug = {
|
||||
"libs/ios/libfmodL_iphoneos.a": "",
|
||||
"libs/ios/libfmodstudioL_iphoneos.a": ""
|
||||
}
|
||||
ios.release = {
|
||||
"libs/ios/libfmod_iphoneos.a": "",
|
||||
"libs/ios/libfmodstudio_iphoneos.a": ""
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 21" width="20" height="21">
|
||||
<title>banks_icon</title>
|
||||
<defs>
|
||||
<image width="20" height="21" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAVCAMAAABxCz6aAAAAAXNSR0IB2cksfwAAAapQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR0dT09PUlJSWFhYV1dXUVFRS0tLKCgoAAAAAAAAAAAACgoKdnZ2kpKSjo6OjY2NkZGRh4eHAAAAAAAAAAAAAAAAGBgYVlZWUFBQMTExAAAAAAAABwcHKysrLCwsLi4uLS0tLy8vERERAAAAAAAAPDw8hoaGhYWFeXl5eHh4gYGBiYmJXFxcAAAAQUFBiIiIgICAhISEgoKCFRUVCAgIODg4dXV1YGBgAAAAQEBAg4ODe3t7ISEhEhISXV1dPz8/FhYWZmZmJCQkDAwMYmJiX19fIiIiJiYmf39/j4+PTU1NioqKCQkJbGxsMjIyd3d3fX19dHR0fn5+GhoaPj4+cnJyMzMzWlpaY2NjTk5OGxsbi4uLDQ0NZ2dnDg4OcXFxGRkZKioqZGRkfHx8EBAQW1tbAgICOzs7Q0NDHx8fCwsLREREcHBwR0dHaGhoSUlJFxcXJycnQkJCbm5uWVlZjIyMAAAAAAAAGhoaX19fMjIyAAAAAAAAAAAAAAAAnoaMsQAAAI50Uk5TABGKrbq9wcrJxa+THwrA///////////WGpv/////////wwlU//////+OxP/////////ly///////////6P/////////////n/////////////////////////////////////////////////////////////////////////////v///+a05vn2NoXh4LvdJzEAAAFmSURBVHicY2BgYGRiZmFlY+fgYOdkZeXi5mEAAl4+fgEBQSFhIBAREBAVE5cACkpKScvIykGArKy8Ar+iEoOyiqqaOhJQ01DRZNDS1tHVAQJdPT19EK1jYGjEYGwiZ2pqqiBnZm5hKWcFZMpZ2zBw2NrZ2zs4ijpJORu6uJra25u6uTNweNjZe3p5+/j6+QcEBgUr2JuGgAUtHUPDwiMi+aPsRKNjHKCCCoIqsXGm8QkKiYIqYaYQQSvLpORYj5RUg7T00IzMODuwYJZrdoqVY6CKSraXQ5RYjhVEMCE3L8ouX0UlOt7KtKAwCiwYVVQcUiJQEl1allMeV5FnBbUotjKoys612rTQKVfVXgEi6FDtXCZnF1zjIFuoIgq13c7etDbIILGu3rLOuRzueKDX8hpyg0p96oUULCGCjbLAUIiKamoWDjBtATJb0lsZ2to73EKAID0goBDC6ORk6Opm70EBvVrKAPo3aJSuHMDoAAAAAElFTkSuQmCC"/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://o2chsr07oeqs"
|
||||
path="res://.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/bank_icon.svg"
|
||||
dest_files=["res://.godot/imported/bank_icon.svg-8de6c7bff09a67352e162b3c61b601de.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 21" width="20" height="21">
|
||||
<title>bus_icon</title>
|
||||
<defs>
|
||||
<image width="20" height="21" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAVCAMAAABxCz6aAAAAAXNSR0IB2cksfwAAAapQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR0dT09PUlJSWFhYV1dXUVFRS0tLKCgoAAAAAAAAAAAACgoKdnZ2kpKSjo6OjY2NkZGRh4eHAAAAAAAAAAAAAAAAGBgYVlZWUFBQMTExAAAAAAAABwcHKysrLCwsLi4uLS0tLy8vERERAAAAAAAAPDw8hoaGhYWFeXl5eHh4gYGBiYmJXFxcAAAAQUFBiIiIgICAhISEgoKCFRUVCAgIODg4dXV1YGBgAAAAQEBAg4ODe3t7ISEhEhISXV1dPz8/FhYWZmZmJCQkDAwMYmJiX19fIiIiJiYmf39/j4+PTU1NioqKCQkJbGxsMjIyd3d3fX19dHR0fn5+GhoaPj4+cnJyMzMzWlpaY2NjTk5OGxsbi4uLDQ0NZ2dnDg4OcXFxGRkZKioqZGRkfHx8EBAQW1tbAgICOzs7Q0NDHx8fCwsLREREcHBwR0dHaGhoSUlJFxcXJycnQkJCbm5uWVlZjIyMAAAAAAAAGhoaX19fMjIyAAAAAAAAAAAAAAAAnoaMsQAAAI50Uk5TABGKrbq9wcrJxa+THwrA///////////WGpv/////////wwlU//////+OxP/////////ly///////////6P/////////////n/////////////////////////////////////////////////////////////////////////////v///+a05vn2NoXh4LvdJzEAAAFmSURBVHicY2BgYGRiZmFlY+fgYOdkZeXi5mEAAl4+fgEBQSFhIBAREBAVE5cACkpKScvIykGArKy8Ar+iEoOyiqqaOhJQ01DRZNDS1tHVAQJdPT19EK1jYGjEYGwiZ2pqqiBnZm5hKWcFZMpZ2zBw2NrZ2zs4ijpJORu6uJra25u6uTNweNjZe3p5+/j6+QcEBgUr2JuGgAUtHUPDwiMi+aPsRKNjHKCCCoIqsXGm8QkKiYIqYaYQQSvLpORYj5RUg7T00IzMODuwYJZrdoqVY6CKSraXQ5RYjhVEMCE3L8ouX0UlOt7KtKAwCiwYVVQcUiJQEl1allMeV5FnBbUotjKoys612rTQKVfVXgEi6FDtXCZnF1zjIFuoIgq13c7etDbIILGu3rLOuRzueKDX8hpyg0p96oUULCGCjbLAUIiKamoWDjBtATJb0lsZ2to73EKAID0goBDC6ORk6Opm70EBvVrKAPo3aJSuHMDoAAAAAElFTkSuQmCC"/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dj1kag4aeg58t"
|
||||
path="res://.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/bus_icon.svg"
|
||||
dest_files=["res://.godot/imported/bus_icon.svg-f536ffd3c4893e79a9d3cb9a1b4fb50c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 21" width="18" height="21">
|
||||
<title>c_parameter_icon</title>
|
||||
<defs>
|
||||
<image width="18" height="21" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAVCAMAAAB8FU7dAAAAAXNSR0IB2cksfwAAALdQTFRFAAAAAAAAAAAAAAAAAAAAHx8fTExMSEhIMTExAAAAAAAAOzs7jo6OiIiIj4+PXFxcAAAAODg4h4eHgICAb29vV1dXAAAAMDAwc3NzEBAQAAAAKCgoe3t7AAAACgoKNDQ0AAAAbW1tY2NjBAQEX19fMjIyQ0NDGRkZAAAAa2trDAwMDw8PPz8/U1NTICAgR0dHGxsbLCwsS0tLAAAAAAAAf39/enp6GBgYT09PPDw8fn5+AAAAFBQUHGvHAgAAAD10Uk5Ti+ztr93/////6NX//////+H//////9b////////7///+/////////9z/////////////5/P////////8/yfQ/xAAAADPSURBVHicbdDXEoIwEAXQ2BVUhIjlgjX2horY//+73CUyg2UfMpMzyezuFSKT/aycyBeKpVQVyxVhmNVaqupWQxi2I5NqSum4DdFqJ9TpwvOZev2EPAADpiFGWsZQE4URURZTTW3YcoY50QKqw+IrLKW/wow6rrFh2mJHZ4A9kYeVT5cDjtxVIaS55gjif/F/Eycii58FKEQR0RlDnv5CvS64skhnDyaayKaXmsyY5I3mPkb3mNyHXvv2tN9bOW74kYTUSRhm/TuvP6n+Zv8CeG0dU9iBm/oAAAAASUVORK5CYII="/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.0 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cmvcqfsl167te"
|
||||
path="res://.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/c_parameter_icon.svg"
|
||||
dest_files=["res://.godot/imported/c_parameter_icon.svg-04115c2482c9a6874356ffdc09c41db0.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 21" width="18" height="21">
|
||||
<title>d_parameter_icon</title>
|
||||
<defs>
|
||||
<image width="18" height="21" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAVCAMAAAB8FU7dAAAAAXNSR0IB2cksfwAAAGxQTFRFAAAAAAAAAAAAAAAAAAAAHx8fTExMSEhIMTExAAAAAAAAOzs7jo6OiIiIj4+PXFxcAAAAODg4h4eHgICAV1dXPz8/Q0NDKysrAAAAX19fAAAANzc3NjY2VlZWf39/AAAAGxsbAwMDTk5OR0dHZLhzlQAAACR0Uk5Ti+ztr93/////6NX//////+H/////////8P///////+r/////RH/TkgAAAHVJREFUeJx1kNsSgjAMRAPSIlQrFsKlykX4/3/U6YwlbeA8ntnZSRYgSUMukAmZE+S1gFLd7gT9qKB8mppgGqLQ0Xa9V4P94xVaEafQou96cfXmSnEVdY2Bmk5SPzUvrTtb7Mof/VnjFG78bbKE0vFeB6vy7b+Cnhf2Pv5vKwAAAABJRU5ErkJggg=="/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 773 B |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dgna04txtwnyb"
|
||||
path="res://.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/d_parameter_icon.svg"
|
||||
dest_files=["res://.godot/imported/d_parameter_icon.svg-d339e4e3f950ae8593b999ef51579136.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23 18" width="23" height="18">
|
||||
<title>event_icon</title>
|
||||
<defs>
|
||||
<image width="23" height="18" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAMAAACHObUhAAAAAXNSR0IB2cksfwAAAQJQTFRFAAAAAAAAAAAAAQEBAQEBAAAAAQEBAAAAAQEBFBQUMjIyMzMzFBQUAQEBAAAAOTk5ZmZmfHx8gICAfn5+ODg4AAAAAQEBExMTHx8fGhoaVlZWf39/c3NzHBwcZGRkAQEBAAAALy8vHh4eAQEBEBAQQEBAPDw8dXV1MTExAwMDFBQUKioqcXFxBAQEFxcXREREDAwMGxsbWVlZdnZ2BgYGQ0NDcHBwEhISW1tbFhYWaGhoY2NjZWVlfX19ISEhJiYmbGxseHh4aWlpTk5OUVFReXl5FRUVYGBgAAAAEhISAQEBAAAANzc3AAAAAQEBExMTAAAAAAAAAQEBAQEBAQEBAAAAb2thKAAAAFZ0Uk5TAAFn1/r/1max/v///bBu////////a9r+/////////9n8////////////////////////////////////////////////////+/7YbP9qr/2uZdX51GPSbw3+AAAA00lEQVR4nG2R13LCQAxFtQEFYqp36RDAVJNQQichjd4htP//FbzYzHhNzpuORprRFQB5sNnRjP3RQQCIE58klxnJjR4CXvT5ZSrAAhiEUJhForE4rxPP0StJFk5BWqGZbC6S1Lyc93EKRaqkAVWaQSy9vJZNm1Q0PGKlWvvXv9UbtFnmJEy+VW3LtNPV6d185V1qatPxjz7n88vw3z+/4gGGH1Aruh+OBMYT7rW7lKnIjCpznsPdGrZYwgoD1gZb4wbIFneWnHf4xx+wP4h/OZ7OBC6I7CrbsYtaRQAAAABJRU5ErkJggg=="/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cmpgmbn3y4svl"
|
||||
path="res://.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/event_icon.svg"
|
||||
dest_files=["res://.godot/imported/event_icon.svg-4e6e2103d076f95b7bef82f079e433e6.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cotpb54utx6d6"
|
||||
path="res://.godot/imported/fmod_emitter.png-6783a287e298e2a04e64a6deaa6fe366.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/fmod_emitter.png"
|
||||
dest_files=["res://.godot/imported/fmod_emitter.png-6783a287e298e2a04e64a6deaa6fe366.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
|
@ -0,0 +1 @@
|
|||
<svg height="16" viewBox="0 0 512 512" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m257 8.7c7.4.2 17.8.8 23 1.4 5.2.5 13.8 1.8 19 2.9s14.2 3.3 20 4.9c5.8 1.7 15.2 4.9 21 7.1 5.8 2.3 15.7 6.7 22 9.9s15.3 8.2 20 11.1 11.6 7.7 15.5 10.6c3.9 2.8 10.8 8.5 15.5 12.6 4.6 4 12 11.3 16.3 16.3s11 13.7 14.9 19.5 9 14.5 11.4 19.5c2.4 4.9 5.8 13.3 7.5 18.5 2.3 6.7 3.3 12 3.7 18 .3 6.1-.1 10.3-1.3 15-1 3.6-2.8 8.8-4.1 11.5-1.2 2.8-4.2 7.7-6.7 11-2.4 3.3-7.1 8-16.4 15l6.1 10.5c3.4 5.8 8 15.2 10.2 21 2.3 5.8 5.3 15.2 6.8 21 1.4 5.8 3.3 16.1 4.2 23 1.1 8.5 1.4 16 1 23.5-.3 6.1-1.4 16.2-2.5 22.5s-3.1 15.3-4.5 20-4.7 13.9-7.5 20.5-7.9 16.7-11.4 22.5c-3.4 5.8-8.9 14.1-12.2 18.5s-11.1 13.3-17.5 19.9c-6.3 6.5-15.1 14.7-19.5 18.3-4.4 3.5-12.5 9.4-18 13.1-5.5 3.6-15.6 9.4-22.5 12.8s-16.8 7.8-22 9.7c-5.2 2-13.8 4.7-19 6-5.2 1.4-13.8 3.3-19 4.2s-17.4 2-27 2.5c-14.3.6-20 .4-31.5-1.1-7.7-1-18.5-2.7-24-4-5.5-1.2-14.7-3.6-20.5-5.5-5.8-1.8-15.4-5.4-21.5-7.9s-15.7-7.1-21.5-10.2c-5.8-3-14.8-8.4-20-11.8-5.2-3.5-13.1-9.2-17.5-12.8-4.4-3.5-13-11.6-19-17.9-6-6.2-14-15.6-17.8-20.8-3.7-5.2-9.4-14.9-12.7-21.5s-7.1-15.6-8.6-20c-1.5-4.6-2.8-11.4-3.1-16-.3-5.4 0-10.4 1.1-15.5.9-4.1 3.1-10.4 4.9-14 1.8-3.7 6-9.4 9.7-13.3 3.6-3.8 8-7.8 13-10.7l-2.2-3.7c-1.2-2.1-4.1-7.2-6.5-11.3s-6.1-12-8.2-17.5c-2.2-5.5-5.1-14.3-6.5-19.5-1.5-5.2-3.3-14.6-4.1-20.7-.8-6.2-1.5-16.2-1.5-22.3s.7-16.1 1.5-22.2c.8-6.2 2.6-15.4 3.9-20.3s4.1-13.5 6.1-19 6-14.5 8.9-20 8-14 11.3-19c3.3-4.9 9.4-13 13.5-18 4.1-4.9 11.3-12.6 15.9-17s12.7-11.4 17.9-15.4 13.6-9.8 18.5-12.9c4.9-3 14.8-8.4 22-11.8s17.7-7.8 23.5-9.7 15.9-4.7 22.5-6.1c6.6-1.5 16.5-3.2 22-3.9s16.1-1.1 23.5-1z"/><path d="m255.3 55.2c5.9-.1 15.8.5 21.9 1.3 6.2.8 16.7 2.8 23.3 4.5s17.2 5.1 23.5 7.6 15.8 6.9 21 9.6c5.2 2.8 14.2 8.2 19.9 12.2 5.8 3.9 15 11.4 20.4 16.6 5.5 5.2 12.9 13.3 16.4 18s9 13.7 12.1 20c4.3 8.7 5.7 12.8 6 17 .4 4.8.1 5.9-2.2 8.7-1.6 2-4.1 3.7-6.4 4.3-2 .5-5.1.6-6.7.2-1.6-.3-4-1.8-5.3-3.2s-3.9-6.3-5.8-11c-1.8-4.7-5.3-11.4-7.7-15s-6.6-9-9.3-12.1-8-8.5-11.9-11.9-11.3-9-16.5-12.5-14-8.6-19.5-11.3c-5.5-2.8-14.5-6.6-20-8.5s-14.1-4.4-19-5.5c-4.9-1.2-13.9-2.6-20-3.3-6.3-.6-15-.8-20.5-.5-5.2.4-13.8 1.6-19 2.6-5.2 1.1-13.6 3.3-18.5 5.1-4.9 1.7-12.6 4.8-17 6.9s-11.6 6.2-16 9c-4.4 2.9-11.8 8.5-16.5 12.4-4.6 3.9-11.8 11.2-16 16.2-4.1 5.1-9.6 12.7-12.2 17-2.5 4.4-6.1 11.5-7.8 15.9-1.8 4.4-4.1 11.4-5.2 15.5-1 4.1-2.2 12.2-2.5 18-.4 6.4-.1 13.8.7 19 .6 4.7 2.1 11.4 3.2 15s3.8 10.1 6 14.5 6 10.9 8.6 14.5c2.5 3.6 8.2 10.1 12.7 14.5 4.4 4.4 12.3 10.9 17.5 14.4s13.1 8.1 17.5 10.3 13.2 5.8 19.5 7.9 15.1 4.5 19.5 5.4 10.8 1.9 20.5 3v-148.5h11.5c6.3 0 15.9.5 21.2 1.1 5.4.6 14.1 2 19.3 3.1s14.2 3.5 20 5.4 16.8 6.6 24.5 10.4 18.3 10 23.5 13.7c5.2 3.8 13.5 10.9 18.5 15.9 4.9 4.9 11.5 12.6 14.7 17 3.1 4.3 7.6 12 10.1 16.9s5.7 12.7 7.1 17.2c1.4 4.6 3.3 12.2 4.1 17 .8 4.9 1.5 14 1.5 20.3s-.7 15.8-1.5 21c-.9 5.2-3.1 14-4.9 19.5-1.9 5.5-5.2 13.6-7.4 18s-6.8 12.3-10.3 17.5-10.9 14.2-16.4 19.9-14.1 13.5-19 17.4c-4.9 3.8-13.1 9.3-18 12.2-4.9 3-12.6 7-17 9s-12.5 5.2-18 7-14.9 4.3-21 5.4c-6.1 1.2-16.4 2.4-23 2.8-6.9.3-16.7.1-23-.6-6.1-.7-15.3-2.1-20.5-3.3-5.2-1.1-14-3.5-19.5-5.3s-14.9-5.4-21-8.1-15.1-7.4-20-10.3c-4.9-3-13.1-8.4-18-12.1s-13.5-11.4-19-17.2c-5.5-5.7-12.1-13.5-14.7-17.3-2.5-3.9-6.8-11.5-9.4-17s-5-12.1-5.3-14.6c-.6-4.5-.4-4.9 3.5-8.8 3.6-3.5 4.8-4.1 8.5-4.1 2.5 0 5.7.8 7.4 1.8 2.3 1.4 3.9 4 6.7 10.8 2.1 4.9 6.1 12.3 8.9 16.4s7.2 9.9 9.8 12.8c2.5 2.9 8 8.1 12.1 11.6s10.9 8.5 15 11.3 12.7 7.6 19 10.8 16.7 7.5 23 9.6 15 4.5 19.2 5.3c4.3.9 12.4 2.1 18 2.7 5.7.6 14.4.8 19.3.4s12.8-1.3 17.5-2.1 13.2-3.1 19-5 15-5.8 20.5-8.6c5.5-2.7 13.1-7.2 17-9.8 3.9-2.7 10.6-8 14.9-11.7 4.4-3.7 11.1-10.7 15-15.4 3.9-4.8 9.2-12.2 11.8-16.5 2.5-4.4 6.1-11.5 7.8-15.9 1.8-4.4 4.2-11.4 5.3-15.5 1.7-6.1 2-10.5 2-23.5s-.3-17.4-2-23.5c-1.1-4.1-3.5-10.9-5.3-15-1.7-4.1-5.7-11.3-8.8-16s-9.4-12.3-14.2-17c-4.7-4.7-12.8-11.4-18-15-5.2-3.5-14-8.5-19.5-11.1s-13.6-6-18-7.4c-4.4-1.5-11.9-3.6-16.8-4.6-4.8-1-11.9-2.2-22.7-3.4v148.5h-12c-6.6 0-17.3-.7-23.8-1.5-6.4-.9-16.4-2.7-22.2-4.1s-14.8-4.2-20-6.1-14.7-6.2-21-9.4c-6.3-3.3-15.7-9-20.9-12.7s-13.1-10.3-17.6-14.7-10.8-11.6-14.1-16-8.2-12.5-11.1-18c-2.8-5.5-6.3-13.7-7.7-18.3-1.4-4.5-3.3-12.1-4.1-17-.8-4.8-1.5-13.9-1.5-20.2s.7-15.8 1.5-21c.9-5.2 3.1-14 4.9-19.5 1.9-5.5 5.3-13.8 7.6-18.5s6.9-12.3 10.1-17 8.6-11.7 12.1-15.6c3.5-4 9-9.6 12.3-12.5 3.3-3 8.7-7.5 12-10 3.3-2.6 9.8-7 14.5-10 4.7-2.9 12.6-7.2 17.5-9.5s13.7-5.8 19.5-7.7 15.4-4.5 21.5-5.6 12.6-2.2 14.5-2.4 8.3-.5 14.2-.5z" fill="#6ccdf4"/></svg>
|
After Width: | Height: | Size: 4.4 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bwqq5q7kodk40"
|
||||
path="res://.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/fmod_icon.svg"
|
||||
dest_files=["res://.godot/imported/fmod_icon.svg-cca7eb13231881fafaea0d598d407ea3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23 18" width="23" height="18">
|
||||
<title>snapshot_icon</title>
|
||||
<defs>
|
||||
<image width="23" height="18" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAMAAACHObUhAAAAAXNSR0IB2cksfwAAAPxQTFRFAAAAAAAAAAAAAQEBAQEBAAAAAQEBAAAAAQEBFBQUMjIyMzMzFBQUAQEBAAAAOTk5ZmZmfHx8gICAfn5+ODg4AAAAAQEBExMTHx8fGhoaVVVVf39/R0dHFBQUdnZ2UlJSa2trAQEBAAAALy8vHh4eAQEBEBAQZGRkPDw8dHR0SUlJZ2dnMTExAwMDKioqcHBwBQUFCAgIBAQEFxcXQ0NDYmJiDAwMGxsbWVlZBgYGc3NzKCgoFhYWISEhJiYmbGxsWFhYeHh4VFRUCwsLbW1tRkZGAAAAEhISAQEBAAAANzc3AAAAAQEBExMTAAAAAAAAAQEBAQEBAQEBAAAAvMGz4gAAAFR0Uk5TAAFn1/r/1max/v///bBu////////a9r+////////////2fz///////////////////////////////////////////////v+2Gz/aq/9rmXV+dRjwdo0YQAAAN1JREFUeJxtkX1XAWEQxeeJGy3RznorlrClImUpL6GEUIny/b9L9gXPOu5fc35zzszcO0TiyOeHLP9xQBCJIE6UkCwljFNBEUTPVPZIiyFOiaSWOr9I2yCjZ5lz+qWWzFOhyMbVdapk8RvcMt+hzMUCocIGcK9XHxxeekSNK3A5YNYbNn9a12mJPzdbB3i73lCdOZ0XRDdzzK6S9ex1eK//ap/5ZkKX+cD18w4MZc6H+NrXRqMexq6vDyuHbWObw2RKM8R2DTe3T3yR+MZ8L+c5fqwHLJbev/z+rQT9A5sFJPmrtG2HAAAAAElFTkSuQmCC"/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b4jxbh86chubi"
|
||||
path="res://.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/snapshot_icon.svg"
|
||||
dest_files=["res://.godot/imported/snapshot_icon.svg-7b517248819b3685844766808fbce2a5.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
|
@ -0,0 +1,9 @@
|
|||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 21" width="20" height="21">
|
||||
<title>vca_icon</title>
|
||||
<defs>
|
||||
<image width="20" height="21" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAVCAMAAABxCz6aAAAAAXNSR0IB2cksfwAAAapQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR0dT09PUlJSWFhYV1dXUVFRS0tLKCgoAAAAAAAAAAAACgoKdnZ2kpKSjo6OjY2NkZGRh4eHAAAAAAAAAAAAAAAAGBgYVlZWUFBQMTExAAAAAAAABwcHKysrLCwsLi4uLS0tLy8vERERAAAAAAAAPDw8hoaGhYWFeXl5eHh4gYGBiYmJXFxcAAAAQUFBiIiIgICAhISEgoKCFRUVCAgIODg4dXV1YGBgAAAAQEBAg4ODe3t7ISEhEhISXV1dPz8/FhYWZmZmJCQkDAwMYmJiX19fIiIiJiYmf39/j4+PTU1NioqKCQkJbGxsMjIyd3d3fX19dHR0fn5+GhoaPj4+cnJyMzMzWlpaY2NjTk5OGxsbi4uLDQ0NZ2dnDg4OcXFxGRkZKioqZGRkfHx8EBAQW1tbAgICOzs7Q0NDHx8fCwsLREREcHBwR0dHaGhoSUlJFxcXJycnQkJCbm5uWVlZjIyMAAAAAAAAGhoaX19fMjIyAAAAAAAAAAAAAAAAnoaMsQAAAI50Uk5TABGKrbq9wcrJxa+THwrA///////////WGpv/////////wwlU//////+OxP/////////ly///////////6P/////////////n/////////////////////////////////////////////////////////////////////////////v///+a05vn2NoXh4LvdJzEAAAFmSURBVHicY2BgYGRiZmFlY+fgYOdkZeXi5mEAAl4+fgEBQSFhIBAREBAVE5cACkpKScvIykGArKy8Ar+iEoOyiqqaOhJQ01DRZNDS1tHVAQJdPT19EK1jYGjEYGwiZ2pqqiBnZm5hKWcFZMpZ2zBw2NrZ2zs4ijpJORu6uJra25u6uTNweNjZe3p5+/j6+QcEBgUr2JuGgAUtHUPDwiMi+aPsRKNjHKCCCoIqsXGm8QkKiYIqYaYQQSvLpORYj5RUg7T00IzMODuwYJZrdoqVY6CKSraXQ5RYjhVEMCE3L8ouX0UlOt7KtKAwCiwYVVQcUiJQEl1allMeV5FnBbUotjKoys612rTQKVfVXgEi6FDtXCZnF1zjIFuoIgq13c7etDbIILGu3rLOuRzueKDX8hpyg0p96oUULCGCjbLAUIiKamoWDjBtATJb0lsZ2to73EKAID0goBDC6ORk6Opm70EBvVrKAPo3aJSuHMDoAAAAAElFTkSuQmCC"/>
|
||||
</defs>
|
||||
<style>
|
||||
</style>
|
||||
<use id="Background" href="#img1" x="0" y="0"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,38 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://crsj4jjaeq87a"
|
||||
path="res://.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.ctex"
|
||||
metadata={
|
||||
"has_editor_variant": true,
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://addons/fmod/icons/vca_icon.svg"
|
||||
dest_files=["res://.godot/imported/vca_icon.svg-def43f27fe148a7a0b18c7dcaab20c79.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=true
|
||||
editor/convert_colors_with_editor_theme=true
|
BIN
addons/fmod/libs/android/arm64/libGodotFmod.android.editor.arm64.so (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/android/arm64/libGodotFmod.android.template_debug.arm64.so (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/android/arm64/libGodotFmod.android.template_release.arm64.so (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/linux/libGodotFmod.linux.template_debug.x86_64.so (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/linux/libGodotFmod.linux.template_release.x86_64.so (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/windows/libGodotFmod.windows.editor.x86_64.dll (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/windows/libGodotFmod.windows.template_debug.x86_64.dll (Stored with Git LFS)
Normal file
BIN
addons/fmod/libs/windows/libGodotFmod.windows.template_release.x86_64.dll (Stored with Git LFS)
Normal file
|
@ -0,0 +1,7 @@
|
|||
[plugin]
|
||||
|
||||
name="FMOD GDExtension"
|
||||
description="FMOD GDExtension for Godot Engine 4.0"
|
||||
author="Utopia-rise, Tristan Grespinet, Pierre-Thomas Meisels"
|
||||
version="4.0.0"
|
||||
script="FmodPlugin.gd"
|
|
@ -0,0 +1,20 @@
|
|||
class_name FmodBankLoaderPropertyInspectorPlugin extends EditorInspectorPlugin
|
||||
|
||||
static var bank_icon = load("res://addons/fmod/icons/bank_icon.svg")
|
||||
|
||||
var _open_project_explorer_callable: Callable
|
||||
|
||||
func _init(plugin: FmodPlugin):
|
||||
_open_project_explorer_callable = plugin.open_project_explorer_bank
|
||||
|
||||
func _can_handle(object: Object):
|
||||
return object is FmodBankLoader
|
||||
|
||||
func _parse_property(object: Object, type: Variant.Type, name: String, hint_type: PropertyHint, hint_string: String, usage_flags: int, wide: bool):
|
||||
return name == "bank_paths"
|
||||
|
||||
func _parse_category(object: Object, category: String):
|
||||
if category != "FmodBankLoader":
|
||||
return
|
||||
var editor_property := FmodBankPathEditorProperty.new(_open_project_explorer_callable)
|
||||
add_property_editor_for_multiple_properties("Fmod banks", PackedStringArray(["bank_paths"]), editor_property)
|
|
@ -0,0 +1,21 @@
|
|||
class_name FmodEmitterPropertyInspectorPlugin extends EditorInspectorPlugin
|
||||
|
||||
var _open_project_explorer_callable: Callable
|
||||
var _event_editor_property_scene: PackedScene = load("res://addons/fmod/tool/property_editors/FmodEventEditorProperty.tscn")
|
||||
|
||||
func _init(plugin: FmodPlugin):
|
||||
_open_project_explorer_callable = plugin.open_project_explorer_events
|
||||
|
||||
func _can_handle(object: Object):
|
||||
return object is FmodEventEmitter2D or \
|
||||
object is FmodEventEmitter3D
|
||||
|
||||
func _parse_property(object: Object, type: Variant.Type, name: String, hint_type: PropertyHint, hint_string: String, usage_flags: int, wide: bool):
|
||||
return name == "event_name" || name == "event_guid"
|
||||
|
||||
func _parse_category(object: Object, category: String):
|
||||
if category != "FmodEventEmitter2D" and category != "FmodEventEmitter3D":
|
||||
return
|
||||
var editor_property := _event_editor_property_scene.instantiate()
|
||||
editor_property.initialize(_open_project_explorer_callable, "event_name", "event_guid")
|
||||
add_property_editor_for_multiple_properties("Fmod event", PackedStringArray(["event_name", "event_guid"]), editor_property)
|
|
@ -0,0 +1,95 @@
|
|||
class_name FmodBankPathEditorProperty extends EditorProperty
|
||||
|
||||
var path_property_name := "bank_paths"
|
||||
|
||||
var ui: Control
|
||||
var last_selected_index := -1
|
||||
|
||||
func _init(open_project_explorer_callable: Callable):
|
||||
ui = load("res://addons/fmod/tool/property_editors/FmodBankPathsPropertyEditorUi.tscn").instantiate()
|
||||
add_child(ui)
|
||||
var add_button: Button = ui.get_node("%AddButton")
|
||||
|
||||
var open_project_explorer_event = func open_project_explorer_event():
|
||||
open_project_explorer_callable.call(self._set_path_and_guid)
|
||||
add_button.pressed.connect(open_project_explorer_event)
|
||||
|
||||
var remove_button: Button = ui.get_node("%RemoveButton")
|
||||
remove_button.pressed.connect(_on_remove_button)
|
||||
|
||||
var manual_add_button: Button = ui.get_node("%ManualAddButton")
|
||||
manual_add_button.pressed.connect(_on_manual_add_button)
|
||||
|
||||
var up_button: Button = ui.get_node("%UpButton")
|
||||
up_button.pressed.connect(_on_up_button)
|
||||
|
||||
var down_button: Button = ui.get_node("%DownButton")
|
||||
down_button.pressed.connect(_on_down_button)
|
||||
|
||||
func _update_property():
|
||||
var bank_list: ItemList = ui.get_node("%BankList")
|
||||
bank_list.clear()
|
||||
var bank_paths: Array = get_edited_object()[path_property_name]
|
||||
for path in bank_paths:
|
||||
bank_list.add_item(path)
|
||||
|
||||
if last_selected_index == -1:
|
||||
return
|
||||
bank_list.select(last_selected_index)
|
||||
last_selected_index = -1
|
||||
|
||||
func _set_path_and_guid(path: String, _cancel: String):
|
||||
var bank_list: ItemList = ui.get_node("%BankList")
|
||||
var current_bank_paths: Array = get_edited_object()[path_property_name]
|
||||
|
||||
if current_bank_paths.has(path):
|
||||
return
|
||||
|
||||
var bank_paths := Array(current_bank_paths)
|
||||
bank_paths.append(path)
|
||||
emit_changed(path_property_name, bank_paths)
|
||||
|
||||
func _on_remove_button():
|
||||
var bank_list: ItemList = ui.get_node("%BankList")
|
||||
var current_bank_paths: Array = get_edited_object()[path_property_name]
|
||||
var bank_paths := Array(current_bank_paths)
|
||||
var selected_items_indexes: PackedInt32Array = bank_list.get_selected_items()
|
||||
if selected_items_indexes.is_empty():
|
||||
return
|
||||
var item = bank_list.get_item_text(selected_items_indexes[0])
|
||||
var in_list_index = bank_paths.find(item)
|
||||
bank_paths.remove_at(in_list_index)
|
||||
last_selected_index = in_list_index if in_list_index < bank_paths.size() else in_list_index - 1
|
||||
emit_changed(path_property_name, bank_paths)
|
||||
|
||||
func _on_manual_add_button():
|
||||
var manual_add_line_edit: LineEdit = ui.get_node("%ManualAddLineEdit")
|
||||
var to_add: String = manual_add_line_edit.text
|
||||
if not to_add.begins_with("res://") || not to_add.ends_with(".bank"):
|
||||
return
|
||||
_set_path_and_guid(to_add, "")
|
||||
manual_add_line_edit.text = ""
|
||||
|
||||
func _on_up_button():
|
||||
_on_move_button(false)
|
||||
|
||||
func _on_down_button():
|
||||
_on_move_button(true)
|
||||
|
||||
func _on_move_button(is_down: bool):
|
||||
var bank_list: ItemList = ui.get_node("%BankList")
|
||||
var current_bank_paths: Array = get_edited_object()[path_property_name]
|
||||
var bank_paths := Array(current_bank_paths)
|
||||
var selected_items_indexes: PackedInt32Array = bank_list.get_selected_items()
|
||||
if selected_items_indexes.is_empty():
|
||||
return
|
||||
var item = bank_list.get_item_text(selected_items_indexes[0])
|
||||
var in_list_index = bank_paths.find(item)
|
||||
var boundary = current_bank_paths.size() - 1 if is_down else 0
|
||||
if in_list_index == boundary:
|
||||
return
|
||||
var new_index = in_list_index + 1 if is_down else in_list_index - 1
|
||||
bank_paths.remove_at(in_list_index)
|
||||
bank_paths.insert(new_index, item)
|
||||
last_selected_index = new_index
|
||||
emit_changed(path_property_name, bank_paths)
|
|
@ -0,0 +1,60 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://dtlwk8wdeal3h"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bkqdeaojmbbaj" path="res://addons/fmod/icons/bank_icon.svg" id="1_11c48"]
|
||||
|
||||
[node name="FmodBankPathsPropertyEditorUi" type="VBoxContainer"]
|
||||
offset_right = 92.0
|
||||
offset_bottom = 43.0
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="AddButton" type="Button" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "+"
|
||||
icon = ExtResource("1_11c48")
|
||||
icon_alignment = 2
|
||||
|
||||
[node name="RemoveButton" type="Button" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "-"
|
||||
|
||||
[node name="VSeparator" type="VSeparator" parent="HBoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="UpButton" type="Button" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "↑"
|
||||
|
||||
[node name="DownButton" type="Button" parent="HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "↓"
|
||||
|
||||
[node name="BankList" type="ItemList" parent="."]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
auto_height = true
|
||||
|
||||
[node name="HBoxContainer2" type="HBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="ManualAddLineEdit" type="LineEdit" parent="HBoxContainer2"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="ManualAddButton" type="Button" parent="HBoxContainer2"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "+"
|
|
@ -0,0 +1,80 @@
|
|||
@tool class_name FmodEventEditorProperty extends FmodPathEditorProperty
|
||||
|
||||
|
||||
static var EVENT_PARAMETER_PREFIX_FOR_PROPERTIES = "event_parameter"
|
||||
|
||||
var former_event_description: FmodEventDescription
|
||||
|
||||
func _update_property():
|
||||
super()
|
||||
if get_edited_object().event_name == "":
|
||||
return
|
||||
_update_parameters()
|
||||
var event_description: FmodEventDescription = FmodServer.get_event_from_guid(get_edited_object().event_guid)
|
||||
former_event_description = event_description
|
||||
|
||||
func _set_path_and_guid(path: String, guid: String):
|
||||
super(path, guid)
|
||||
if get_edited_object().event_name == "":
|
||||
return
|
||||
_update_parameters()
|
||||
former_event_description = FmodServer.get_event_from_guid(get_edited_object().event_guid)
|
||||
|
||||
func _update_parameters():
|
||||
var event_description: FmodEventDescription = FmodServer.get_event_from_guid(get_edited_object().event_guid)
|
||||
|
||||
if former_event_description != null and event_description != former_event_description:
|
||||
get_edited_object().tool_remove_all_parameters()
|
||||
|
||||
var map_to_property_name = func map_to_property_name(dict: Dictionary):
|
||||
return dict["name"]
|
||||
var filter_fmod_parameter_property = func filter_fmod_parameter_property(parameter_name: String):
|
||||
return parameter_name.begins_with(EVENT_PARAMETER_PREFIX_FOR_PROPERTIES)
|
||||
|
||||
var filter_property_id = func filter_property_id(property: String):
|
||||
return property.ends_with("/id")
|
||||
var existing_property_ids = get_edited_object().get_property_list().map(map_to_property_name).filter(filter_fmod_parameter_property).filter(filter_property_id)
|
||||
|
||||
var map_property_name_to_parameter_name = func map_property_name_to_parameter_name(parameter: String):
|
||||
return parameter.split("/")[1]
|
||||
var existing_parameter_names = existing_property_ids.map(map_property_name_to_parameter_name)
|
||||
|
||||
var map_property_id_to_parameter_id_value = func map_property_id_to_parameter_id_value(property: String):
|
||||
return get_edited_object()[property]
|
||||
var existing_parameter_ids = existing_property_ids.map(map_property_id_to_parameter_id_value)
|
||||
|
||||
var property_matching = existing_parameter_ids.map(func(id): return false)
|
||||
|
||||
for param in event_description.get_parameters():
|
||||
var parameter_name = param.get_name()
|
||||
var parameter_id_param = "%s/%s/id" % [EVENT_PARAMETER_PREFIX_FOR_PROPERTIES, parameter_name]
|
||||
var parameter_value_param = "%s/%s/value" % [EVENT_PARAMETER_PREFIX_FOR_PROPERTIES, parameter_name]
|
||||
var parameter_min_value_param = "%s/%s/min_value" % [EVENT_PARAMETER_PREFIX_FOR_PROPERTIES, parameter_name]
|
||||
var parameter_max_value_param = "%s/%s/max_value" % [EVENT_PARAMETER_PREFIX_FOR_PROPERTIES, parameter_name]
|
||||
var parameter_default_value_param = "%s/%s/default_value" % [EVENT_PARAMETER_PREFIX_FOR_PROPERTIES, parameter_name]
|
||||
|
||||
var existing_property_name_index = existing_property_ids.find(parameter_id_param)
|
||||
var are_properties_already_in_node = existing_property_name_index != -1
|
||||
|
||||
var parameter_id = param.get_id()
|
||||
|
||||
if are_properties_already_in_node:
|
||||
property_matching[existing_property_name_index] = existing_parameter_ids[existing_property_name_index] == parameter_id
|
||||
|
||||
if not are_properties_already_in_node or get_edited_object()[parameter_id_param] == null:
|
||||
get_edited_object()[parameter_id_param] = parameter_id
|
||||
if not are_properties_already_in_node or get_edited_object()[parameter_value_param] == null:
|
||||
get_edited_object()[parameter_value_param] = param.get_default_value()
|
||||
if not are_properties_already_in_node or get_edited_object()[parameter_min_value_param] == null:
|
||||
get_edited_object()[parameter_min_value_param] = param.get_minimum()
|
||||
if not are_properties_already_in_node or get_edited_object()[parameter_max_value_param] == null:
|
||||
get_edited_object()[parameter_max_value_param] = param.get_maximum()
|
||||
if not are_properties_already_in_node or get_edited_object()[parameter_default_value_param] == null:
|
||||
get_edited_object()[parameter_default_value_param] = param.get_default_value()
|
||||
|
||||
for i in property_matching.size():
|
||||
if not property_matching[i]:
|
||||
get_edited_object().tool_remove_parameter(existing_parameter_ids[i])
|
||||
pass
|
||||
|
||||
get_edited_object().notify_property_list_changed()
|
|
@ -0,0 +1,7 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://cowfthogh1n7i"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cujo3xq0erren" path="res://addons/fmod/tool/property_editors/FmodPathEditorProperty.tscn" id="1_xvpec"]
|
||||
[ext_resource type="Script" path="res://addons/fmod/tool/property_editors/FmodEventEditorProperty.gd" id="2_nkhkm"]
|
||||
|
||||
[node name="FmodEventEditorProperty" instance=ExtResource("1_xvpec")]
|
||||
script = ExtResource("2_nkhkm")
|
|
@ -0,0 +1,10 @@
|
|||
@tool class_name FmodGuidAndPathPropertyEditorUi extends HBoxContainer
|
||||
|
||||
|
||||
func set_callables(window_callable: Callable, path_callable: Callable, guid_callable: Callable):
|
||||
%EventExplorerButton.pressed.connect(window_callable)
|
||||
%PathLineEdit.text_changed.connect(path_callable)
|
||||
%GuidLineEdit.text_changed.connect(guid_callable)
|
||||
|
||||
func set_icon(icon: Texture2D):
|
||||
%EventExplorerButton.icon = icon
|