mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-26 03:12:18 -05:00
Fix portability use of std::clamp (#596)
This commit is contained in:
parent
a34b2b56fe
commit
537722d57a
@ -33,6 +33,7 @@
|
|||||||
#include "../../Environment.h"
|
#include "../../Environment.h"
|
||||||
#include "../../GameVersions.h"
|
#include "../../GameVersions.h"
|
||||||
#include "../../ResourceMgr.h"
|
#include "../../ResourceMgr.h"
|
||||||
|
#include "../../Utils.h"
|
||||||
|
|
||||||
// OTRTODO: fix header files for these
|
// OTRTODO: fix header files for these
|
||||||
extern "C" {
|
extern "C" {
|
||||||
@ -1062,8 +1063,8 @@ static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx *verti
|
|||||||
dotx /= 127.0f;
|
dotx /= 127.0f;
|
||||||
doty /= 127.0f;
|
doty /= 127.0f;
|
||||||
|
|
||||||
std::clamp(dotx, -1.0f, 1.0f);
|
dotx = math::clamp(dotx, -1.0f, 1.0f);
|
||||||
std::clamp(doty, -1.0f, 1.0f);
|
doty = math::clamp(doty, -1.0f, 1.0f);
|
||||||
|
|
||||||
if (rsp.geometry_mode & G_TEXTURE_GEN_LINEAR) {
|
if (rsp.geometry_mode & G_TEXTURE_GEN_LINEAR) {
|
||||||
// Not sure exactly what formula we should use to get accurate values
|
// Not sure exactly what formula we should use to get accurate values
|
||||||
@ -1115,7 +1116,7 @@ static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx *verti
|
|||||||
if (winv < 0.0f) winv = std::numeric_limits<int16_t>::max();
|
if (winv < 0.0f) winv = std::numeric_limits<int16_t>::max();
|
||||||
|
|
||||||
float fog_z = z * winv * rsp.fog_mul + rsp.fog_offset;
|
float fog_z = z * winv * rsp.fog_mul + rsp.fog_offset;
|
||||||
std::clamp(fog_z, 0.0f, 255.0f);
|
fog_z = math::clamp(fog_z, 0.0f, 255.0f);
|
||||||
d->color.a = fog_z; // Use alpha variable to store fog factor
|
d->color.a = fog_z; // Use alpha variable to store fog factor
|
||||||
} else {
|
} else {
|
||||||
d->color.a = v->cn[3];
|
d->color.a = v->cn[3];
|
||||||
|
@ -5,6 +5,13 @@
|
|||||||
#define strdup _strdup
|
#define strdup _strdup
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
namespace math {
|
||||||
|
float clamp(float d, float min, float max) {
|
||||||
|
const float t = d < min ? min : d;
|
||||||
|
return t > max ? max : t;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
namespace Utils {
|
namespace Utils {
|
||||||
std::vector<std::string> SplitText(const std::string text, char separator = ' ', bool keep_quotes = false) {
|
std::vector<std::string> SplitText(const std::string text, char separator = ' ', bool keep_quotes = false) {
|
||||||
std::vector<std::string> args;
|
std::vector<std::string> args;
|
||||||
|
@ -3,6 +3,10 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
namespace Utils {
|
namespace math {
|
||||||
std::vector<std::string> SplitText(const std::string& text, char separator, bool keep_quotes);
|
float clamp(float d, float min, float max);
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace Utils {
|
||||||
|
std::vector<std::string> SplitText(const std::string& text, char separator, bool keep_quotes);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user