diff --git a/src/logic/scripting/lua/libs/libassets.cpp b/src/logic/scripting/lua/libs/libassets.cpp index fa0b51cdb..a9691038e 100644 --- a/src/logic/scripting/lua/libs/libassets.cpp +++ b/src/logic/scripting/lua/libs/libassets.cpp @@ -1,16 +1,17 @@ #include "api_lua.hpp" +#include "../usertypes/lua_type_canvas.hpp" #include "assets/Assets.hpp" #include "assets/AssetsLoader.hpp" +#include "coders/obj.hpp" #include "coders/png.hpp" #include "coders/vcm.hpp" #include "debug/Logger.hpp" #include "engine/Engine.hpp" #include "graphics/commons/Model.hpp" -#include "graphics/core/Texture.hpp" #include "graphics/core/Atlas.hpp" +#include "graphics/core/Texture.hpp" #include "util/Buffer.hpp" -#include "../usertypes/lua_type_canvas.hpp" using namespace scripting; @@ -76,6 +77,11 @@ static int l_parse_model(lua::State* L) { skeletonName = lua::require_string(L, 4); } + if (format == "obj") { + assets.store(obj::parse(name, string), name); + return 0; + } + if (format != "xml" && format != "vcm") { throw std::runtime_error( "unknown format " + util::quote(std::string(format))