mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-24 06:23:52 +00:00
f031a191b8
Since actors can be active in 3x3 grid around the player, we need to first load all statics in a 5x5 grid around the player. Split load and unloading in 2 phases. Add an mInactiveCells set into the scene, which contains all cells inside the aforementioned 5x5 grid. These cells contains only heightfields and physics objects of static class.
33 lines
1.1 KiB
C++
33 lines
1.1 KiB
C++
#ifndef GAME_MWCLASS_STATIC_H
|
|
#define GAME_MWCLASS_STATIC_H
|
|
|
|
#include "../mwworld/class.hpp"
|
|
|
|
namespace MWClass
|
|
{
|
|
class Static : public MWWorld::Class
|
|
{
|
|
MWWorld::Ptr copyToCellImpl(const MWWorld::ConstPtr &ptr, MWWorld::CellStore &cell) const override;
|
|
|
|
public:
|
|
|
|
void insertObjectRendering (const MWWorld::Ptr& ptr, const std::string& model, MWRender::RenderingInterface& renderingInterface) const override;
|
|
///< Add reference into a cell for rendering
|
|
|
|
void insertObject(const MWWorld::Ptr& ptr, const std::string& model, osg::Quat rotation, MWPhysics::PhysicsSystem& physics) const override;
|
|
|
|
std::string getName (const MWWorld::ConstPtr& ptr) const override;
|
|
///< \return name or ID; can return an empty string.
|
|
|
|
bool hasToolTip (const MWWorld::ConstPtr& ptr) const override;
|
|
///< @return true if this object has a tooltip when focused (default implementation: true)
|
|
|
|
static void registerSelf();
|
|
|
|
std::string getModel(const MWWorld::ConstPtr &ptr) const override;
|
|
|
|
bool isStatic() const override;
|
|
};
|
|
}
|
|
|
|
#endif
|