summaryrefslogtreecommitdiff
path: root/game/scenary/foliage.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/scenary/foliage.h')
-rw-r--r--game/scenary/foliage.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/game/scenary/foliage.h b/game/scenary/foliage.h
index d15a8b0..61bdb5b 100644
--- a/game/scenary/foliage.h
+++ b/game/scenary/foliage.h
@@ -1,6 +1,7 @@
#pragma once
#include "assetFactory/asset.h"
+#include "gfx/gl/billboardPainter.h"
#include "gfx/gl/instanceVertices.h"
#include "gfx/gl/shadowStenciller.h"
#include "gfx/models/texture.h"
@@ -26,13 +27,19 @@ public:
};
mutable InstanceVertices<LocationVertex> instances;
+ void preFrame(const Frustum &, const Frustum &) override;
void render(const SceneShader &, const Frustum &) const override;
void shadows(const ShadowMapper &, const Frustum &) const override;
void updateStencil(const ShadowStenciller &) const override;
+ void updateBillboard(const BillboardPainter &) const override;
glTexture shadowStencil = ShadowStenciller::createStencilTexture(256, 256);
+ glTextures<3> billboard = BillboardPainter::createBillBoardTextures(256, 256);
protected:
friend Persistence::SelectionPtrBase<std::shared_ptr<Foliage>>;
bool persist(Persistence::PersistenceStore & store) override;
void postLoad() override;
+
+private:
+ InstanceVertices<Foliage::LocationVertex>::PartitionResult instancePartitions;
};