2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-16 02:57:03 +00:00

CCameraManager imps

This commit is contained in:
2016-10-31 15:56:44 -07:00
parent 5bbfd3bec9
commit d733dce1cf
17 changed files with 253 additions and 94 deletions

View File

@@ -151,6 +151,16 @@ void CActor::RemoveEmitter()
}
}
const zeus::CTransform CActor::GetScaledLocatorTransform(const std::string& segName) const
{
return x64_modelData->GetScaledLocatorTransform(segName);
}
const zeus::CTransform CActor::GetLocatorTransform(const std::string& segName) const
{
return x64_modelData->GetLocatorTransform(segName);
}
EWeaponCollisionResponseTypes CActor::GetCollisionResponseType(const zeus::CVector3f&,
const zeus::CVector3f&, CWeaponMode&, int)
{
@@ -301,4 +311,14 @@ void CActor::SetTranslation(const zeus::CVector3f &tr)
xe4_29_ = true;
}
float CActor::GetPitch() const
{
return zeus::CQuaternion(x34_transform.buildMatrix3f()).pitch();
}
float CActor::GetYaw() const
{
return zeus::CQuaternion(x34_transform.buildMatrix3f()).yaw();
}
}

View File

@@ -117,7 +117,8 @@ public:
void RemoveEmitter();
const zeus::CTransform& GetTransform() const {return x34_transform;}
const zeus::CTransform GetScaledLocatorTransform(const std::string& segName) const;
const zeus::CTransform GetLocatorTransform(const std::string& segName) const;
void RemoveMaterial(EMaterialTypes, EMaterialTypes, EMaterialTypes, EMaterialTypes, CStateManager&);
void RemoveMaterial(EMaterialTypes, EMaterialTypes, EMaterialTypes, CStateManager&);
void RemoveMaterial(EMaterialTypes, EMaterialTypes, CStateManager&);
@@ -139,6 +140,9 @@ public:
const CSfxHandle* GetSfxHandle() const;
void SetSfxPitchBend(s32);
void SetTranslation(const zeus::CVector3f& tr);
float GetPitch() const;
float GetYaw() const;
};
}

View File

@@ -222,10 +222,10 @@ void CWorldTransManager::DrawEnabled()
{
float wsAspect = CWideScreenFilter::SetViewportToMatch(1.f);
g_Renderer->SetPerspective(CCameraManager::DefaultFirstPersonFOV(),
g_Renderer->SetPerspective(CCameraManager::FirstPersonFOV(),
wsAspect,
CCameraManager::DefaultNearPlane(),
CCameraManager::DefaultFarPlane());
CCameraManager::NearPlane(),
CCameraManager::FarPlane());
g_Renderer->x318_26_ = true;
if (x0_curTime <= x4_modelData->x1d0_dissolveStartTime)

View File

@@ -742,8 +742,8 @@ CEntity* ScriptLoader::LoadCamera(CStateManager& mgr, CInputStream& in, int prop
u32 flags = b2 | b3 << 1 | b4 << 2 | b5 << 3 | b6 << 4 | b7 << 5 | b8 << 6 | b9 << 8;
return new CCinematicCamera(mgr.AllocateUniqueId(), head.x0_name, info, head.x10_transform, b1, f1,
f2 / CCameraManager::DefaultAspect(), CCameraManager::DefaultNearPlane(),
CCameraManager::DefaultFarPlane(), CCameraManager::DefaultAspect(), flags);
f2 / CCameraManager::Aspect(), CCameraManager::NearPlane(),
CCameraManager::FarPlane(), CCameraManager::Aspect(), flags);
}
CEntity* ScriptLoader::LoadCameraWaypoint(CStateManager& mgr, CInputStream& in, int propCount, const CEntityInfo& info)