]> git.localhorst.tv Git - blank.git/blobdiff - src/world/World.cpp
collect and load textures required by block types
[blank.git] / src / world / World.cpp
index 5827e8f872f2112e6c057d5c98958ab6d4bbd5bf..3d3eb6c3d9ba11a6aebc685e01480dca6b6e773f 100644 (file)
@@ -2,6 +2,7 @@
 
 #include "WorldCollision.hpp"
 #include "../app/Assets.hpp"
+#include "../app/TextureIndex.hpp"
 #include "../graphics/Format.hpp"
 #include "../graphics/Viewport.hpp"
 
@@ -21,16 +22,13 @@ World::World(const Assets &assets, const Config &config, const WorldSave &save)
 , entities()
 , light_direction(config.light_direction)
 , fog_density(config.fog_density) {
+       TextureIndex tex_index;
+       assets.LoadBlockTypes("default", block_type, tex_index);
+
        block_tex.Bind();
-       block_tex.Reserve(16, 16, 4, Format());
-       assets.LoadTexture("debug", block_tex, 0);
-       assets.LoadTexture("rock-1", block_tex, 1);
-       assets.LoadTexture("rock-2", block_tex, 2);
-       assets.LoadTexture("rock-3", block_tex, 3);
+       assets.LoadTextures(tex_index, block_tex);
        block_tex.FilterNearest();
 
-       assets.LoadBlockTypes("default", block_type);
-
        generate.Space(0);
        generate.Light(13);
        generate.Solids({ 1, 4, 7, 10 });