X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fnodedef.cpp;h=651418cd80c46029020f29c1563b46098d6b3e9b;hb=b5f7249a7edc25077d84b27b38552228b92ff763;hp=6bb2bf9047792cac1c699f1fd86a4f6a89b5f55b;hpb=ef285b2815962a7a01791059ed984cb12fdba4dd;p=oweals%2Fminetest.git diff --git a/src/nodedef.cpp b/src/nodedef.cpp index 6bb2bf904..651418cd8 100644 --- a/src/nodedef.cpp +++ b/src/nodedef.cpp @@ -22,6 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "itemdef.h" #ifndef SERVER #include "mesh.h" +#include "shader.h" #include "client.h" #include "client/renderingengine.h" #include "client/tile.h" @@ -637,7 +638,10 @@ void ContentFeatures::fillTileAttribs(ITextureSource *tsrc, TileLayer *tile, tile->material_flags &= ~MATERIAL_FLAG_ANIMATION; } else { std::ostringstream os(std::ios::binary); - tile->frames.resize(frame_count); + if (!tile->frames) { + tile->frames = std::make_shared>(); + } + tile->frames->resize(frame_count); for (int i = 0; i < frame_count; i++) { @@ -652,7 +656,7 @@ void ContentFeatures::fillTileAttribs(ITextureSource *tsrc, TileLayer *tile, if (tile->normal_texture) frame.normal_texture = tsrc->getNormalTexture(os.str()); frame.flags_texture = tile->flags_texture; - tile->frames[i] = frame; + (*tile->frames)[i] = frame; } } }