summaryrefslogtreecommitdiff
path: root/indra/newview/llvlcomposition.h
diff options
context:
space:
mode:
authorCosmic Linden <cosmic@lindenlab.com>2024-07-11 15:54:24 -0700
committerCosmic Linden <cosmic@lindenlab.com>2024-08-06 16:28:47 -0700
commit6aa9110b2ae346da1a396500cae1b41e8e2d5b75 (patch)
tree93c83eb1a2c515feef3e00c349f33e16e06d56d2 /indra/newview/llvlcomposition.h
parentae2ff22542a5882616778ffab50612f8ad41b71e (diff)
secondlife/viewer#1883: Local-only PBR terrain paintmap with developer tools
Diffstat (limited to 'indra/newview/llvlcomposition.h')
-rw-r--r--indra/newview/llvlcomposition.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/indra/newview/llvlcomposition.h b/indra/newview/llvlcomposition.h
index 2637d77183..f15f9bff6a 100644
--- a/indra/newview/llvlcomposition.h
+++ b/indra/newview/llvlcomposition.h
@@ -28,6 +28,8 @@
#define LL_LLVLCOMPOSITION_H
#include "llviewerlayer.h"
+#include "llviewershadermgr.h"
+#include "llviewertexture.h"
#include "llpointer.h"
#include "llimage.h"
@@ -44,6 +46,7 @@ public:
virtual const LLGLTFMaterial* getMaterialOverride(S32 asset) const = 0;
};
+// The subset of the composition used by local terrain debug materials (gLocalTerrainMaterials)
class LLTerrainMaterials : public LLModifyRegion
{
public:
@@ -79,6 +82,12 @@ public:
// strict = false -> at least one material must be loaded
bool makeMaterialsReady(bool boost, bool strict);
+ // See TerrainPaintType
+ U32 getPaintType() const { return mPaintType; }
+ void setPaintType(U32 paint_type) { mPaintType = paint_type; }
+ LLViewerTexture* getPaintMap();
+ void setPaintMap(LLViewerTexture* paint_map);
+
protected:
void unboost();
static bool makeTextureReady(LLPointer<LLViewerFetchedTexture>& tex, bool boost);
@@ -93,6 +102,9 @@ protected:
LLPointer<LLGLTFMaterial> mDetailMaterialOverrides[ASSET_COUNT];
LLPointer<LLFetchedGLTFMaterial> mDetailRenderMaterials[ASSET_COUNT];
bool mMaterialTexturesSet[ASSET_COUNT];
+
+ U32 mPaintType = TERRAIN_PAINT_TYPE_HEIGHTMAP_WITH_NOISE;
+ LLPointer<LLViewerTexture> mPaintMap;
};
// Local materials to override all regions