This commit is contained in:
2025-06-16 01:49:08 +03:00
parent a1f1e09af6
commit 82df3bb299
13 changed files with 562 additions and 41 deletions

25
water/water.h Normal file
View File

@@ -0,0 +1,25 @@
#ifndef MAT_WATER_H
#define MAT_WATER_H
#include <Ogre.h>
class App;
class Water : public Ogre::FrameListener, Ogre::RenderTargetListener {
Ogre::SceneManager *mScnMgr;
Ogre::SceneNode *mWaterNode, *mCameraNode;
Ogre::Vector3 mCameraPosition;
Ogre::Camera *mCamera;
Ogre::Plane mWaterPlane;
public:
Water();
virtual ~Water();
void createWater(Ogre::Camera *camera);
void updateWater(float delta);
bool frameEnded(const Ogre::FrameEvent &evt) override;
bool frameRenderingQueued(const Ogre::FrameEvent &evt) override;
void preRenderTargetUpdate(const Ogre::RenderTargetEvent &evt) override;
void
postRenderTargetUpdate(const Ogre::RenderTargetEvent &evt) override;
void add_submerged_entity(Ogre::Entity *ent);
void add_surface_entity(Ogre::Entity *ent);
};
#endif