diff --git a/Core/ConfigValues.h b/Core/ConfigValues.h index e218fb07fb..79fbd65c3c 100644 --- a/Core/ConfigValues.h +++ b/Core/ConfigValues.h @@ -190,6 +190,12 @@ enum class ShowStatusFlags { BATTERY_PERCENT = 1 << 3, }; +enum class SplineQuality { + LOW_QUALITY = 0, + MEDIUM_QUALITY = 1, + HIGH_QUALITY = 2, +}; + enum class DumpFileType { EBOOT = (1 << 0), PRX = (1 << 1), diff --git a/GPU/Common/SplineCommon.h b/GPU/Common/SplineCommon.h index bec51004e8..bec1fea09d 100644 --- a/GPU/Common/SplineCommon.h +++ b/GPU/Common/SplineCommon.h @@ -20,6 +20,7 @@ #include "Common/CommonTypes.h" #include "Common/Swap.h" +#include "Core/ConfigValues.h" #include "GPU/Math3D.h" #include "GPU/ge_constants.h" #include "GPU/Common/TransformCommon.h" @@ -34,12 +35,6 @@ namespace Spline { void BuildIndex(u16 *indices, int &count, int num_u, int num_v, GEPatchPrimType prim_type, int total = 0); -enum SplineQuality { - LOW_QUALITY = 0, - MEDIUM_QUALITY = 1, - HIGH_QUALITY = 2, -}; - class Bezier3DWeight; class Spline3DWeight; @@ -59,12 +54,12 @@ struct SurfaceInfo { if (tess_u < 1) tess_u = 1; if (tess_v < 1) tess_v = 1; - switch (g_Config.iSplineBezierQuality) { - case LOW_QUALITY: + switch ((SplineQuality)g_Config.iSplineBezierQuality) { + case SplineQuality::LOW_QUALITY: tess_u = 2; tess_v = 2; break; - case MEDIUM_QUALITY: + case SplineQuality::MEDIUM_QUALITY: // Don't cut below 2, though. if (tess_u > 2) tess_u = HALF_CEIL(tess_u); if (tess_v > 2) tess_v = HALF_CEIL(tess_v);