X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FEnvironment%2FTerrain.hpp;h=6132c6a48ba07a91f2e1e779a9f16e478360480f;hb=0aab437dc560d2afa982e61cc2547756ad7b0761;hp=3afaa2874d3f6371dbb973ba9c17a6d944f30ab7;hpb=e60cbd7add6123d81b3c35543296449b5d02cbaa;p=lugaru.git diff --git a/Source/Environment/Terrain.hpp b/Source/Environment/Terrain.hpp index 3afaa28..6132c6a 100644 --- a/Source/Environment/Terrain.hpp +++ b/Source/Environment/Terrain.hpp @@ -1,6 +1,6 @@ /* Copyright (C) 2003, 2010 - Wolfire Games -Copyright (C) 2010-2016 - Lugaru contributors (see AUTHORS file) +Copyright (C) 2010-2017 - Lugaru contributors (see AUTHORS file) This file is part of Lugaru. @@ -26,7 +26,7 @@ along with Lugaru. If not, see . #include "Graphic/gamegl.hpp" #include "Graphic/Texture.hpp" #include "Math/Frustum.hpp" -#include "Math/Quaternions.hpp" +#include "Math/XYZ.hpp" #include "Utils/ImageIO.hpp" #define max_terrain_size 256 @@ -40,15 +40,6 @@ along with Lugaru. If not, see . #define max_decals 1000 -#define shadowdecal 0 -#define footprintdecal 1 -#define blooddecal 2 -#define blooddecalfast 3 -#define shadowdecalpermanent 4 -#define breakdecal 5 -#define blooddecalslow 6 -#define bodyprintdecal 7 - #define snowyenvironment 0 #define grassyenvironment 1 #define desertenvironment 2 @@ -68,8 +59,7 @@ public: Texture terraintexture; short size; - int patchobjectnum[subdivision][subdivision]; - unsigned int patchobjects[subdivision][subdivision][300]; + std::vector patchobjects[subdivision][subdivision]; float scale; int type; @@ -98,8 +88,8 @@ public: void AddObject(XYZ where, float radius, int id); void DeleteDecal(int which); - void MakeDecal(int type, XYZ where, float size, float opacity, float rotation); - void MakeDecalLock(int type, XYZ where, int whichx, int whichy, float size, float opacity, float rotation); + void MakeDecal(decal_type type, XYZ where, float size, float opacity, float rotation); + void MakeDecalLock(decal_type type, XYZ where, int whichx, int whichy, float size, float opacity, float rotation); int lineTerrain(XYZ p1, XYZ p2, XYZ *p); float getHeight(float pointx, float pointz); float getOpacity(float pointx, float pointz);