Commit Graph

417 Commits

Author SHA1 Message Date
Phillip Stephens 989c267dce
Minor Blender 3.0 fixes, add ability to override blender in metaforce-gui 2022-01-08 17:56:28 -08:00
Luke Street 5c98ff8b13 hecl/FindBlender: Fixes and cleanup
- GetEnv for Windows returns null-terminator in string
- GetEnv for POSIX could crash with a null pointer to std::string conversion
- FindBlender logic path simplified
2021-11-21 16:39:57 -05:00
Luke Street a2cc6cd204 Merge remote-tracking branch 'darkszero/feature/lazy-commit-resources'
# Conflicts:
#	extern/boo
2021-10-25 23:07:56 -04:00
Luke Street cd4dac6437 hecl: Include <string_view> in Connection.hpp 2021-10-25 19:18:09 -04:00
Luke Street a797e6742b Include <optional> in hecl.hpp 2021-10-25 19:17:51 -04:00
Luke Street 32e115f4aa Merge remote-tracking branch 'origin/main' into utf8
# Conflicts:
#	DataSpec/DNAMP1/FRME.cpp
#	DataSpec/DNAMP1/MLVL.cpp
#	Runtime/CMain.cpp
#	hecl/lib/Blender/Connection.cpp
2021-10-25 19:03:01 -04:00
Phillip Stephens e331c5d5c6
Add Player Transform tools 2021-07-11 17:59:05 -07:00
Phillip Stephens 96680d2660
Add CVarValueReference 2021-07-10 11:32:25 -07:00
Henrique Gemignani Passos Lima 2ad2a5cfa9 Add cvar for when commit resources is done lazily 2021-07-04 02:53:04 +03:00
Luke Street 78f8716150 Fix macOS/Linux issues
- Fixes png lib becoming undefined on macOS
- Auto-detect macports png/Qt paths
- Fixes typos
- Workaround for AppleClang/fmt bug
2021-06-30 16:27:53 -04:00
Luke Street 9ca1a38171 Use UTF-8 exclusively internally
This removes SystemString, SystemChar, etc.
All filepaths and log strings are assumed to be UTF-8,
with conversions to UTF-16 for Windows APIs as appropriate.

