Refactored EngineShadowType to enum class

dev
Tomasz Kapuściński 2022-01-18 19:42:19 +01:00
parent 67bd982969
commit 68a222e03a
5 changed files with 21 additions and 21 deletions

View File

@ -4811,7 +4811,7 @@ void CEngine::DrawShadowSpots()
glm::vec3 corner[4]; glm::vec3 corner[4];
if (m_shadowSpots[i].type == ENG_SHADOW_NORM) if (m_shadowSpots[i].type == EngineShadowType::NORMAL)
{ {
corner[0].x = +radius; corner[0].x = +radius;
corner[0].z = +radius; corner[0].z = +radius;
@ -4856,7 +4856,7 @@ void CEngine::DrawShadowSpots()
corner[3].z = rot.y; corner[3].z = rot.y;
corner[3].y = 0.0f; corner[3].y = 0.0f;
if (m_shadowSpots[i].type == ENG_SHADOW_WORM) if (m_shadowSpots[i].type == EngineShadowType::WORM)
{ {
ts.x = 96.0f/256.0f; ts.x = 96.0f/256.0f;
ti.x = 128.0f/256.0f; ti.x = 128.0f/256.0f;
@ -5609,7 +5609,7 @@ void CEngine::AddStaticMeshShadowSpot(int meshHandle, const ModelShadowSpot& sha
CreateShadowSpot(objRank); CreateShadowSpot(objRank);
SetObjectShadowSpotRadius(objRank, shadowSpot.radius); SetObjectShadowSpotRadius(objRank, shadowSpot.radius);
SetObjectShadowSpotIntensity(objRank, shadowSpot.intensity); SetObjectShadowSpotIntensity(objRank, shadowSpot.intensity);
SetObjectShadowSpotType(objRank, ENG_SHADOW_NORM); SetObjectShadowSpotType(objRank, EngineShadowType::NORMAL);
SetObjectShadowSpotHeight(objRank, 0.0f); SetObjectShadowSpotHeight(objRank, 0.0f);
SetObjectShadowSpotAngle(objRank, 0.0f); SetObjectShadowSpotAngle(objRank, 0.0f);
UpdateObjectShadowSpotNormal(objRank); UpdateObjectShadowSpotNormal(objRank);

View File

@ -293,12 +293,12 @@ struct EngineObject
* \struct EngineShadowType * \struct EngineShadowType
* \brief Type of shadow drawn by the graphics engine * \brief Type of shadow drawn by the graphics engine
*/ */
enum EngineShadowType enum class EngineShadowType
{ {
//! Normal shadow //! Normal shadow
ENG_SHADOW_NORM = 0, NORMAL = 0,
//! TODO: ? //! TODO: ?
ENG_SHADOW_WORM = 1 WORM = 1
}; };
/** /**
@ -314,7 +314,7 @@ struct EngineShadow
//! Rank of the associated object //! Rank of the associated object
int objRank = -1; int objRank = -1;
//! Type of shadow //! Type of shadow
EngineShadowType type = ENG_SHADOW_NORM; EngineShadowType type = EngineShadowType::NORMAL;
//! Position of the shadow //! Position of the shadow
glm::vec3 pos{ 0, 0, 0 }; glm::vec3 pos{ 0, 0, 0 };
//! Normal to the terrain //! Normal to the terrain

View File

@ -136,7 +136,7 @@ void CMotionWorm::Create(glm::vec3 pos, float angle, ObjectType type,
modelManager->AddModelReference("worm3.mod", false, rank); modelManager->AddModelReference("worm3.mod", false, rank);
m_object->SetPartPosition(2+WORM_PART, glm::vec3(px, 0.0f, 0.0f)); m_object->SetPartPosition(2+WORM_PART, glm::vec3(px, 0.0f, 0.0f));
m_object->CreateShadowCircle(0.0f, 1.0f, Gfx::ENG_SHADOW_WORM); m_object->CreateShadowCircle(0.0f, 1.0f, Gfx::EngineShadowType::WORM);
CreatePhysics(); CreatePhysics();
m_object->SetFloorHeight(0.0f); m_object->SetFloorHeight(0.0f);

View File

@ -530,7 +530,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(6.0f, 0.5f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(6.0f, 0.5f, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_BARRIER1 ) if ( type == OBJECT_BARRIER1 )
@ -548,7 +548,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(12.0f, 0.5f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(12.0f, 0.5f, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_BARRIER2 ) // cardboard? if ( type == OBJECT_BARRIER2 ) // cardboard?
@ -566,7 +566,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(12.0f, 0.8f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(12.0f, 0.8f, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_BARRIER3 ) // match + straw? if ( type == OBJECT_BARRIER3 ) // match + straw?
@ -584,7 +584,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 3.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(10.0f, 0.5f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(10.0f, 0.5f, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_BARRICADE0 ) if ( type == OBJECT_BARRICADE0 )
@ -603,7 +603,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(6.0f, 0.5f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(6.0f, 0.5f, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_BARRICADE1 ) if ( type == OBJECT_BARRICADE1 )
@ -626,7 +626,7 @@ CObjectUPtr CObjectFactory::CreateBarrier(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-3.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-8.5f, 6.0f, 0.0f), 0.7f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(12.0f, 0.5f, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(12.0f, 0.5f, Gfx::EngineShadowType::WORM);
} }
pos = obj->GetPosition(); pos = obj->GetPosition();
@ -977,7 +977,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-2.5f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-2.5f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-5.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-5.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(5.0f, 0.8f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(5.0f, 0.8f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN1 ) // blue pencil lg=14 if ( type == OBJECT_TEEN1 ) // blue pencil lg=14
@ -997,7 +997,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-4.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-4.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-6.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-6.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(6.0f, 0.8f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(6.0f, 0.8f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN2 ) // red pencil lg=16 if ( type == OBJECT_TEEN2 ) // red pencil lg=16
@ -1017,7 +1017,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3(-4.7f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-4.7f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3(-7.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3(-7.0f, 1.0f, 0.0f), 1.0f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(6.0f, 0.8f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(6.0f, 0.8f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN3 ) // jar with pencils if ( type == OBJECT_TEEN3 ) // jar with pencils
@ -1052,7 +1052,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3( 8.0f, 1.0f, 2.2f), 2.3f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 8.0f, 1.0f, 2.2f), 2.3f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3( 9.4f, 1.0f,-2.0f), 2.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 9.4f, 1.0f,-2.0f), 2.0f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(10.0f, 0.5f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(10.0f, 0.5f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN5 ) // CD if ( type == OBJECT_TEEN5 ) // CD
@ -1403,7 +1403,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3( 23.0f, 2.0f, 0.0f), 3.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 23.0f, 2.0f, 0.0f), 3.0f, SOUND_BOUMm, 0.45f));
obj->AddCrashSphere(CrashSphere(glm::vec3( 23.0f, 2.0f,-7.0f), 3.0f, SOUND_BOUMm, 0.45f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 23.0f, 2.0f,-7.0f), 3.0f, SOUND_BOUMm, 0.45f));
obj->CreateShadowCircle(35.0f, 0.8f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(35.0f, 0.8f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN24 ) // skate / if ( type == OBJECT_TEEN24 ) // skate /
@ -1583,7 +1583,7 @@ CObjectUPtr CObjectFactory::CreateTeen(const ObjectCreateParams& params)
obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 0.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f));
obj->AddCrashSphere(CrashSphere(glm::vec3( 20.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 20.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f));
obj->AddCrashSphere(CrashSphere(glm::vec3( 40.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f)); obj->AddCrashSphere(CrashSphere(glm::vec3( 40.0f, 5.0f, 0.0f), 10.0f, SOUND_BOUM, 0.10f));
obj->CreateShadowCircle(40.0f, 0.8f*fShadow, Gfx::ENG_SHADOW_WORM); obj->CreateShadowCircle(40.0f, 0.8f*fShadow, Gfx::EngineShadowType::WORM);
} }
if ( type == OBJECT_TEEN36 ) // trunk? if ( type == OBJECT_TEEN36 ) // trunk?

View File

@ -261,7 +261,7 @@ public:
CMotion* GetMotion() override; CMotion* GetMotion() override;
CAuto* GetAuto() override; CAuto* GetAuto() override;
bool CreateShadowCircle(float radius, float intensity, Gfx::EngineShadowType type = Gfx::ENG_SHADOW_NORM); bool CreateShadowCircle(float radius, float intensity, Gfx::EngineShadowType type = Gfx::EngineShadowType::NORMAL);
bool CreateShadowLight(float height, Gfx::Color color); bool CreateShadowLight(float height, Gfx::Color color);
void FlatParent() override; void FlatParent() override;