diff --git a/.gitignore b/.gitignore index d21af46..d8a92a5 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ include/godot.h include/godot *.os *.so +*.obj \ No newline at end of file diff --git a/binding_generator/src/main.rs b/binding_generator/src/main.rs index 3f93e7c..1af7aaa 100644 --- a/binding_generator/src/main.rs +++ b/binding_generator/src/main.rs @@ -125,6 +125,15 @@ fn generate_class_header(used_classes: &HashSet<&String>, class: &GodotClass) -> contents = contents + "#define "; contents = contents + strip_name(&class.name).to_string().to_uppercase().as_str() + "_H\n\n"; + + contents = contents + "#if defined(_WIN32) && defined(_GD_CPP_BINDING_IMPL)\n"; + contents = contents + "# define GD_CPP_BINDING_API __declspec(dllexport)\n"; + contents = contents + "#elif defined(_WIN32)\n"; + contents = contents + "# define GD_CPP_BINDING_API __declspec(dllimport)\n"; + contents = contents + "#else\n"; + contents = contents + "# define GD_CPP_BINDING_API\n"; + contents = contents + "#endif\n\n"; + contents = contents + "\n#include \"core/CoreTypes.hpp\"\n"; @@ -154,7 +163,7 @@ fn generate_class_header(used_classes: &HashSet<&String>, class: &GodotClass) -> name }; - contents = contents + "class " + strip_name(&class.name); + contents = contents + "class GD_CPP_BINDING_API " + strip_name(&class.name); if class.base_class != "" { contents = contents + " : public " + strip_name(&class.base_class); @@ -234,7 +243,7 @@ fn generate_class_header(used_classes: &HashSet<&String>, class: &GodotClass) -> if class.base_class == "" { // Object - contents = contents + "\ninline Variant::operator Object() const\n{\n\n"; + contents = contents + "\ninline\n#if defined(_WIN32)\n# ifdef _GD_CPP_BINDING_IMPL\n __declspec(dllexport)\n# else\n __declspec(dllimport)\n# endif\n#endif\nVariant::operator Object() const\n{\n\n"; contents = contents + "\treturn Object(godot_variant_as_object(&_godot_variant));\n\n"; @@ -551,7 +560,7 @@ fn generate_icall_implementation(icalls: &HashSet<(String, Vec)>) -> Str contents = contents + "\t" + if !is_core_type(ret) && !is_primitive(ret) { "godot_object*" } else { strip_name(ret) } + " ret;\n"; } - contents = contents + "\tconst void *args[] = {\n"; + contents = contents + "\tconst void *args[" + if args.len() == 0 { "1" } else { "" } + "] = {\n"; let mut j = 0; for arg in args { diff --git a/include/.sconsign.dblite b/include/.sconsign.dblite new file mode 100644 index 0000000..f6fd139 Binary files /dev/null and b/include/.sconsign.dblite differ diff --git a/include/SConstruct b/include/SConstruct index c48e8c4..1e8f7b9 100644 --- a/include/SConstruct +++ b/include/SConstruct @@ -3,14 +3,23 @@ import os env = Environment() -if ARGUMENTS.get("use_llvm", "yes") == "yes": +if ARGUMENTS.get("use_llvm", "no") == "yes": env["CXX"] = "clang++" target = ARGUMENTS.get("target", "core") +platform = ARGUMENTS.get("p", "linux") + if (target == "core"): - env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) + if platform == "linux": + env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) + env.Append(CPPPATH=['.', './godot']) + + if platform == "windows": + env.Append(LIBS=['godot.windows.tools.64.lib']) + + env.Append(CPPFLAGS=['-D_GD_CPP_CORE_API_IMPL']) sources = [ 'godot_cpp/core/Array.cpp', @@ -38,18 +47,20 @@ if (target == "core"): Default(library) elif target == "bindings": - if env["CXX"] == "clang++": - env.Append(CCFLAGS = ['-Wno-writable-strings']) - else: - env.Append(CCFLAGS = ['-Wno-write-strings', '-Wno-return-local-addr']) + if platform == "linux": + if env["CXX"] == "clang++": + env.Append(CCFLAGS = ['-Wno-writable-strings']) + else: + env.Append(CCFLAGS = ['-Wno-write-strings', '-Wno-return-local-addr']) - env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) + env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) + env.Append(LINKFLAGS = ['-Wl,-R,\'$$ORIGIN/\'']) env.Append(CPPPATH=['.', './godot', './godot_cpp']) - env.Append(LINKFLAGS = ['-Wl,-R,\'$$ORIGIN/\'']) - env.Append(LIBS=['godot_cpp_core']) + env.Append(LIBS=['godot_cpp_core', 'godot.windows.tools.64']) env.Append(LIBPATH=["."]) + env.Append(CPPFLAGS=['-D_GD_CPP_BINDING_IMPL']) sources = [os.path.join("godot_cpp/impl/", f) for f in os.listdir("godot_cpp/impl/") if f.endswith('.cpp')] diff --git a/include/godot.windows.tools.64.lib b/include/godot.windows.tools.64.lib new file mode 100644 index 0000000..def6302 Binary files /dev/null and b/include/godot.windows.tools.64.lib differ diff --git a/include/godot_cpp/core/Array.hpp b/include/godot_cpp/core/Array.hpp index 1b60788..9a39b35 100644 --- a/include/godot_cpp/core/Array.hpp +++ b/include/godot_cpp/core/Array.hpp @@ -1,6 +1,16 @@ #ifndef ARRAY_H #define ARRAY_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include "String.hpp" @@ -18,7 +28,7 @@ class PoolColorArray; class Object; -class Array { +class GD_CPP_CORE_API Array { godot_array _godot_array; public: Array(); diff --git a/include/godot_cpp/core/Basis.hpp b/include/godot_cpp/core/Basis.hpp index 018896a..eda3d09 100644 --- a/include/godot_cpp/core/Basis.hpp +++ b/include/godot_cpp/core/Basis.hpp @@ -1,6 +1,16 @@ #ifndef BASIS_H #define BASIS_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Defs.hpp" #include "Vector3.hpp" @@ -9,7 +19,7 @@ namespace godot { class Quat; -class Basis { +class GD_CPP_CORE_API Basis { public: Vector3 elements[3]; diff --git a/include/godot_cpp/core/Color.hpp b/include/godot_cpp/core/Color.hpp index 528e674..dbaf7aa 100644 --- a/include/godot_cpp/core/Color.hpp +++ b/include/godot_cpp/core/Color.hpp @@ -1,6 +1,16 @@ #ifndef COLOR_H #define COLOR_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include @@ -10,7 +20,7 @@ namespace godot { -struct Color { +struct GD_CPP_CORE_API Color { private: diff --git a/include/godot_cpp/core/CoreTypes.hpp b/include/godot_cpp/core/CoreTypes.hpp index 5142b4f..c82243a 100644 --- a/include/godot_cpp/core/CoreTypes.hpp +++ b/include/godot_cpp/core/CoreTypes.hpp @@ -18,7 +18,7 @@ #include "RID.hpp" #include "String.hpp" #include "Transform.hpp" -#include "Transform2D.hp" +#include "Transform2D.hpp" #include "Variant.hpp" #include "Vector2.hpp" #include "Vector3.hpp" diff --git a/include/godot_cpp/core/Dictionary.hpp b/include/godot_cpp/core/Dictionary.hpp index 73a7966..139e3ff 100644 --- a/include/godot_cpp/core/Dictionary.hpp +++ b/include/godot_cpp/core/Dictionary.hpp @@ -1,6 +1,16 @@ #ifndef DICTIONARY_H #define DICTIONARY_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Variant.hpp" #include "Array.hpp" @@ -9,7 +19,7 @@ namespace godot { -class Dictionary { +class GD_CPP_CORE_API Dictionary { godot_dictionary _godot_dictionary; public: Dictionary(); diff --git a/include/godot_cpp/core/Image.hpp b/include/godot_cpp/core/Image.hpp index 5b1322e..cbe3c72 100644 --- a/include/godot_cpp/core/Image.hpp +++ b/include/godot_cpp/core/Image.hpp @@ -1,6 +1,16 @@ #ifndef IMAGE_H #define IMAGE_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Defs.hpp" #include "Vector2.hpp" @@ -14,7 +24,7 @@ namespace godot { class PoolByteArray; -class Image { +class GD_CPP_CORE_API Image { godot_image _godot_image; public: diff --git a/include/godot_cpp/core/InputEvent.cpp b/include/godot_cpp/core/InputEvent.cpp index b21bca6..b0080c4 100644 --- a/include/godot_cpp/core/InputEvent.cpp +++ b/include/godot_cpp/core/InputEvent.cpp @@ -4,7 +4,7 @@ #include #include "Vector2.hpp" -#include "Transform2D.hp" +#include "Transform2D.hpp" #include diff --git a/include/godot_cpp/core/InputEvent.hpp b/include/godot_cpp/core/InputEvent.hpp index ef67817..f4fb33d 100644 --- a/include/godot_cpp/core/InputEvent.hpp +++ b/include/godot_cpp/core/InputEvent.hpp @@ -1,6 +1,16 @@ #ifndef INPUTEVENT_H #define INPUTEVENT_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include @@ -119,7 +129,7 @@ enum { * Input Modifier Status * for keyboard/mouse events. */ -struct InputModifierState { +struct GD_CPP_CORE_API InputModifierState { bool shift; bool alt; @@ -223,7 +233,7 @@ struct InputEventAction { class Transform2D; -struct InputEvent { +struct GD_CPP_CORE_API InputEvent { enum Type { NONE, diff --git a/include/godot_cpp/core/NodePath.hpp b/include/godot_cpp/core/NodePath.hpp index 180b8a1..c941ad0 100644 --- a/include/godot_cpp/core/NodePath.hpp +++ b/include/godot_cpp/core/NodePath.hpp @@ -1,6 +1,16 @@ #ifndef NODEPATH_H #define NODEPATH_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "String.hpp" #include @@ -8,7 +18,7 @@ namespace godot { -class NodePath +class GD_CPP_CORE_API NodePath { godot_node_path _node_path; public: diff --git a/include/godot_cpp/core/Plane.hpp b/include/godot_cpp/core/Plane.hpp index 5ad5fcd..dbcf448 100644 --- a/include/godot_cpp/core/Plane.hpp +++ b/include/godot_cpp/core/Plane.hpp @@ -1,6 +1,16 @@ #ifndef PLANE_H #define PLANE_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Vector3.hpp" #include @@ -15,7 +25,7 @@ enum ClockDirection { COUNTERCLOCKWISE }; -class Plane { +class GD_CPP_CORE_API Plane { public: Vector3 normal; real_t d; diff --git a/include/godot_cpp/core/PoolArrays.hpp b/include/godot_cpp/core/PoolArrays.hpp index e2a51f1..ebbd61d 100644 --- a/include/godot_cpp/core/PoolArrays.hpp +++ b/include/godot_cpp/core/PoolArrays.hpp @@ -1,6 +1,16 @@ #ifndef POOLARRAYS_H #define POOLARRAYS_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Defs.hpp" #include "String.hpp" @@ -14,7 +24,7 @@ namespace godot { class Array; -class PoolByteArray { +class GD_CPP_CORE_API PoolByteArray { godot_pool_byte_array _godot_array; public: PoolByteArray(); @@ -45,7 +55,7 @@ public: }; -class PoolIntArray { +class GD_CPP_CORE_API PoolIntArray { godot_pool_int_array _godot_array; public: PoolIntArray(); @@ -76,7 +86,7 @@ public: }; -class PoolRealArray { +class GD_CPP_CORE_API PoolRealArray { godot_pool_real_array _godot_array; public: PoolRealArray(); @@ -107,7 +117,7 @@ public: }; -class PoolStringArray { +class GD_CPP_CORE_API PoolStringArray { godot_pool_string_array _godot_array; public: PoolStringArray(); @@ -139,7 +149,7 @@ public: -class PoolVector2Array { +class GD_CPP_CORE_API PoolVector2Array { godot_pool_vector2_array _godot_array; public: PoolVector2Array(); @@ -170,7 +180,7 @@ public: }; -class PoolVector3Array { +class GD_CPP_CORE_API PoolVector3Array { godot_pool_vector3_array _godot_array; public: PoolVector3Array(); @@ -201,7 +211,7 @@ public: }; -class PoolColorArray { +class GD_CPP_CORE_API PoolColorArray { godot_pool_color_array _godot_array; public: PoolColorArray(); diff --git a/include/godot_cpp/core/Quat.hpp b/include/godot_cpp/core/Quat.hpp index 927d4a3..03bb015 100644 --- a/include/godot_cpp/core/Quat.hpp +++ b/include/godot_cpp/core/Quat.hpp @@ -1,6 +1,16 @@ #ifndef QUAT_H #define QUAT_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include "Vector3.hpp" @@ -9,7 +19,7 @@ namespace godot { -class Quat{ +class GD_CPP_CORE_API Quat{ public: real_t x,y,z,w; diff --git a/include/godot_cpp/core/RID.hpp b/include/godot_cpp/core/RID.hpp index 7584581..634b7f0 100644 --- a/include/godot_cpp/core/RID.hpp +++ b/include/godot_cpp/core/RID.hpp @@ -1,13 +1,23 @@ #ifndef RID_H #define RID_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include namespace godot { class Object; -class RID { +class GD_CPP_CORE_API RID { godot_rid _godot_rid; public: diff --git a/include/godot_cpp/core/Rect2.cpp b/include/godot_cpp/core/Rect2.cpp index 2b32506..6d13cff 100644 --- a/include/godot_cpp/core/Rect2.cpp +++ b/include/godot_cpp/core/Rect2.cpp @@ -6,7 +6,7 @@ #include -#include "Transform2D.hp" +#include "Transform2D.hpp" namespace godot { diff --git a/include/godot_cpp/core/Rect2.hpp b/include/godot_cpp/core/Rect2.hpp index 792972d..849fa68 100644 --- a/include/godot_cpp/core/Rect2.hpp +++ b/include/godot_cpp/core/Rect2.hpp @@ -1,6 +1,16 @@ #ifndef RECT2_H #define RECT2_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Vector2.hpp" #include @@ -16,7 +26,7 @@ typedef Vector2 Point2; class Transform2D; -struct Rect2 { +struct GD_CPP_CORE_API Rect2 { Point2 pos; Size2 size; diff --git a/include/godot_cpp/core/Rect3.hpp b/include/godot_cpp/core/Rect3.hpp index acd674f..b04195c 100644 --- a/include/godot_cpp/core/Rect3.hpp +++ b/include/godot_cpp/core/Rect3.hpp @@ -1,6 +1,16 @@ #ifndef RECT3_H #define RECT3_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Vector3.hpp" #include "Plane.hpp" @@ -9,7 +19,7 @@ namespace godot { -class Rect3 { +class GD_CPP_CORE_API Rect3 { public: Vector3 pos; Vector3 size; diff --git a/include/godot_cpp/core/String.cpp b/include/godot_cpp/core/String.cpp index 52923ff..c3c78e4 100644 --- a/include/godot_cpp/core/String.cpp +++ b/include/godot_cpp/core/String.cpp @@ -120,6 +120,11 @@ const wchar_t *String::c_string() const } +String operator +(const char *a, const String& b) +{ + return String(a) + b; +} + } diff --git a/include/godot_cpp/core/String.hpp b/include/godot_cpp/core/String.hpp index 6de7037..ec14242 100644 --- a/include/godot_cpp/core/String.hpp +++ b/include/godot_cpp/core/String.hpp @@ -1,11 +1,21 @@ #ifndef STRING_H #define STRING_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include namespace godot { -class String +class GD_CPP_CORE_API String { godot_string _godot_string; public: diff --git a/include/godot_cpp/core/Transform.hpp b/include/godot_cpp/core/Transform.hpp index bb47693..74b2ef0 100644 --- a/include/godot_cpp/core/Transform.hpp +++ b/include/godot_cpp/core/Transform.hpp @@ -1,6 +1,16 @@ #ifndef TRANSFORM_H #define TRANSFORM_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Basis.hpp" #include "Plane.hpp" @@ -8,7 +18,7 @@ namespace godot { -class Transform { +class GD_CPP_CORE_API Transform { public: Basis basis; diff --git a/include/godot_cpp/core/Transform2D.cpp b/include/godot_cpp/core/Transform2D.cpp index 9dfbb22..1f4b5ca 100644 --- a/include/godot_cpp/core/Transform2D.cpp +++ b/include/godot_cpp/core/Transform2D.cpp @@ -1,4 +1,4 @@ -#include "Transform2D.hp" +#include "Transform2D.hpp" #include "Vector2.hpp" diff --git a/include/godot_cpp/core/Transform2D.hp b/include/godot_cpp/core/Transform2D.hpp similarity index 93% rename from include/godot_cpp/core/Transform2D.hp rename to include/godot_cpp/core/Transform2D.hpp index f3bc5fb..553c324 100644 --- a/include/godot_cpp/core/Transform2D.hp +++ b/include/godot_cpp/core/Transform2D.hpp @@ -1,6 +1,16 @@ #ifndef TRANSFORM2D_H #define TRANSFORM2D_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Vector2.hpp" @@ -10,7 +20,7 @@ typedef Vector2 Size2; class Rect2; -struct Transform2D { +struct GD_CPP_CORE_API Transform2D { // Warning #1: basis of Transform2D is stored differently from Basis. In terms of elements array, the basis matrix looks like "on paper": // M = (elements[0][0] elements[1][0]) // (elements[0][1] elements[1][1]) diff --git a/include/godot_cpp/core/Variant.hpp b/include/godot_cpp/core/Variant.hpp index 2fe0fed..68e1210 100644 --- a/include/godot_cpp/core/Variant.hpp +++ b/include/godot_cpp/core/Variant.hpp @@ -1,6 +1,16 @@ #ifndef VARIANT_H #define VARIANT_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include "Defs.hpp" @@ -18,7 +28,7 @@ #include "RID.hpp" #include "String.hpp" #include "Transform.hpp" -#include "Transform2D.hp" +#include "Transform2D.hpp" #include "Vector2.hpp" #include "Vector3.hpp" @@ -30,7 +40,7 @@ class Dictionary; class Array; -class Variant { +class GD_CPP_CORE_API Variant { godot_variant _godot_variant; public: enum Type { diff --git a/include/godot_cpp/core/Vector2.hpp b/include/godot_cpp/core/Vector2.hpp index b62ddfd..73dd562 100644 --- a/include/godot_cpp/core/Vector2.hpp +++ b/include/godot_cpp/core/Vector2.hpp @@ -2,6 +2,16 @@ #define VECTOR2_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include #include "Defs.hpp" @@ -10,7 +20,7 @@ namespace godot { class String; -struct Vector2 { +struct GD_CPP_CORE_API Vector2 { union { real_t x; diff --git a/include/godot_cpp/core/Vector3.hpp b/include/godot_cpp/core/Vector3.hpp index d1db4e1..52a5d73 100644 --- a/include/godot_cpp/core/Vector3.hpp +++ b/include/godot_cpp/core/Vector3.hpp @@ -1,6 +1,16 @@ #ifndef VECTOR3_H #define VECTOR3_H +#if defined(_WIN32) +# ifdef _GD_CPP_CORE_API_IMPL +# define GD_CPP_CORE_API __declspec(dllexport) +# else +# define GD_CPP_CORE_API __declspec(dllimport) +# endif +#else +# define GD_CPP_CORE_API +#endif + #include "Defs.hpp" #include "String.hpp" @@ -8,7 +18,7 @@ namespace godot { -struct Vector3 { +struct GD_CPP_CORE_API Vector3 { enum Axis { AXIS_X, diff --git a/include/godot_cpp_bindings.dll b/include/godot_cpp_bindings.dll new file mode 100644 index 0000000..c32bdcb Binary files /dev/null and b/include/godot_cpp_bindings.dll differ diff --git a/include/godot_cpp_bindings.exp b/include/godot_cpp_bindings.exp new file mode 100644 index 0000000..ccf8332 Binary files /dev/null and b/include/godot_cpp_bindings.exp differ diff --git a/include/godot_cpp_bindings.lib b/include/godot_cpp_bindings.lib new file mode 100644 index 0000000..d7b7021 Binary files /dev/null and b/include/godot_cpp_bindings.lib differ diff --git a/include/godot_cpp_core.dll b/include/godot_cpp_core.dll new file mode 100644 index 0000000..188d15e Binary files /dev/null and b/include/godot_cpp_core.dll differ diff --git a/include/godot_cpp_core.exp b/include/godot_cpp_core.exp new file mode 100644 index 0000000..cf7bf4a Binary files /dev/null and b/include/godot_cpp_core.exp differ diff --git a/include/godot_cpp_core.lib b/include/godot_cpp_core.lib new file mode 100644 index 0000000..1c5ca54 Binary files /dev/null and b/include/godot_cpp_core.lib differ