2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-10-03 05:59:38 +00:00

2202 Commits

Author SHA1 Message Date
Lioncash
9ec19d99cd hecl/hecl: Make hash constructors explicit where applicable 2019-08-15 03:06:56 -04:00
Lioncash
06548409f8 hecl/hecl: Make Hash constexpr 2019-08-15 03:00:42 -04:00
Lioncash
216b038a7d hecl/SystemChar: Unify StrLen implementations and make constexpr
We can utilize std::char_traits to generically handle the defined
character type. Since C++17, std::char_traits' length() function is
constexpr, so we can also make StrLen constexpr.
2019-08-15 02:28:31 -04:00
Lioncash
58e0c7eaa7 hecl/SystemChar: Cast to unsigned char before calling tolower/toupper
Performed for the same reasons outlined within
b32f16b519eafacb9de4852855486270f73d5e2e (avoiding undefined behavior).
2019-08-15 02:28:31 -04:00
Lioncash
b63d848846 hecl/hecl: Amend lingering formatting inconsistencies
Amends formatting issues that were pre-existing to get them out of the
way.
2019-08-15 02:28:09 -04:00
Lioncash
485782e3a7 hecl/hecl: Convert typedefs to using aliases
Same thing, but slightly nicer to read.
2019-08-15 02:26:12 -04:00
Lioncash
eb872cdf88 hecl/hecl: Assign ResourceLock's good member in the initializer list
Same behavior, but more idiomatic. While we're at it, we can make said
constructor and the conversion operator explicit to make the class a
little less error-prone.
2019-08-15 02:26:12 -04:00
Lioncash
92b87676c2 hecl/hecl: Make Entry take SystemString by value and move it
This allows callers to move into the constructor and subsequently move
into the member variable, avoiding copies altogether.
2019-08-15 02:26:12 -04:00
Lioncash
dae3e6123f hecl/hecl: Make string conv operator+ instances friend functions
Makes both operators symmetrical to one another.
2019-08-15 02:26:12 -04:00
Lioncash
c7aae83a75 hecl/hecl: Slightly improve resource usage within string conv operator+ funcs
We already construct a std::string instance, so we can just append to
it instead of creating another temporary with std::string's operator+.
We also change this to append using the string view getter functions, as
this allows the appending process to do less work. When a pointer is
passed in, a strlen call would need to be performed in order to
determine the total characters to append. However, we already know the
size (via the string view).
2019-08-15 02:26:12 -04:00
Lioncash
c513a4b61f hecl/hecl: Make use of std::char_traits with StrNCmp
Same behavior, but allows removing the use of ifdefs, unifying the code
paths.
2019-08-15 02:26:12 -04:00
Lioncash
ef6b41ea15 hecl/hecl: Amend string functions operating on string views to use interface functions
We don't really need to call out to the C functions to perform the
comparison behavior when the views already have a comparison function
as part of their interface.
2019-08-15 02:26:03 -04:00
Lioncash
e0b5a4e2f7 hecl/hecl: Cast to unsigned char before calling std::isspace
std::string_view instances can contain character values that lie outside
the range of an unsigned char (negative values). If such a value is
passed into std::isspace, then the behavior of the function is
undefined. To avoid this, we add these casts.
2019-08-15 01:21:10 -04:00
Lioncash
91ff474c44 hecl/hecl: Handle bounded strings within CaseInsensitiveCompare
std::string_view instances aren't guaranteed to be null-terminated, so
we shouldn't be treating them as if they are in these functions, and
should instead use a bounded comparison based off their sizes.

This way we prevent an edge-case from ever becoming a problem and also
remove an ifdef, making the code uniform across all implementations.
2019-08-15 01:21:04 -04:00
9dc1373201 Update boo 2019-08-14 06:52:24 -07:00
78e88679a9 Update boo 2019-08-13 14:40:21 -07:00
a7c97b313c Update athena 2019-08-10 17:47:40 -07:00
Jack Andersen
0ab08daae7 Windows build fixes 2019-07-27 15:21:31 -10:00
Jack Andersen
7b05b41d34 Windows build fixes 2019-07-27 15:19:48 -10:00
Jack Andersen
5acf9ecbcf Graphics debug groups and bug fixes 2019-07-20 22:42:52 -10:00
Jack Andersen
08d15514a9 Update submodules 2019-07-20 22:42:03 -10:00
Jack Andersen
7a3da1f7a6 Massive fmtlib refactor 2019-07-19 18:27:21 -10:00
Jack Andersen
6988f86672 Massive fmtlib refactor 2019-07-19 18:22:58 -10:00
Jack Andersen
e38a3ece89 More CBabygoth fixes 2019-07-06 22:22:35 -10:00
Jack Andersen
b483acb8d3 Update submodules 2019-07-06 22:21:39 -10:00
97ae6fbe98 Fix codesign failure 2019-07-01 02:22:17 -07:00
efa7463a9a shaderc metal "error" fix 2019-07-01 01:26:42 -07:00
c30703209f Fix macOS builds finally 2019-06-30 21:04:24 -07:00
cfd365bebe Update boo 2019-06-30 21:03:54 -07:00
46c570f8a6 Update submodules 2019-06-30 20:41:06 -07:00
b251de5fd0 Update boo 2019-06-30 20:40:26 -07:00
975b275334 Update submodules 2019-06-30 20:17:13 -07:00
385f60cea3 Update boo 2019-06-30 20:15:40 -07:00
Jack Andersen
77af3f0ebd CPuddleToadGamma and animation system fixes 2019-06-20 20:02:56 -10:00
Jack Andersen
3256a05a99 Update boo 2019-06-20 20:02:34 -10:00
Jack Andersen
9ccc4227cb Initial support for asynchronous shader compilation 2019-06-15 20:25:29 -10:00
Jack Andersen
49eb971037 Update boo 2019-06-15 20:25:03 -10:00
Jack Andersen
37307e1cf6 Various CActorContraption fixes 2019-06-14 14:39:20 -10:00
Jack Andersen
4fa1a2f3b7 Fixes for ANCS cooking 2019-06-14 14:37:53 -10:00
Jack Andersen
6679f6de72 Windows build fixes 2019-06-12 15:33:35 -10:00
Jack Andersen
31caec79dd Windows build fixes 2019-06-12 15:29:52 -10:00
Jack Andersen
e218b8aeb5 CActorContraption fixes, better CMake dependency handling 2019-06-11 16:05:17 -10:00
Jack Andersen
387f8fa864 Blender Python API updates and better CMake dependency handling 2019-06-11 16:01:19 -10:00
Jack Andersen
b7aa3e06d2 Per-stage shader hashing 2019-06-05 14:07:50 -10:00
Jack Andersen
7cc157c8b9 Support for per-stage shader hashing 2019-06-05 14:07:29 -10:00
Jack Andersen
5e60131062 Metal Cubemaps 2019-06-02 21:51:44 -10:00
Jack Andersen
82fc24ebe6 Update boo 2019-06-02 21:51:26 -10:00
Jack Andersen
4a4cf58b6f HLSL cubemaps 2019-05-31 23:28:12 -10:00
Jack Andersen
4de7e2c0d6 Update boo 2019-05-31 23:27:44 -10:00
Jack Andersen
410d7896f7 Support for rendering dynamic cubemaps 2019-05-31 17:41:01 -10:00