Updates amuse, athena, boo, kabufua and nod
2021-06-30 14:20:45 -04:00
Henrique Gemignani Passos Lima d310dcfecb Use StringView in MultiProgressPrinter
Also fixes the SpecMP1/2/3 using string_view instead of SystemStringView
2021-06-28 17:36:56 -04:00
Phillip Stephens 201d5c5423
Don't show menubar by default, use to toggle it 2021-05-30 18:44:02 -07:00
Luke Street 2fc4a9c0e3 Add Layer info overlay 2021-05-30 20:29:35 -04:00
Phillip Stephens 882a58202e
Implement ConsoleVariables window 2021-05-30 17:15:22 -07:00
Phillip Stephens d9b7229e79
Add input visualization, protect first 7 object slots from deletion
The first 7 slots in the game are related to the player, we don't want to allow anyone to delete them because the game *will* crash
2021-05-30 00:52:20 -07:00
Luke Street e9008c9e25 Move all submodules to extern 2021-04-06 15:07:45 -04:00
Luke Street ca94f6974c Updates for fmtlib 7
Update submodules & tracking branches
2021-04-06 12:55:40 -04:00
Luke Street 0e0c7139d7 Add fullscreen CVar 2021-03-30 16:43:54 -04:00
Phillip Stephens c11103350c Make CVarCommons a pseudo singleton 2021-02-27 18:36:43 -08:00
Luke Street bde5f2c007 Fix extraneous CRLFs 2021-02-01 05:12:09 +00:00
Luke Street c78676b1fd Fix GCC compilation for CVar.hpp 2021-02-01 05:09:39 +00:00
Luke Street b7405b76ec Set default graphics API to Vulkan on Windows 2021-01-23 21:16:19 -05:00
Phillip Stephens 55d44ab65f Add CVars for room timers and platform collision rendering 2021-01-16 19:31:14 -08:00
Phillip Stephens 23582bd889 Add debug tool CVars 2021-01-10 18:41:59 -08:00
Luke Street cd81c8cc54 Merge pull request #39 from SirMangler/fpscvar
CVAR: DebugOverlayShowFramerate
2021-01-09 15:07:19 -05:00
SirMangler b748b1a9ac FPSCounter cvar 2021-01-03 19:04:00 +00:00
Phillip Stephens e4d95e768c Update submodules 2020-12-31 13:56:20 -08:00
Phillip Stephens 94e7bacd71 Fix toValue 2020-09-28 21:35:55 -07:00
Phillip Stephens 7fb8bdc602 Add to/fromValue to simplify conversion 2020-09-27 22:42:43 -07:00
Luke Street def89373d9 Update boo; add get/setVariableFrameTime to CVarCommons 2020-09-15 17:09:35 -04:00
Phillip Stephens 19682a58fa Add CVar for displaying random calls 2020-09-13 13:43:15 -07:00
Phillip Stephens 6b56330254 Add m_logFile to CVarCommons, increase VertexBufferPool max size for CCredits 2020-09-05 18:30:51 -07:00
Luke Street c0688de578 Merge branch 'typedvariant-fix' 2020-04-19 19:32:35 -04:00
Lioncash c4e1d11f35 TypedVariant: Test 2020-04-19 00:54:18 -04:00
Luke Street 219211d9a7 CVarCommons: Fix variableDt cvar type 2020-04-18 06:08:48 -04:00
Luke Street 89a1cedba1 Move Editor cvars to CVarCommons 2020-04-14 15:20:00 -04:00
Luke Street aba42eba52 Add variableDt cvar 2020-04-14 14:40:03 -04:00
Jack Andersen 6a8714c1f3 Update fmtlib 2020-04-11 12:48:11 -10:00
Jack Andersen 7ce829d134 Fix PyOutStream streambuf for MS STL 2020-04-10 18:58:06 -10:00
Jack Andersen 8fd6664984 Additional addon features for MP3 2020-04-09 17:19:33 -10:00
Lioncash 57fa706311 hecl: Allow Time instances to be constexpr
Some constructors accept primitive values. These can be made constexpr.
2020-04-05 09:35:31 -04:00
Lioncash b5a26d5136 VertexBufferPool: Make Token move constructor and move assignment noexcept
Same behavior, but allows the type to be used nicely with containers and
move facilities that rely on std::move_if_noexcept.
2020-04-05 09:28:05 -04:00
Lioncash caca49b3bd UniformBufferPool: Make Token move constructor and move assignment noexcept
Allows the type to be used with containers and facilities that make use
of std::move_if_noexcept, etc.
2020-04-05 09:26:29 -04:00
Lioncash c48303c2c2 Database: Add missing const qualifier 2020-04-05 09:21:58 -04:00
Lioncash 613b503cd6 FourCC: Remove constexpr from IStreamReader constructor
IStreamReader isn't constexpr, so this will result in a compilation
error if used.
2020-04-05 09:13:29 -04:00
Jack Andersen e7f17d56c2 Add IStreamReader overloaded constructor to DNAFourCC 2020-03-28 18:10:55 -10:00
Lioncash eebb25a39c hecl/hecl: Allow CaseInsensitiveCompare to be used with heterogenous lookup
It's quite common to see maps or sets that make use of a string->object
association, usually as <std::string, T>. However, this can result in
inefficient code when performing lookups or indexing, as something like:

std::map<std::string, T> some_map;

...

auto iter = some_map.find("Name");

...

will result in a std::string instance being constructed around "Name",
which is less than ideal.

With a heterogenous comparator, however (such as std::less<>), like:

std::map<std::string, T, std::less<>>

we allow the container to do automatic type deduction and comparisons.
This allows types comparable to the key type to be used in find calls,
etc, without actually needing to construct the key type around the other
type.

The main way to enable containers to perform such behavior is by
defining a type named is_transparent within the comparator type.
2020-02-24 04:31:55 -05:00
Lioncash a0e6ec0de7 Console: Make State enum an enum class
Makes the enum strongly typed and impervious to implicit conversions.
2019-10-21 01:53:05 -04:00
Lioncash 12d6a5ce05 Console: Make isOpen() a const member function
This member function doesn't modify internal member state, so it can be
turned into a const qualified member function.
2019-10-21 01:49:23 -04:00