diff --git a/godot-headers/godot/extension_api.json b/godot-headers/godot/extension_api.json index 90c91c1..bfa197a 100644 --- a/godot-headers/godot/extension_api.json +++ b/godot-headers/godot/extension_api.json @@ -24962,6 +24962,44 @@ } ] }, + { + "name": "fill_solid_region", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1152863744, + "arguments": [ + { + "name": "region", + "type": "Rect2i" + }, + { + "name": "solid", + "type": "bool", + "default_value": "true" + } + ] + }, + { + "name": "fill_weight_scale_region", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2793244083, + "arguments": [ + { + "name": "region", + "type": "Rect2i" + }, + { + "name": "weight_scale", + "type": "float", + "meta": "float" + } + ] + }, { "name": "clear", "is_const": false, @@ -42701,7 +42739,7 @@ "is_virtual": true, "arguments": [ { - "name": "button_pressed", + "name": "toggled_on", "type": "bool" } ] @@ -43007,7 +43045,7 @@ "name": "toggled", "arguments": [ { - "name": "button_pressed", + "name": "toggled_on", "type": "bool" } ] @@ -62436,15 +62474,41 @@ }, { "name": "get_text_for_symbol_lookup", - "is_const": false, + "is_const": true, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2841200299, + "hash": 201670096, + "hash_compatibility": [ + 2841200299 + ], "return_value": { "type": "String" } }, + { + "name": "get_text_with_cursor_char", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1391810591, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "line", + "type": "int", + "meta": "int32" + }, + { + "name": "column", + "type": "int", + "meta": "int32" + } + ] + }, { "name": "set_symbol_lookup_word_as_valid", "is_const": false, @@ -75082,6 +75146,17 @@ "type": "String" } }, + { + "name": "clipboard_get_image", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4190603485, + "return_value": { + "type": "Image" + } + }, { "name": "clipboard_has", "is_const": true, @@ -75093,6 +75168,17 @@ "type": "bool" } }, + { + "name": "clipboard_has_image", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 36873697, + "return_value": { + "type": "bool" + } + }, { "name": "clipboard_set_primary", "is_const": false, @@ -78282,6 +78368,26 @@ } ] }, + { + "name": "_get_export_option_warning", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "option", + "type": "String" + } + ] + }, { "name": "_get_export_features", "is_const": true, @@ -78312,6 +78418,142 @@ "type": "String" } }, + { + "name": "_supports_platform", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + } + ] + }, + { + "name": "_get_android_dependencies", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "PackedStringArray" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, + { + "name": "_get_android_dependencies_maven_repos", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "PackedStringArray" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, + { + "name": "_get_android_libraries", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "PackedStringArray" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, + { + "name": "_get_android_manifest_activity_element_contents", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, + { + "name": "_get_android_manifest_application_element_contents", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, + { + "name": "_get_android_manifest_element_contents", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "platform", + "type": "EditorExportPlatform" + }, + { + "name": "debug", + "type": "bool" + } + ] + }, { "name": "add_shared_object", "is_const": false, @@ -80427,6 +80669,31 @@ } ] }, + { + "name": "get_current_feature_profile", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 201670096, + "return_value": { + "type": "String" + } + }, + { + "name": "set_current_feature_profile", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 83702148, + "arguments": [ + { + "name": "profile_name", + "type": "String" + } + ] + }, { "name": "get_file_system_dock", "is_const": true, @@ -80659,6 +80926,14 @@ } ] }, + { + "name": "save_all_scenes", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3218959716 + }, { "name": "mark_scene_as_unsaved", "is_const": false, @@ -82086,6 +82361,22 @@ "is_vararg": false, "is_virtual": true }, + { + "name": "_get_unsaved_status", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + }, + "arguments": [ + { + "name": "for_scene", + "type": "String" + } + ] + }, { "name": "_save_external_data", "is_const": false, @@ -82781,6 +83072,17 @@ "type": "EditorDebuggerPlugin" } ] + }, + { + "name": "get_plugin_version", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 201670096, + "return_value": { + "type": "String" + } } ], "signals": [ @@ -90628,6 +90930,60 @@ "value": 4 } ] + }, + { + "name": "UnixPermissionFlags", + "is_bitfield": true, + "values": [ + { + "name": "UNIX_READ_OWNER", + "value": 256 + }, + { + "name": "UNIX_WRITE_OWNER", + "value": 128 + }, + { + "name": "UNIX_EXECUTE_OWNER", + "value": 64 + }, + { + "name": "UNIX_READ_GROUP", + "value": 32 + }, + { + "name": "UNIX_WRITE_GROUP", + "value": 16 + }, + { + "name": "UNIX_EXECUTE_GROUP", + "value": 8 + }, + { + "name": "UNIX_READ_OTHER", + "value": 4 + }, + { + "name": "UNIX_WRITE_OTHER", + "value": 2 + }, + { + "name": "UNIX_EXECUTE_OTHER", + "value": 1 + }, + { + "name": "UNIX_SET_USER_ID", + "value": 2048 + }, + { + "name": "UNIX_SET_GROUP_ID", + "value": 1024 + }, + { + "name": "UNIX_RESTRICTED_DELETE", + "value": 512 + } + ] } ], "methods": [ @@ -91369,6 +91725,120 @@ "type": "String" } ] + }, + { + "name": "get_unix_permissions", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 524341837, + "return_value": { + "type": "bitfield::FileAccess.UnixPermissionFlags" + }, + "arguments": [ + { + "name": "file", + "type": "String" + } + ] + }, + { + "name": "set_unix_permissions", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 846038644, + "return_value": { + "type": "enum::Error" + }, + "arguments": [ + { + "name": "file", + "type": "String" + }, + { + "name": "permissions", + "type": "bitfield::FileAccess.UnixPermissionFlags" + } + ] + }, + { + "name": "get_hidden_attribute", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 2323990056, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "file", + "type": "String" + } + ] + }, + { + "name": "set_hidden_attribute", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 2892558115, + "return_value": { + "type": "enum::Error" + }, + "arguments": [ + { + "name": "file", + "type": "String" + }, + { + "name": "hidden", + "type": "bool" + } + ] + }, + { + "name": "set_read_only_attribute", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 2892558115, + "return_value": { + "type": "enum::Error" + }, + "arguments": [ + { + "name": "file", + "type": "String" + }, + { + "name": "ro", + "type": "bool" + } + ] + }, + { + "name": "get_read_only_attribute", + "is_const": false, + "is_vararg": false, + "is_static": true, + "is_virtual": false, + "hash": 2323990056, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "file", + "type": "String" + } + ] } ], "properties": [ @@ -93249,6 +93719,14 @@ "meta": "int64" } } + ], + "properties": [ + { + "type": "typedarray::24/17:Font", + "name": "fallbacks", + "setter": "set_fallbacks", + "getter": "get_fallbacks" + } ] }, { @@ -95153,12 +95631,6 @@ "name": "opentype_feature_overrides", "setter": "set_opentype_feature_overrides", "getter": "get_opentype_feature_overrides" - }, - { - "type": "typedarray::24/17:Font", - "name": "fallbacks", - "setter": "set_fallbacks", - "getter": "get_fallbacks" } ] }, @@ -95339,12 +95811,6 @@ "setter": "set_base_font", "getter": "get_base_font" }, - { - "type": "typedarray::24/17:Font", - "name": "fallbacks", - "setter": "set_fallbacks", - "getter": "get_fallbacks" - }, { "type": "Dictionary", "name": "variation_opentype", @@ -96895,6 +97361,16 @@ } ] }, + { + "name": "_get_image_file_extension", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "String" + } + }, { "name": "_parse_texture_json", "is_const": false, @@ -97048,6 +97524,22 @@ } ] }, + { + "name": "_export_preserialize", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "enum::Error" + }, + "arguments": [ + { + "name": "state", + "type": "GLTFState" + } + ] + }, { "name": "_export_node", "is_const": false, @@ -99224,6 +99716,31 @@ } ] }, + { + "name": "get_copyright", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 201670096, + "return_value": { + "type": "String" + } + }, + { + "name": "set_copyright", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 83702148, + "arguments": [ + { + "name": "copyright", + "type": "String" + } + ] + }, { "name": "get_glb_data", "is_const": false, @@ -99511,6 +100028,31 @@ } ] }, + { + "name": "get_filename", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 201670096, + "return_value": { + "type": "String" + } + }, + { + "name": "set_filename", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 83702148, + "arguments": [ + { + "name": "filename", + "type": "String" + } + ] + }, { "name": "get_root_nodes", "is_const": false, @@ -99929,6 +100471,12 @@ "setter": "set_minor_version", "getter": "get_minor_version" }, + { + "type": "String", + "name": "copyright", + "setter": "set_copyright", + "getter": "get_copyright" + }, { "type": "PackedByteArray", "name": "glb_data", @@ -99989,6 +100537,12 @@ "setter": "set_base_path", "getter": "get_base_path" }, + { + "type": "String", + "name": "filename", + "setter": "set_filename", + "getter": "get_filename" + }, { "type": "PackedInt32Array", "name": "root_nodes", @@ -104017,6 +104571,35 @@ } ] }, + { + "name": "get_triangle_barycentric_coords", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1362048029, + "return_value": { + "type": "Vector3" + }, + "arguments": [ + { + "name": "point", + "type": "Vector3" + }, + { + "name": "a", + "type": "Vector3" + }, + { + "name": "b", + "type": "Vector3" + }, + { + "name": "c", + "type": "Vector3" + } + ] + }, { "name": "ray_intersects_triangle", "is_const": false, @@ -105783,7 +106366,7 @@ "hash": 3218959716 }, { - "name": "get_scroll_ofs", + "name": "get_scroll_offset", "is_const": true, "is_vararg": false, "is_static": false, @@ -105794,7 +106377,7 @@ } }, { - "name": "set_scroll_ofs", + "name": "set_scroll_offset", "is_const": false, "is_vararg": false, "is_static": false, @@ -106110,34 +106693,32 @@ } }, { - "name": "set_snap", + "name": "set_show_grid", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 1286410249, + "hash": 2586408642, "arguments": [ { - "name": "pixels", - "type": "int", - "meta": "int32" + "name": "enable", + "type": "bool" } ] }, { - "name": "get_snap", + "name": "is_showing_grid", "is_const": true, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 3905245786, + "hash": 36873697, "return_value": { - "type": "int", - "meta": "int32" + "type": "bool" } }, { - "name": "set_use_snap", + "name": "set_snapping_enabled", "is_const": false, "is_vararg": false, "is_static": false, @@ -106151,7 +106732,7 @@ ] }, { - "name": "is_using_snap", + "name": "is_snapping_enabled", "is_const": true, "is_vararg": false, "is_static": false, @@ -106161,6 +106742,33 @@ "type": "bool" } }, + { + "name": "set_snapping_distance", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1286410249, + "arguments": [ + { + "name": "pixels", + "type": "int", + "meta": "int32" + } + ] + }, + { + "name": "get_snapping_distance", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "int32" + } + }, { "name": "set_connection_lines_curvature", "is_const": false, @@ -106368,7 +106976,7 @@ } }, { - "name": "get_zoom_hbox", + "name": "get_menu_hbox", "is_const": false, "is_vararg": false, "is_static": false, @@ -106569,20 +107177,26 @@ { "type": "Vector2", "name": "scroll_offset", - "setter": "set_scroll_ofs", - "getter": "get_scroll_ofs" + "setter": "set_scroll_offset", + "getter": "get_scroll_offset" }, { - "type": "int", - "name": "snap_distance", - "setter": "set_snap", - "getter": "get_snap" + "type": "bool", + "name": "show_grid", + "setter": "set_show_grid", + "getter": "is_showing_grid" }, { "type": "bool", - "name": "use_snap", - "setter": "set_use_snap", - "getter": "is_using_snap" + "name": "snapping_enabled", + "setter": "set_snapping_enabled", + "getter": "is_snapping_enabled" + }, + { + "type": "int", + "name": "snapping_distance", + "setter": "set_snapping_distance", + "getter": "get_snapping_distance" }, { "type": "int", @@ -107133,31 +107747,6 @@ "type": "Vector2" } }, - { - "name": "set_comment", - "is_const": false, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 2586408642, - "arguments": [ - { - "name": "comment", - "type": "bool" - } - ] - }, - { - "name": "is_comment", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 36873697, - "return_value": { - "type": "bool" - } - }, { "name": "set_resizable", "is_const": false, @@ -107610,12 +108199,6 @@ "setter": "set_selected", "getter": "is_selected" }, - { - "type": "bool", - "name": "comment", - "setter": "set_comment", - "getter": "is_comment" - }, { "type": "int", "name": "overlay", @@ -111808,6 +112391,23 @@ } ] }, + { + "name": "load_dds_from_buffer", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 680677267, + "return_value": { + "type": "enum::Error" + }, + "arguments": [ + { + "name": "buffer", + "type": "PackedByteArray" + } + ] + }, { "name": "load_svg_from_buffer", "is_const": false, @@ -113304,6 +113904,24 @@ } ] }, + { + "name": "get_joy_info", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3485342025, + "return_value": { + "type": "Dictionary" + }, + "arguments": [ + { + "name": "device", + "type": "int", + "meta": "int32" + } + ] + }, { "name": "should_ignore_device", "is_const": true, @@ -124482,6 +125100,31 @@ "type": "bool" } }, + { + "name": "set_drag_and_drop_selection_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2586408642, + "arguments": [ + { + "name": "enable", + "type": "bool" + } + ] + }, + { + "name": "is_drag_and_drop_selection_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 36873697, + "return_value": { + "type": "bool" + } + }, { "name": "set_right_icon", "is_const": false, @@ -124684,6 +125327,12 @@ "setter": "set_deselect_on_focus_loss_enabled", "getter": "is_deselect_on_focus_loss_enabled" }, + { + "type": "bool", + "name": "drag_and_drop_selection_enabled", + "setter": "set_drag_and_drop_selection_enabled", + "getter": "is_drag_and_drop_selection_enabled" + }, { "type": "Texture", "name": "right_icon", @@ -135055,6 +135704,14 @@ "type": "Mesh" } ] + }, + { + "name": "clear", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3218959716 } ], "properties": [ @@ -137113,6 +137770,14 @@ "type": "float", "meta": "float" } + }, + { + "name": "clear", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3218959716 } ], "properties": [ @@ -138216,6 +138881,41 @@ "type": "RID" } }, + { + "name": "region_set_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1265174801, + "arguments": [ + { + "name": "region", + "type": "RID" + }, + { + "name": "enabled", + "type": "bool" + } + ] + }, + { + "name": "region_get_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4155700596, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "region", + "type": "RID" + } + ] + }, { "name": "region_set_use_edge_connections", "is_const": false, @@ -138599,6 +139299,41 @@ } ] }, + { + "name": "link_set_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1265174801, + "arguments": [ + { + "name": "link", + "type": "RID" + }, + { + "name": "enabled", + "type": "bool" + } + ] + }, + { + "name": "link_get_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4155700596, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "link", + "type": "RID" + } + ] + }, { "name": "link_set_bidirectional", "is_const": false, @@ -140056,6 +140791,41 @@ "type": "RID" } }, + { + "name": "region_set_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1265174801, + "arguments": [ + { + "name": "region", + "type": "RID" + }, + { + "name": "enabled", + "type": "bool" + } + ] + }, + { + "name": "region_get_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4155700596, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "region", + "type": "RID" + } + ] + }, { "name": "region_set_use_edge_connections", "is_const": false, @@ -140457,6 +141227,41 @@ } ] }, + { + "name": "link_set_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1265174801, + "arguments": [ + { + "name": "link", + "type": "RID" + }, + { + "name": "enabled", + "type": "bool" + } + ] + }, + { + "name": "link_get_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4155700596, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "link", + "type": "RID" + } + ] + }, { "name": "link_set_bidirectional", "is_const": false, @@ -148686,366 +149491,582 @@ ] }, { - "name": "OpenXRAction", + "name": "OpenXRAPIExtension", "is_refcounted": true, "is_instantiable": true, - "inherits": "Resource", + "inherits": "RefCounted", "api_type": "core", - "enums": [ - { - "name": "ActionType", - "is_bitfield": false, - "values": [ - { - "name": "OPENXR_ACTION_BOOL", - "value": 0 - }, - { - "name": "OPENXR_ACTION_FLOAT", - "value": 1 - }, - { - "name": "OPENXR_ACTION_VECTOR2", - "value": 2 - }, - { - "name": "OPENXR_ACTION_POSE", - "value": 3 - } - ] - } - ], "methods": [ { - "name": "set_localized_name", + "name": "get_instance", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 83702148, - "arguments": [ - { - "name": "localized_name", - "type": "String" - } - ] - }, - { - "name": "get_localized_name", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 201670096, + "hash": 2455072627, "return_value": { - "type": "String" + "type": "int", + "meta": "uint64" } }, { - "name": "set_action_type", + "name": "get_system_id", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 1675238366, - "arguments": [ - { - "name": "action_type", - "type": "enum::OpenXRAction.ActionType" - } - ] - }, - { - "name": "get_action_type", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 3536542431, + "hash": 2455072627, "return_value": { - "type": "enum::OpenXRAction.ActionType" + "type": "int", + "meta": "uint64" } }, { - "name": "set_toplevel_paths", + "name": "get_session", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 4015028928, - "arguments": [ - { - "name": "toplevel_paths", - "type": "PackedStringArray" - } - ] - }, - { - "name": "get_toplevel_paths", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 1139954409, + "hash": 2455072627, "return_value": { - "type": "PackedStringArray" + "type": "int", + "meta": "uint64" } - } - ], - "properties": [ - { - "type": "String", - "name": "localized_name", - "setter": "set_localized_name", - "getter": "get_localized_name" }, { - "type": "int", - "name": "action_type", - "setter": "set_action_type", - "getter": "get_action_type" - }, - { - "type": "PackedStringArray", - "name": "toplevel_paths", - "setter": "set_toplevel_paths", - "getter": "get_toplevel_paths" - } - ] - }, - { - "name": "OpenXRActionMap", - "is_refcounted": true, - "is_instantiable": true, - "inherits": "Resource", - "api_type": "core", - "methods": [ - { - "name": "set_action_sets", + "name": "transform_from_pose", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 381264803, + "hash": 3255299855, + "return_value": { + "type": "Transform3D" + }, "arguments": [ { - "name": "action_sets", - "type": "Array" + "name": "pose", + "type": "const void*" } ] }, { - "name": "get_action_sets", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 3995934104, - "return_value": { - "type": "Array" - } - }, - { - "name": "get_action_set_count", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 3905245786, - "return_value": { - "type": "int", - "meta": "int32" - } - }, - { - "name": "find_action_set", - "is_const": true, + "name": "xr_result", + "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 1888809267, + "hash": 3886436197, "return_value": { - "type": "OpenXRActionSet" + "type": "bool" }, "arguments": [ { - "name": "name", + "name": "result", + "type": "int", + "meta": "uint64" + }, + { + "name": "format", "type": "String" + }, + { + "name": "args", + "type": "Array" } ] }, { - "name": "get_action_set", - "is_const": true, + "name": "openxr_is_enabled", + "is_const": false, "is_vararg": false, - "is_static": false, + "is_static": true, "is_virtual": false, - "hash": 1789580336, + "hash": 2703660260, "return_value": { - "type": "OpenXRActionSet" + "type": "bool" }, "arguments": [ { - "name": "idx", - "type": "int", - "meta": "int32" + "name": "check_run_in_editor", + "type": "bool" } ] }, { - "name": "add_action_set", + "name": "get_instance_proc_addr", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2093310581, + "hash": 1597066294, + "return_value": { + "type": "int", + "meta": "uint64" + }, "arguments": [ { - "name": "action_set", - "type": "OpenXRActionSet" + "name": "name", + "type": "String" } ] }, { - "name": "remove_action_set", + "name": "get_error_string", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2093310581, + "hash": 990163283, + "return_value": { + "type": "String" + }, "arguments": [ { - "name": "action_set", - "type": "OpenXRActionSet" + "name": "result", + "type": "int", + "meta": "uint64" } ] }, { - "name": "set_interaction_profiles", + "name": "get_swapchain_format_name", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 381264803, + "hash": 990163283, + "return_value": { + "type": "String" + }, "arguments": [ { - "name": "interaction_profiles", - "type": "Array" + "name": "swapchain_format", + "type": "int", + "meta": "int64" } ] }, { - "name": "get_interaction_profiles", - "is_const": true, + "name": "is_initialized", + "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 3995934104, + "hash": 2240911060, "return_value": { - "type": "Array" + "type": "bool" } }, { - "name": "get_interaction_profile_count", - "is_const": true, + "name": "is_running", + "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 3905245786, + "hash": 2240911060, "return_value": { - "type": "int", - "meta": "int32" + "type": "bool" } }, { - "name": "find_interaction_profile", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 3095875538, - "return_value": { - "type": "OpenXRInteractionProfile" - }, - "arguments": [ - { - "name": "name", - "type": "String" - } - ] - }, - { - "name": "get_interaction_profile", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 2546151210, - "return_value": { - "type": "OpenXRInteractionProfile" - }, - "arguments": [ - { - "name": "idx", - "type": "int", - "meta": "int32" - } - ] - }, - { - "name": "add_interaction_profile", + "name": "get_play_space", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2697953512, - "arguments": [ - { - "name": "interaction_profile", - "type": "OpenXRInteractionProfile" - } - ] + "hash": 2455072627, + "return_value": { + "type": "int", + "meta": "uint64" + } }, { - "name": "remove_interaction_profile", + "name": "get_next_frame_time", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2697953512, - "arguments": [ - { - "name": "interaction_profile", - "type": "OpenXRInteractionProfile" - } - ] + "hash": 2455072627, + "return_value": { + "type": "int", + "meta": "int64" + } }, { - "name": "create_default_action_sets", + "name": "can_render", "is_const": false, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 3218959716 - } - ], - "properties": [ - { - "type": "OpenXRActionSet", - "name": "action_sets", - "setter": "set_action_sets", - "getter": "get_action_sets" - }, - { - "type": "OpenXRInteractionProfile", - "name": "interaction_profiles", - "setter": "set_interaction_profiles", - "getter": "get_interaction_profiles" + "hash": 2240911060, + "return_value": { + "type": "bool" + } } ] }, { - "name": "OpenXRActionSet", + "name": "OpenXRAction", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "Resource", + "api_type": "core", + "enums": [ + { + "name": "ActionType", + "is_bitfield": false, + "values": [ + { + "name": "OPENXR_ACTION_BOOL", + "value": 0 + }, + { + "name": "OPENXR_ACTION_FLOAT", + "value": 1 + }, + { + "name": "OPENXR_ACTION_VECTOR2", + "value": 2 + }, + { + "name": "OPENXR_ACTION_POSE", + "value": 3 + } + ] + } + ], + "methods": [ + { + "name": "set_localized_name", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 83702148, + "arguments": [ + { + "name": "localized_name", + "type": "String" + } + ] + }, + { + "name": "get_localized_name", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 201670096, + "return_value": { + "type": "String" + } + }, + { + "name": "set_action_type", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1675238366, + "arguments": [ + { + "name": "action_type", + "type": "enum::OpenXRAction.ActionType" + } + ] + }, + { + "name": "get_action_type", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3536542431, + "return_value": { + "type": "enum::OpenXRAction.ActionType" + } + }, + { + "name": "set_toplevel_paths", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4015028928, + "arguments": [ + { + "name": "toplevel_paths", + "type": "PackedStringArray" + } + ] + }, + { + "name": "get_toplevel_paths", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1139954409, + "return_value": { + "type": "PackedStringArray" + } + } + ], + "properties": [ + { + "type": "String", + "name": "localized_name", + "setter": "set_localized_name", + "getter": "get_localized_name" + }, + { + "type": "int", + "name": "action_type", + "setter": "set_action_type", + "getter": "get_action_type" + }, + { + "type": "PackedStringArray", + "name": "toplevel_paths", + "setter": "set_toplevel_paths", + "getter": "get_toplevel_paths" + } + ] + }, + { + "name": "OpenXRActionMap", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "Resource", + "api_type": "core", + "methods": [ + { + "name": "set_action_sets", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 381264803, + "arguments": [ + { + "name": "action_sets", + "type": "Array" + } + ] + }, + { + "name": "get_action_sets", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3995934104, + "return_value": { + "type": "Array" + } + }, + { + "name": "get_action_set_count", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "int32" + } + }, + { + "name": "find_action_set", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1888809267, + "return_value": { + "type": "OpenXRActionSet" + }, + "arguments": [ + { + "name": "name", + "type": "String" + } + ] + }, + { + "name": "get_action_set", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1789580336, + "return_value": { + "type": "OpenXRActionSet" + }, + "arguments": [ + { + "name": "idx", + "type": "int", + "meta": "int32" + } + ] + }, + { + "name": "add_action_set", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2093310581, + "arguments": [ + { + "name": "action_set", + "type": "OpenXRActionSet" + } + ] + }, + { + "name": "remove_action_set", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2093310581, + "arguments": [ + { + "name": "action_set", + "type": "OpenXRActionSet" + } + ] + }, + { + "name": "set_interaction_profiles", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 381264803, + "arguments": [ + { + "name": "interaction_profiles", + "type": "Array" + } + ] + }, + { + "name": "get_interaction_profiles", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3995934104, + "return_value": { + "type": "Array" + } + }, + { + "name": "get_interaction_profile_count", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "int32" + } + }, + { + "name": "find_interaction_profile", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3095875538, + "return_value": { + "type": "OpenXRInteractionProfile" + }, + "arguments": [ + { + "name": "name", + "type": "String" + } + ] + }, + { + "name": "get_interaction_profile", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2546151210, + "return_value": { + "type": "OpenXRInteractionProfile" + }, + "arguments": [ + { + "name": "idx", + "type": "int", + "meta": "int32" + } + ] + }, + { + "name": "add_interaction_profile", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2697953512, + "arguments": [ + { + "name": "interaction_profile", + "type": "OpenXRInteractionProfile" + } + ] + }, + { + "name": "remove_interaction_profile", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2697953512, + "arguments": [ + { + "name": "interaction_profile", + "type": "OpenXRInteractionProfile" + } + ] + }, + { + "name": "create_default_action_sets", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3218959716 + } + ], + "properties": [ + { + "type": "OpenXRActionSet", + "name": "action_sets", + "setter": "set_action_sets", + "getter": "get_action_sets" + }, + { + "type": "OpenXRInteractionProfile", + "name": "interaction_profiles", + "setter": "set_interaction_profiles", + "getter": "get_interaction_profiles" + } + ] + }, + { + "name": "OpenXRActionSet", "is_refcounted": true, "is_instantiable": true, "inherits": "Resource", @@ -149190,6 +150211,254 @@ } ] }, + { + "name": "OpenXRExtensionWrapperExtension", + "is_refcounted": false, + "is_instantiable": true, + "inherits": "Object", + "api_type": "core", + "methods": [ + { + "name": "_get_requested_extensions", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "Dictionary" + } + }, + { + "name": "_set_system_properties_and_get_next_pointer", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "int", + "meta": "uint64" + }, + "arguments": [ + { + "name": "next_pointer", + "type": "void*" + } + ] + }, + { + "name": "_set_instance_create_info_and_get_next_pointer", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "int", + "meta": "uint64" + }, + "arguments": [ + { + "name": "next_pointer", + "type": "void*" + } + ] + }, + { + "name": "_set_session_create_and_get_next_pointer", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "int", + "meta": "uint64" + }, + "arguments": [ + { + "name": "next_pointer", + "type": "void*" + } + ] + }, + { + "name": "_set_swapchain_create_info_and_get_next_pointer", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "int", + "meta": "uint64" + }, + "arguments": [ + { + "name": "next_pointer", + "type": "void*" + } + ] + }, + { + "name": "_on_register_metadata", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_before_instance_created", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_instance_created", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "instance", + "type": "int", + "meta": "uint64" + } + ] + }, + { + "name": "_on_instance_destroyed", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_session_created", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "session", + "type": "int", + "meta": "uint64" + } + ] + }, + { + "name": "_on_process", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_pre_render", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_session_destroyed", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_idle", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_ready", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_synchronized", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_visible", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_focused", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_stopping", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_loss_pending", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_state_exiting", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true + }, + { + "name": "_on_event_polled", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "event", + "type": "const void*" + } + ] + }, + { + "name": "get_openxr_api", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1637791613, + "return_value": { + "type": "OpenXRAPIExtension" + } + }, + { + "name": "register_extension_wrapper", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3218959716 + } + ] + }, { "name": "OpenXRHand", "is_refcounted": false, @@ -177983,6 +179252,11 @@ } ] } + ], + "signals": [ + { + "name": "settings_changed" + } ] }, { @@ -182953,6 +184227,18 @@ "type": "Vector3" } }, + { + "name": "get_collision_face_index", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "int32" + } + }, { "name": "add_exception_rid", "is_const": false, @@ -184649,6 +185935,787 @@ } ] }, + { + "name": "RenderSceneBuffers", + "is_refcounted": true, + "is_instantiable": false, + "inherits": "RefCounted", + "api_type": "core", + "methods": [ + { + "name": "configure", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3072623270, + "arguments": [ + { + "name": "config", + "type": "RenderSceneBuffersConfiguration" + } + ] + } + ] + }, + { + "name": "RenderSceneBuffersConfiguration", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "RefCounted", + "api_type": "core", + "methods": [ + { + "name": "get_render_target", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2944877500, + "return_value": { + "type": "RID" + } + }, + { + "name": "set_render_target", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2722037293, + "arguments": [ + { + "name": "render_target", + "type": "RID" + } + ] + }, + { + "name": "get_internal_size", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3690982128, + "return_value": { + "type": "Vector2i" + } + }, + { + "name": "set_internal_size", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1130785943, + "arguments": [ + { + "name": "internal_size", + "type": "Vector2i" + } + ] + }, + { + "name": "get_target_size", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3690982128, + "return_value": { + "type": "Vector2i" + } + }, + { + "name": "set_target_size", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1130785943, + "arguments": [ + { + "name": "target_size", + "type": "Vector2i" + } + ] + }, + { + "name": "get_view_count", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "uint32" + } + }, + { + "name": "set_view_count", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1286410249, + "arguments": [ + { + "name": "view_count", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "get_scaling_3d_mode", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 976778074, + "return_value": { + "type": "enum::RenderingServer.ViewportScaling3DMode" + } + }, + { + "name": "set_scaling_3d_mode", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 447477857, + "arguments": [ + { + "name": "scaling_3d_mode", + "type": "enum::RenderingServer.ViewportScaling3DMode" + } + ] + }, + { + "name": "get_msaa_3d", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3109158617, + "return_value": { + "type": "enum::RenderingServer.ViewportMSAA" + } + }, + { + "name": "set_msaa_3d", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3952630748, + "arguments": [ + { + "name": "msaa_3d", + "type": "enum::RenderingServer.ViewportMSAA" + } + ] + }, + { + "name": "get_screen_space_aa", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 641513172, + "return_value": { + "type": "enum::RenderingServer.ViewportScreenSpaceAA" + } + }, + { + "name": "set_screen_space_aa", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 139543108, + "arguments": [ + { + "name": "screen_space_aa", + "type": "enum::RenderingServer.ViewportScreenSpaceAA" + } + ] + }, + { + "name": "get_fsr_sharpness", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1740695150, + "return_value": { + "type": "float", + "meta": "float" + } + }, + { + "name": "set_fsr_sharpness", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 373806689, + "arguments": [ + { + "name": "fsr_sharpness", + "type": "float", + "meta": "float" + } + ] + }, + { + "name": "get_texture_mipmap_bias", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1740695150, + "return_value": { + "type": "float", + "meta": "float" + } + }, + { + "name": "set_texture_mipmap_bias", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 373806689, + "arguments": [ + { + "name": "texture_mipmap_bias", + "type": "float", + "meta": "float" + } + ] + } + ], + "properties": [ + { + "type": "RID", + "name": "render_target", + "setter": "set_render_target", + "getter": "get_render_target" + }, + { + "type": "Vector2i", + "name": "internal_size", + "setter": "set_internal_size", + "getter": "get_internal_size" + }, + { + "type": "Vector2i", + "name": "target_size", + "setter": "set_target_size", + "getter": "get_target_size" + }, + { + "type": "int", + "name": "view_count", + "setter": "set_view_count", + "getter": "get_view_count" + }, + { + "type": "int", + "name": "scaling_3d_mode", + "setter": "set_scaling_3d_mode", + "getter": "get_scaling_3d_mode" + }, + { + "type": "int", + "name": "msaa_3d", + "setter": "set_msaa_3d", + "getter": "get_msaa_3d" + }, + { + "type": "int", + "name": "screen_space_aa", + "setter": "set_screen_space_aa", + "getter": "get_screen_space_aa" + }, + { + "type": "bool", + "name": "fsr_sharpness", + "setter": "set_fsr_sharpness", + "getter": "get_fsr_sharpness" + }, + { + "type": "bool", + "name": "texture_mipmap_bias", + "setter": "set_texture_mipmap_bias", + "getter": "get_texture_mipmap_bias" + } + ] + }, + { + "name": "RenderSceneBuffersExtension", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "RenderSceneBuffers", + "api_type": "core", + "methods": [ + { + "name": "_configure", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "config", + "type": "RenderSceneBuffersConfiguration" + } + ] + }, + { + "name": "_set_fsr_sharpness", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "fsr_sharpness", + "type": "float", + "meta": "float" + } + ] + }, + { + "name": "_set_texture_mipmap_bias", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "texture_mipmap_bias", + "type": "float", + "meta": "float" + } + ] + }, + { + "name": "_set_use_debanding", + "is_const": false, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "arguments": [ + { + "name": "use_debanding", + "type": "bool" + } + ] + } + ] + }, + { + "name": "RenderSceneBuffersRD", + "is_refcounted": true, + "is_instantiable": false, + "inherits": "RenderSceneBuffers", + "api_type": "core", + "methods": [ + { + "name": "has_texture", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 471820014, + "return_value": { + "type": "bool" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + } + ] + }, + { + "name": "create_texture", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3559915770, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + }, + { + "name": "data_format", + "type": "enum::RenderingDevice.DataFormat" + }, + { + "name": "usage_bits", + "type": "int", + "meta": "uint32" + }, + { + "name": "texture_samples", + "type": "enum::RenderingDevice.TextureSamples" + }, + { + "name": "size", + "type": "Vector2i" + }, + { + "name": "layers", + "type": "int", + "meta": "uint32" + }, + { + "name": "mipmaps", + "type": "int", + "meta": "uint32" + }, + { + "name": "unique", + "type": "bool" + } + ] + }, + { + "name": "create_texture_from_format", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3344669382, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + }, + { + "name": "format", + "type": "RDTextureFormat" + }, + { + "name": "view", + "type": "RDTextureView" + }, + { + "name": "unique", + "type": "bool" + } + ] + }, + { + "name": "create_texture_view", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 283055834, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + }, + { + "name": "view_name", + "type": "StringName" + }, + { + "name": "view", + "type": "RDTextureView" + } + ] + }, + { + "name": "get_texture", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 750006389, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + } + ] + }, + { + "name": "get_texture_format", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 371461758, + "return_value": { + "type": "RDTextureFormat" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + } + ] + }, + { + "name": "get_texture_slice", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 588440706, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + }, + { + "name": "layer", + "type": "int", + "meta": "uint32" + }, + { + "name": "mipmap", + "type": "int", + "meta": "uint32" + }, + { + "name": "layers", + "type": "int", + "meta": "uint32" + }, + { + "name": "mipmaps", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "get_texture_slice_size", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2617625368, + "return_value": { + "type": "Vector2i" + }, + "arguments": [ + { + "name": "context", + "type": "StringName" + }, + { + "name": "name", + "type": "StringName" + }, + { + "name": "mipmap", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "clear_context", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3304788590, + "arguments": [ + { + "name": "context", + "type": "StringName" + } + ] + }, + { + "name": "get_color_texture", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 529393457, + "return_value": { + "type": "RID" + } + }, + { + "name": "get_color_layer", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 937000113, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "get_depth_texture", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 529393457, + "return_value": { + "type": "RID" + } + }, + { + "name": "get_depth_layer", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 937000113, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "get_velocity_texture", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 529393457, + "return_value": { + "type": "RID" + } + }, + { + "name": "get_velocity_layer", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 937000113, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "uint32" + } + ] + }, + { + "name": "get_render_target", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2944877500, + "return_value": { + "type": "RID" + } + }, + { + "name": "get_view_count", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3905245786, + "return_value": { + "type": "int", + "meta": "uint32" + } + }, + { + "name": "get_internal_size", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3690982128, + "return_value": { + "type": "Vector2i" + } + }, + { + "name": "get_use_taa", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 36873697, + "return_value": { + "type": "bool" + } + } + ] + }, { "name": "RenderingDevice", "is_refcounted": false, @@ -185646,27 +187713,27 @@ }, { "name": "BARRIER_MASK_FRAGMENT", - "value": 2 + "value": 8 }, { "name": "BARRIER_MASK_COMPUTE", - "value": 4 + "value": 2 }, { "name": "BARRIER_MASK_TRANSFER", - "value": 8 + "value": 4 }, { "name": "BARRIER_MASK_RASTER", - "value": 3 + "value": 9 }, { "name": "BARRIER_MASK_ALL_BARRIERS", - "value": 15 + "value": 32767 }, { "name": "BARRIER_MASK_NO_BARRIER", - "value": 16 + "value": 32768 } ] }, @@ -186836,7 +188903,7 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -186971,7 +189038,7 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -187017,7 +189084,7 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -187043,7 +189110,24 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" + } + ] + }, + { + "name": "texture_get_format", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1374471690, + "return_value": { + "type": "RDTextureFormat" + }, + "arguments": [ + { + "name": "texture", + "type": "RID" } ] }, @@ -187532,7 +189616,10 @@ "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 3049171473, + "hash": 2078349841, + "hash_compatibility": [ + 3049171473 + ], "return_value": { "type": "RID" }, @@ -187540,9 +189627,25 @@ { "name": "binary_data", "type": "PackedByteArray" + }, + { + "name": "placeholder_rid", + "type": "RID", + "default_value": "RID()" } ] }, + { + "name": "shader_create_placeholder", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 529393457, + "return_value": { + "type": "RID" + } + }, { "name": "shader_get_vertex_input_attribute_mask", "is_const": false, @@ -187714,7 +189817,7 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -187746,7 +189849,7 @@ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -188326,12 +190429,12 @@ "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 4218573204, + "hash": 3920951950, "arguments": [ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -188472,12 +190575,12 @@ "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 4218573204, + "hash": 3920951950, "arguments": [ { "name": "post_barrier", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -188641,17 +190744,17 @@ "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 4030085481, + "hash": 3718155691, "arguments": [ { "name": "from", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" }, { "name": "to", "type": "bitfield::RenderingDevice.BarrierMask", - "default_value": "15" + "default_value": "32767" } ] }, @@ -191345,6 +193448,23 @@ } ] }, + { + "name": "texture_get_format", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1932918979, + "return_value": { + "type": "enum::Image.Format" + }, + "arguments": [ + { + "name": "texture", + "type": "RID" + } + ] + }, { "name": "texture_set_force_redraw_if_visible", "is_const": false, @@ -191363,6 +193483,28 @@ } ] }, + { + "name": "texture_rd_create", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 3291180269, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "rd_texture", + "type": "RID" + }, + { + "name": "layer_type", + "type": "enum::RenderingServer.TextureLayeredType", + "default_value": "0" + } + ] + }, { "name": "texture_get_rd_texture", "is_const": true, @@ -195898,6 +198040,24 @@ } ] }, + { + "name": "viewport_set_use_hdr_2d", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1265174801, + "arguments": [ + { + "name": "viewport", + "type": "RID" + }, + { + "name": "enabled", + "type": "bool" + } + ] + }, { "name": "viewport_set_screen_space_aa", "is_const": false, @@ -200248,6 +202408,20 @@ "return_value": { "type": "RenderingDevice" } + }, + { + "name": "call_on_render_thread", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1611583062, + "arguments": [ + { + "name": "callable", + "type": "Callable" + } + ] } ], "signals": [ @@ -202959,6 +205133,31 @@ "type": "bool" } }, + { + "name": "set_drag_and_drop_selection_enabled", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2586408642, + "arguments": [ + { + "name": "enable", + "type": "bool" + } + ] + }, + { + "name": "is_drag_and_drop_selection_enabled", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 36873697, + "return_value": { + "type": "bool" + } + }, { "name": "get_selection_from", "is_const": true, @@ -203599,6 +205798,12 @@ "setter": "set_deselect_on_focus_loss_enabled", "getter": "is_deselect_on_focus_loss_enabled" }, + { + "type": "bool", + "name": "drag_and_drop_selection_enabled", + "setter": "set_drag_and_drop_selection_enabled", + "getter": "is_drag_and_drop_selection_enabled" + }, { "type": "int", "name": "visible_characters", @@ -223958,12 +226163,6 @@ "name": "oversampling", "setter": "set_oversampling", "getter": "get_oversampling" - }, - { - "type": "typedarray::24/17:Font", - "name": "fallbacks", - "setter": "set_fallbacks", - "getter": "get_fallbacks" } ] }, @@ -240761,6 +242960,55 @@ } ] }, + { + "name": "Texture2DArrayRD", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "TextureLayeredRD", + "api_type": "core" + }, + { + "name": "Texture2DRD", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "Texture2D", + "api_type": "core", + "methods": [ + { + "name": "set_texture_rd_rid", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2722037293, + "arguments": [ + { + "name": "texture_rd_rid", + "type": "RID" + } + ] + }, + { + "name": "get_texture_rd_rid", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2944877500, + "return_value": { + "type": "RID" + } + } + ], + "properties": [ + { + "type": "RID", + "name": "texture_rd_rid", + "setter": "set_texture_rd_rid", + "getter": "get_texture_rd_rid" + } + ] + }, { "name": "Texture3D", "is_refcounted": true, @@ -240913,6 +243161,48 @@ } ] }, + { + "name": "Texture3DRD", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "Texture3D", + "api_type": "core", + "methods": [ + { + "name": "set_texture_rd_rid", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2722037293, + "arguments": [ + { + "name": "texture_rd_rid", + "type": "RID" + } + ] + }, + { + "name": "get_texture_rd_rid", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2944877500, + "return_value": { + "type": "RID" + } + } + ], + "properties": [ + { + "type": "RID", + "name": "texture_rd_rid", + "setter": "set_texture_rd_rid", + "getter": "get_texture_rd_rid" + } + ] + }, { "name": "TextureButton", "is_refcounted": false, @@ -241270,6 +243560,20 @@ } ] }, + { + "name": "TextureCubemapArrayRD", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "TextureLayeredRD", + "api_type": "core" + }, + { + "name": "TextureCubemapRD", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "TextureLayeredRD", + "api_type": "core" + }, { "name": "TextureLayered", "is_refcounted": true, @@ -241467,6 +243771,48 @@ } ] }, + { + "name": "TextureLayeredRD", + "is_refcounted": true, + "is_instantiable": false, + "inherits": "TextureLayered", + "api_type": "core", + "methods": [ + { + "name": "set_texture_rd_rid", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2722037293, + "arguments": [ + { + "name": "texture_rd_rid", + "type": "RID" + } + ] + }, + { + "name": "get_texture_rd_rid", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2944877500, + "return_value": { + "type": "RID" + } + } + ], + "properties": [ + { + "type": "RID", + "name": "texture_rd_rid", + "setter": "set_texture_rd_rid", + "getter": "get_texture_rd_rid" + } + ] + }, { "name": "TextureProgressBar", "is_refcounted": false, @@ -245039,6 +247385,80 @@ } ] }, + { + "name": "set_layer_navigation_map", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4040184819, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "int32" + }, + { + "name": "map", + "type": "RID" + } + ] + }, + { + "name": "get_layer_navigation_map", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 495598643, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "int32" + } + ] + }, + { + "name": "set_navigation_map", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 4040184819, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "int32" + }, + { + "name": "map", + "type": "RID" + } + ] + }, + { + "name": "get_navigation_map", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 495598643, + "return_value": { + "type": "RID" + }, + "arguments": [ + { + "name": "layer", + "type": "int", + "meta": "int32" + } + ] + }, { "name": "set_collision_animatable", "is_const": false, @@ -245114,43 +247534,6 @@ "type": "enum::TileMap.VisibilityMode" } }, - { - "name": "set_navigation_map", - "is_const": false, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 4040184819, - "arguments": [ - { - "name": "layer", - "type": "int", - "meta": "int32" - }, - { - "name": "map", - "type": "RID" - } - ] - }, - { - "name": "get_navigation_map", - "is_const": true, - "is_vararg": false, - "is_static": false, - "is_virtual": false, - "hash": 495598643, - "return_value": { - "type": "RID" - }, - "arguments": [ - { - "name": "layer", - "type": "int", - "meta": "int32" - } - ] - }, { "name": "set_cell", "is_const": false, @@ -245608,11 +247991,14 @@ }, { "name": "get_used_rect", - "is_const": false, + "is_const": true, "is_vararg": false, "is_static": false, "is_virtual": false, - "hash": 2024035737, + "hash": 410525958, + "hash_compatibility": [ + 2024035737 + ], "return_value": { "type": "Rect2i" } @@ -257538,6 +259924,31 @@ "type": "bool" } }, + { + "name": "set_use_hdr_2d", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 2586408642, + "arguments": [ + { + "name": "enable", + "type": "bool" + } + ] + }, + { + "name": "is_using_hdr_2d", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 36873697, + "return_value": { + "type": "bool" + } + }, { "name": "set_msaa_2d", "is_const": false, @@ -258850,6 +261261,12 @@ "setter": "set_debug_draw", "getter": "get_debug_draw" }, + { + "type": "bool", + "name": "use_hdr_2d", + "setter": "set_use_hdr_2d", + "getter": "is_using_hdr_2d" + }, { "type": "int", "name": "scaling_3d_mode", @@ -260206,6 +262623,24 @@ } ], "methods": [ + { + "name": "get_default_input_port", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 1894493699, + "return_value": { + "type": "int", + "meta": "int32" + }, + "arguments": [ + { + "name": "type", + "type": "enum::VisualShaderNode.PortType" + } + ] + }, { "name": "set_output_port_for_preview", "is_const": false, @@ -261523,6 +263958,23 @@ } ] }, + { + "name": "_get_default_input_port", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "int", + "meta": "int32" + }, + "arguments": [ + { + "name": "type", + "type": "enum::VisualShaderNode.PortType" + } + ] + }, { "name": "_get_output_port_count", "is_const": true, @@ -264197,6 +266649,13 @@ } ] }, + { + "name": "VisualShaderNodeRotationByAxis", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "VisualShaderNode", + "api_type": "core" + }, { "name": "VisualShaderNodeSDFRaymarch", "is_refcounted": true, @@ -264273,6 +266732,13 @@ } ] }, + { + "name": "VisualShaderNodeScreenNormalWorldSpace", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "VisualShaderNode", + "api_type": "core" + }, { "name": "VisualShaderNodeScreenUVToSDF", "is_refcounted": true, @@ -266652,6 +269118,13 @@ "inherits": "VisualShaderNodeVectorBase", "api_type": "core" }, + { + "name": "VisualShaderNodeWorldPositionFromDepth", + "is_refcounted": true, + "is_instantiable": true, + "inherits": "VisualShaderNode", + "api_type": "core" + }, { "name": "VoxelGI", "is_refcounted": false, @@ -269541,6 +272014,20 @@ } ] }, + { + "name": "ContentScaleStretch", + "is_bitfield": false, + "values": [ + { + "name": "CONTENT_SCALE_STRETCH_FRACTIONAL", + "value": 0 + }, + { + "name": "CONTENT_SCALE_STRETCH_INTEGER", + "value": 1 + } + ] + }, { "name": "LayoutDirection", "is_bitfield": false, @@ -269595,6 +272082,16 @@ } ], "methods": [ + { + "name": "_get_contents_minimum_size", + "is_const": true, + "is_static": false, + "is_vararg": false, + "is_virtual": true, + "return_value": { + "type": "Vector2" + } + }, { "name": "set_title", "is_const": false, @@ -270161,6 +272658,31 @@ "type": "enum::Window.ContentScaleAspect" } }, + { + "name": "set_content_scale_stretch", + "is_const": false, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 349355940, + "arguments": [ + { + "name": "stretch", + "type": "enum::Window.ContentScaleStretch" + } + ] + }, + { + "name": "get_content_scale_stretch", + "is_const": true, + "is_vararg": false, + "is_static": false, + "is_virtual": false, + "hash": 536857316, + "return_value": { + "type": "enum::Window.ContentScaleStretch" + } + }, { "name": "set_content_scale_factor", "is_const": false, @@ -271384,6 +273906,12 @@ "setter": "set_content_scale_aspect", "getter": "get_content_scale_aspect" }, + { + "type": "int", + "name": "content_scale_stretch", + "setter": "set_content_scale_stretch", + "getter": "get_content_scale_stretch" + }, { "type": "float", "name": "content_scale_factor", @@ -275056,6 +277584,10 @@ "name": "WorkerThreadPool", "type": "WorkerThreadPool" }, + { + "name": "EditorInterface", + "type": "EditorInterface" + }, { "name": "JavaClassWrapper", "type": "JavaClassWrapper" diff --git a/godot-headers/godot/gdextension_interface.h b/godot-headers/godot/gdextension_interface.h index c2680dd..dea6042 100644 --- a/godot-headers/godot/gdextension_interface.h +++ b/godot-headers/godot/gdextension_interface.h @@ -266,6 +266,8 @@ typedef void (*GDExtensionClassCallVirtual)(GDExtensionClassInstancePtr p_instan typedef GDExtensionObjectPtr (*GDExtensionClassCreateInstance)(void *p_userdata); typedef void (*GDExtensionClassFreeInstance)(void *p_userdata, GDExtensionClassInstancePtr p_instance); typedef GDExtensionClassCallVirtual (*GDExtensionClassGetVirtual)(void *p_userdata, GDExtensionConstStringNamePtr p_name); +typedef void *(*GDExtensionClassGetVirtuaCallData)(void *p_userdata, GDExtensionConstStringNamePtr p_name); +typedef void (*GDExtensionClassCallVirtualWithData)(GDExtensionClassInstancePtr p_instance, GDExtensionConstStringNamePtr p_name, void *p_userdata, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); typedef struct { GDExtensionBool is_virtual; @@ -283,6 +285,12 @@ typedef struct { GDExtensionClassCreateInstance create_instance_func; // (Default) constructor; mandatory. If the class is not instantiable, consider making it virtual or abstract. GDExtensionClassFreeInstance free_instance_func; // Destructor; mandatory. GDExtensionClassGetVirtual get_virtual_func; // Queries a virtual function by name and returns a callback to invoke the requested virtual function. + // Can be used instead of `get_virtual_func`. Returns user data (non-null) that will be passed back when calling `call_virtual_func`. + // Returning `null` from this function signals to Godot that the virutal function is not overriden. + // Data provided to this function must live until the GDExtensionInstance is freed, but should be deleted when `free_instance_func` is called. + GDExtensionClassGetVirtuaCallData get_virtual_call_data_func; + // Used to call virtual functions when `get_virtual_call_data_func` is not null. + GDExtensionClassCallVirtualWithData call_virtual_func; GDExtensionClassGetRID get_rid_func; void *class_userdata; // Per-class user data, later accessible in instance bindings. } GDExtensionClassCreationInfo; @@ -1526,6 +1534,25 @@ typedef void (*GDExtensionInterfaceStringOperatorPlusEqWcstr)(GDExtensionStringP */ typedef void (*GDExtensionInterfaceStringOperatorPlusEqC32str)(GDExtensionStringPtr p_self, const char32_t *p_b); +/** + * @name string_resize + * @since 4.2 + * + * Resizes the underlying string data to the given number of characters. + * + * Space needs to be allocated for the null terminating character ('\0') which + * also must be added manually, in order for all string functions to work correctly. + * + * Warning: This is an error-prone operation - only use it if there's no other + * efficient way to accomplish your goal. + * + * @param p_self A pointer to the String. + * @param p_resize The new length for the String. + * + * @return Error code signifying if the operation successful. + */ +typedef GDExtensionInt (*GDExtensionInterfaceStringResize)(GDExtensionStringPtr p_self, GDExtensionInt p_resize); + /* INTERFACE: XMLParser Utilities */ /** @@ -2110,13 +2137,13 @@ typedef GDExtensionScriptInstancePtr (*GDExtensionInterfaceScriptInstanceCreate) /** * @name object_get_script_instance * @since 4.2 - * + * * Get the script instance data attached to this object. - * - * @param p_object A pointer to the Object - * @param p_language A pointer to the language expected for this script instance - * - * @return A GDExtensionScriptInstanceDataPtr that was attached to this object as part of script_instance_create + * + * @param p_object A pointer to the Object. + * @param p_language A pointer to the language expected for this script instance. + * + * @return A GDExtensionScriptInstanceDataPtr that was attached to this object as part of script_instance_create. */ typedef GDExtensionScriptInstanceDataPtr (*GDExtensionInterfaceObjectGetScriptInstance)(GDExtensionConstObjectPtr p_object, GDExtensionObjectPtr p_language); @@ -2224,6 +2251,23 @@ typedef void (*GDExtensionInterfaceClassdbRegisterExtensionClassIntegerConstant) */ typedef void (*GDExtensionInterfaceClassdbRegisterExtensionClassProperty)(GDExtensionClassLibraryPtr p_library, GDExtensionConstStringNamePtr p_class_name, const GDExtensionPropertyInfo *p_info, GDExtensionConstStringNamePtr p_setter, GDExtensionConstStringNamePtr p_getter); +/** + * @name classdb_register_extension_class_property_indexed + * @since 4.2 + * + * Registers an indexed property on an extension class in the ClassDB. + * + * Provided struct can be safely freed once the function returns. + * + * @param p_library A pointer the library received by the GDExtension's entry point function. + * @param p_class_name A pointer to a StringName with the class name. + * @param p_info A pointer to a GDExtensionPropertyInfo struct. + * @param p_setter A pointer to a StringName with the name of the setter method. + * @param p_getter A pointer to a StringName with the name of the getter method. + * @param p_index The index to pass as the first argument to the getter and setter methods. + */ +typedef void (*GDExtensionInterfaceClassdbRegisterExtensionClassPropertyIndexed)(GDExtensionClassLibraryPtr p_library, GDExtensionConstStringNamePtr p_class_name, const GDExtensionPropertyInfo *p_info, GDExtensionConstStringNamePtr p_setter, GDExtensionConstStringNamePtr p_getter, GDExtensionInt p_index); + /** * @name classdb_register_extension_class_property_group * @since 4.1 diff --git a/src/cpp/dart_bindings.cpp b/src/cpp/dart_bindings.cpp index 082b4a9..87ed712 100644 --- a/src/cpp/dart_bindings.cpp +++ b/src/cpp/dart_bindings.cpp @@ -11,7 +11,6 @@ #include #include "dart_script_instance.h" -#include "dart_vtable_wrapper.h" #include "gde_dart_converters.h" #include "gde_wrapper.h" #include "godot_string_wrappers.h" @@ -144,8 +143,6 @@ GodotDartBindings::~GodotDartBindings() { } bool GodotDartBindings::initialize(const char *script_path, const char *package_config) { - dart_vtable_wrapper::init_virtual_thunks(); - DartDllConfig config; if (GDEWrapper::instance()->is_editor_hint()) { config.service_port = 6222; @@ -653,22 +650,23 @@ void GodotDartBindings::class_free_instance(void *p_userdata, GDExtensionClassIn }); } -GDExtensionClassCallVirtual GodotDartBindings::get_virtual_func(void *p_userdata, - GDExtensionConstStringNamePtr p_name) { +void *GodotDartBindings::get_virtual_call_data(void *p_userdata, GDExtensionConstStringNamePtr p_name) { GodotDartBindings *bindings = GodotDartBindings::instance(); if (!bindings) { // oooff return nullptr; } - GDExtensionClassCallVirtual func = nullptr; + void *user_data = nullptr; bindings->execute_on_dart_thread([&]() { DartBlockScope scope; Dart_Handle type = Dart_HandleFromPersistent(reinterpret_cast(p_userdata)); - DART_CHECK(typeInfo, Dart_GetField(type, Dart_NewStringFromCString("sTypeInfo")), "Error finding sTypeInfo on Type"); - DART_CHECK(vtable, Dart_GetField(typeInfo, Dart_NewStringFromCString("vTable")), "Error finding vTable from TypeInfo"); + DART_CHECK(typeInfo, Dart_GetField(type, Dart_NewStringFromCString("sTypeInfo")), + "Error finding sTypeInfo on Type"); + DART_CHECK(vtable, Dart_GetField(typeInfo, Dart_NewStringFromCString("vTable")), + "Error finding vTable from TypeInfo"); if (Dart_IsNull(vtable)) { return; } @@ -687,10 +685,27 @@ GDExtensionClassCallVirtual GodotDartBindings::get_virtual_func(void *p_userdata uint64_t address = 0; Dart_IntegerToUint64(dart_address, &address); - func = dart_vtable_wrapper::get_wrapped_virtual(reinterpret_cast(address)); + user_data = (void *)address; }); - return func; + return user_data; +} + +void GodotDartBindings::call_virtual_func(void* p_instance, GDExtensionConstStringNamePtr p_name, + void *p_userdata, const GDExtensionConstTypePtr *p_args, + GDExtensionTypePtr r_ret) { + GodotDartBindings *bindings = GodotDartBindings::instance(); + if (!bindings) { + // oooff + return; + } + + bindings->execute_on_dart_thread([&]() { + DartBlockScope scope; + + GDExtensionClassCallVirtual dart_call = (GDExtensionClassCallVirtual)p_userdata; + dart_call(p_instance, p_args, r_ret); + }); } /* Static Functions From Dart */ @@ -737,7 +752,9 @@ void bind_class(Dart_NativeArguments args) { info.class_userdata = (void *)Dart_NewPersistentHandle(type_arg); info.create_instance_func = GodotDartBindings::class_create_instance; info.free_instance_func = GodotDartBindings::class_free_instance; - info.get_virtual_func = GodotDartBindings::get_virtual_func; + //info.get_virtual_func = GodotDartBindings::get_virtual_func; + info.get_virtual_call_data_func = GodotDartBindings::get_virtual_call_data; + info.call_virtual_func = GodotDartBindings::call_virtual_func; gde_classdb_register_extension_class(GDEWrapper::instance()->get_library_ptr(), sn_name, sn_parent, &info); } diff --git a/src/cpp/dart_bindings.h b/src/cpp/dart_bindings.h index 553494a..b2b391c 100644 --- a/src/cpp/dart_bindings.h +++ b/src/cpp/dart_bindings.h @@ -65,7 +65,9 @@ class GodotDartBindings { static GDExtensionObjectPtr class_create_instance(void *p_userdata); static void class_free_instance(void *p_userdata, GDExtensionClassInstancePtr p_instance); - static GDExtensionClassCallVirtual get_virtual_func(void *p_userdata, GDExtensionConstStringNamePtr p_name); + static void *get_virtual_call_data(void *p_userdata, GDExtensionConstStringNamePtr p_name); + static void call_virtual_func(void* p_instance, GDExtensionConstStringNamePtr p_name, + void *p_userdata, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); private: static void bind_call(void *method_userdata, GDExtensionClassInstancePtr instance, diff --git a/src/cpp/dart_script_instance.cpp b/src/cpp/dart_script_instance.cpp index 28cce78..6314827 100644 --- a/src/cpp/dart_script_instance.cpp +++ b/src/cpp/dart_script_instance.cpp @@ -284,6 +284,7 @@ void DartScriptInstance::call(const GDStringName *p_method, const GDExtensionCon if (gde == nullptr) { return; } + // TODO: Figure out wth placeholders do if (_is_placeholder) { // Placeholders always return CALL_ERROR_INVALID_METHOD @@ -291,6 +292,8 @@ void DartScriptInstance::call(const GDStringName *p_method, const GDExtensionCon return; } + Dart_Handle *dart_args = nullptr; + gde->execute_on_dart_thread([&] { DartBlockScope scope; @@ -317,7 +320,6 @@ void DartScriptInstance::call(const GDStringName *p_method, const GDExtensionCon intptr_t arg_count = 0; Dart_ListLength(args_list, &arg_count); - Dart_Handle *dart_args = nullptr; if (arg_count != 0) { dart_args = new Dart_Handle[arg_count]; Dart_Handle args_address = Dart_NewInteger(reinterpret_cast(p_args)); @@ -367,13 +369,13 @@ void DartScriptInstance::call(const GDStringName *p_method, const GDExtensionCon gde_variant_new_copy(r_return, reinterpret_cast(variantDataPtr)); } } - - // TODO - these leak on error - if (dart_args != nullptr) { - delete[] dart_args; - } }); - // TODO + + if (dart_args != nullptr) { + delete[] dart_args; + } + + // TODO: How do we throw exceptions in Godot? r_error->error = GDEXTENSION_CALL_OK; } diff --git a/src/cpp/dart_vtable_wrapper.cpp b/src/cpp/dart_vtable_wrapper.cpp deleted file mode 100644 index ef12d7f..0000000 --- a/src/cpp/dart_vtable_wrapper.cpp +++ /dev/null @@ -1,81 +0,0 @@ -#include "dart_vtable_wrapper.h" - -#include - -#include "dart_bindings.h" - -// Because Godot needs pointers to functions to make virtual calls, and we need to wrap -// the calls to thunk to the main thread, we use template metaprogramming to -// generate as many wrapping functions as we can -// -// When Godot requests a virtual, we get the correct function pointer from Dart and store it -// in the next available index of the array, and return its corresponding generated wrapper -// function. When the wrapper function is called, it will get the correct Dart function and -// execute it on the Dart thread. -// -// To assist in lookup, we use the address of the correct Dart virtual function as a key -// to lookup the index. Godot caches these funciton pointers, but only per-object, and -// the functions provided from Dart are static per-class. - -// We are limited in the number of segments we can have in the .obj without special compiler -// flags, and this may be compiler specific (need to experiment) -#define MAX_VIRTUAL 512 - -namespace dart_vtable_wrapper { - -std::unordered_map thunk_map; -uint32_t next_available_thunk = 0; - -GDExtensionClassCallVirtual virtual_thunks[MAX_VIRTUAL] = {0}; -GDExtensionClassCallVirtual dart_virtual_func[MAX_VIRTUAL] = {0}; - -template -void virtual_thunk(GDExtensionClassInstancePtr p_instance, const GDExtensionConstTypePtr *p_args, - GDExtensionTypePtr r_ret) { - GodotDartBindings *bindings = GodotDartBindings::instance(); - if (!bindings) { - // oooff - return; - } - - GDExtensionClassCallVirtual dart_call = dart_virtual_func[i]; - if (dart_call == nullptr) { - return; - } - - bindings->execute_on_dart_thread([&]() { dart_call(p_instance, p_args, r_ret); }); -} - -template void _init_virtual_thunks() { - virtual_thunks[i] = &virtual_thunk; - _init_virtual_thunks(); -} - -template <> void _init_virtual_thunks<-1>() { -} - -void init_virtual_thunks() { - _init_virtual_thunks(); -} - -GDExtensionClassCallVirtual get_wrapped_virtual(GDExtensionClassCallVirtual unwrapped_virtual) { - const auto &indexItr = thunk_map.find(reinterpret_cast(unwrapped_virtual)); - if (indexItr != thunk_map.end()) { - uint32_t index = indexItr->second; - return virtual_thunks[index]; - } - - if (next_available_thunk >= MAX_VIRTUAL) { - return nullptr; - } - - GDExtensionClassCallVirtual thunk = virtual_thunks[next_available_thunk]; - dart_virtual_func[next_available_thunk] = unwrapped_virtual; - thunk_map[reinterpret_cast(unwrapped_virtual)] = next_available_thunk; - - next_available_thunk++; - - return thunk; -} - -} // namespace dart_vtable_wrapper diff --git a/src/cpp/dart_vtable_wrapper.h b/src/cpp/dart_vtable_wrapper.h deleted file mode 100644 index 4845eb0..0000000 --- a/src/cpp/dart_vtable_wrapper.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include - -namespace dart_vtable_wrapper { - -void init_virtual_thunks(); -GDExtensionClassCallVirtual get_wrapped_virtual(GDExtensionClassCallVirtual unwrapped_virtual); - -} // namespace dart_vtable_wrapper \ No newline at end of file diff --git a/src/cpp/godot_dart.cpp b/src/cpp/godot_dart.cpp index dcffd94..2c1a6b0 100644 --- a/src/cpp/godot_dart.cpp +++ b/src/cpp/godot_dart.cpp @@ -99,15 +99,4 @@ void GDE_EXPORT godot_dart_init(GDExtensionInterfaceGetProcAddress p_get_proc_ad r_initialization->minimum_initialization_level = GDEXTENSION_INITIALIZATION_SCENE; } -//GDExtensionBool GDE_EXPORT godot_dart_init(const GDExtensionInterface *p_interface, -// GDExtensionClassLibraryPtr p_library, -// GDExtensionInitialization *r_initialization) { -// GDEWrapper::create_instance(p_interface, p_library); -// -// r_initialization->initialize = initialize_level; -// r_initialization->deinitialize = deinitialize_level; -// r_initialization->minimum_initialization_level = GDEXTENSION_INITIALIZATION_SCENE; -// -// return true; -//} } diff --git a/src/cpp/godot_dart.vcxproj b/src/cpp/godot_dart.vcxproj index f0111d6..50e50da 100644 --- a/src/cpp/godot_dart.vcxproj +++ b/src/cpp/godot_dart.vcxproj @@ -21,7 +21,6 @@ - @@ -31,7 +30,6 @@ - diff --git a/src/cpp/godot_dart.vcxproj.filters b/src/cpp/godot_dart.vcxproj.filters index fa3968c..aa5882f 100644 --- a/src/cpp/godot_dart.vcxproj.filters +++ b/src/cpp/godot_dart.vcxproj.filters @@ -4,7 +4,6 @@ - @@ -13,7 +12,6 @@ - diff --git a/src/dart/godot_dart_build/.dart_tool/package_config.json b/src/dart/godot_dart_build/.dart_tool/package_config.json index 0fc7457..61000f5 100644 --- a/src/dart/godot_dart_build/.dart_tool/package_config.json +++ b/src/dart/godot_dart_build/.dart_tool/package_config.json @@ -242,7 +242,7 @@ "languageVersion": "2.18" } ], - "generated": "2023-07-22T01:31:46.664742Z", + "generated": "2023-08-16T01:22:04.221907Z", "generator": "pub", - "generatorVersion": "3.0.3" + "generatorVersion": "3.0.6" } diff --git a/src/dart/godot_dart_build/pubspec.yaml b/src/dart/godot_dart_build/pubspec.yaml index a7689c1..c88c839 100644 --- a/src/dart/godot_dart_build/pubspec.yaml +++ b/src/dart/godot_dart_build/pubspec.yaml @@ -1,6 +1,7 @@ name: godot_dart_build description: build_runner interface for simplifying binding to Godot version: 1.0.0 +publish_to: none environment: sdk: '>=2.18.2 <3.0.0' diff --git a/tools/binding_generator/lib/src/type_helpers.dart b/tools/binding_generator/lib/src/type_helpers.dart index 24d0d26..76565aa 100644 --- a/tools/binding_generator/lib/src/type_helpers.dart +++ b/tools/binding_generator/lib/src/type_helpers.dart @@ -147,6 +147,7 @@ String escapeName(String name) { 'var': 'variant', 'final': 'finalVal', 'args': 'argsParam', + 'instance': 'instanceParam', }; return map[name] ?? name;