1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-10-14 22:56:38 +00:00

Fix compilation error for openmw target

This commit is contained in:
madsbuvi 2021-05-26 23:17:52 +02:00
parent abee6ca841
commit 16ea254fc1
5 changed files with 17 additions and 0 deletions

View file

@ -676,8 +676,10 @@ namespace MWBase
/// @Return distance to the target object, or -1 if no object was targeted / in range
virtual float getTargetObject(MWRender::RayResult& result, const osg::Vec3f& origin, const osg::Quat& orientation, float maxDistance, bool ignorePlayer) = 0;
#ifdef USE_OPENXR
virtual MWVR::UserPointer& getUserPointer() = 0;
virtual MWWorld::Ptr getPointerTarget() = 0;
#endif
/// @Return ESM::Weapon::Type enum describing the type of weapon currently drawn by the player.
virtual int getActiveWeaponType(void) = 0;

View file

@ -207,7 +207,9 @@ namespace MWRender
, mWorkQueue(workQueue)
, mUnrefQueue(new SceneUtil::UnrefQueue)
, mNavigator(navigator)
#ifdef USE_OPENXR
, mUserPointer(new MWVR::UserPointer(rootNode))
#endif
, mMinimumAmbientLuminance(0.f)
, mNightEyeFactor(0.f)
, mFieldOfViewOverridden(false)
@ -1025,7 +1027,9 @@ namespace MWRender
if (mObjectPaging)
mObjectPaging->clear();
#ifdef USE_OPENXR
mUserPointer->setParent(nullptr);
#endif
}
MWRender::Animation* RenderingManager::getAnimation(const MWWorld::Ptr &ptr)
@ -1408,8 +1412,10 @@ namespace MWRender
mObjectPaging->getPagedRefnums(activeGrid, out);
}
#ifdef USE_OPENXR
MWVR::UserPointer& RenderingManager::userPointer()
{
return *mUserPointer;
}
#endif
}

View file

@ -255,7 +255,9 @@ namespace MWRender
bool pagingUnlockCache();
void getPagedRefnums(const osg::Vec4i &activeGrid, std::set<ESM::RefNum> &out);
#ifdef USE_OPENXR
MWVR::UserPointer& userPointer();
#endif
private:
void updateProjectionMatrix();
@ -309,7 +311,10 @@ namespace MWRender
std::unique_ptr<Camera> mCamera;
std::unique_ptr<ViewOverShoulderController> mViewOverShoulderController;
osg::Vec3f mCurrentCameraPos;
#ifdef USE_OPENXR
std::shared_ptr<MWVR::UserPointer> mUserPointer;
#endif
osg::ref_ptr<StateUpdater> mStateUpdater;

View file

@ -4054,6 +4054,7 @@ namespace MWWorld
return result.mRatio * maxDistance;
}
#ifdef USE_OPENXR
MWVR::UserPointer& World::getUserPointer()
{
return mRendering->userPointer();
@ -4063,6 +4064,7 @@ namespace MWWorld
{
return getUserPointer().getPointerTarget().mHitObject;
}
#endif
MWWorld::Ptr World::placeObject(const MWWorld::ConstPtr& object, const MWRender::RayResult& ray, int amount)
{

View file

@ -746,8 +746,10 @@ namespace MWWorld
/// @Return distance to the target object, or -1 if no object was targeted / in range
float getTargetObject(MWRender::RayResult& result, const osg::Vec3f& origin, const osg::Quat& orientation, float maxDistance, bool ignorePlayer) override;
#ifdef USE_OPENXR
MWVR::UserPointer& getUserPointer() override;
MWWorld::Ptr getPointerTarget() override;
#endif
MWWorld::Ptr placeObject(const MWWorld::ConstPtr& object, const MWRender::RayResult& ray, int amount) override;
///< copy and place an object into the gameworld based on the given intersection