Commit Graph

852 Commits

Author SHA1 Message Date
Jack Andersen ad411a940b Merge branch 'mp2-fixes' of ssh://git.axiodl.com:6431/AxioDL/urde into mp2-fixes 2020-04-09 17:20:48 -10:00
Jack Andersen 380cc13abb Fixes for MP3 2020-04-09 17:20:20 -10:00
Luke Street 859d5e9068 DNAMP2: Mark FrontEnd as non-shared 2020-04-09 22:46:09 -04:00
Jack Andersen e858c929e3 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde into mp2-fixes 2020-04-09 13:04:37 -10:00
Jack Andersen a668a623cb Exclude bitmap3 from MP3's PATH 2020-04-08 20:03:52 -10:00
Jack Andersen e4ade45fd1 Remove unnecessary includes 2020-04-08 19:50:29 -10:00
Jack Andersen 73f245ee27 Specialize PATH by PAKBridge 2020-04-08 19:46:40 -10:00
Jack Andersen df229671c4 MP2 PATH support 2020-04-08 19:19:50 -10:00
Jack Andersen 5b0a4b5f60 Implement MP2 shader extraction presets 2020-04-08 16:24:18 -10:00
Lioncash fa2f37a14c DNAMP3/PAK: Make use of unique_ptr in getBuffer()
Same motivation as the previous change: seating the allocated memory
into a type that will always do the right thing immediately, rather than
later.
2020-04-05 10:20:59 -04:00
Lioncash 9e503edaf1 PAK: Make use of unique_ptr in getBuffer()
Same behavior, however we seat the allocated memory into a unique_ptr
from the get-go to prevent any possible memory being leaked.
2020-04-05 10:16:09 -04:00
Lioncash 11c40415f5 TXTR: Mark constexpr functions static
Same behavior, but makes them internally linked.
2020-03-31 20:36:45 -04:00
Lioncash d3295cbb87 TXTR: Make use of const(typedefs) where applicable
Same behavior, but signifies read-only semantics.

Also resolves a few -Wcast-qual warnings.
2020-03-31 17:36:17 -04:00
Lioncash 8132375c69 TXTR: Eliminate variable shadowing 2020-03-31 17:02:55 -04:00
Lioncash d337327b97 DNACommon: Mark hash overloads as noexcept
These functions shouldn't throw at all.

By extension, also mark the UniqueID class interfaces as noexcept.
2020-03-31 16:55:19 -04:00
Lioncash 96fa7af8b5 STRG: Convert file-scope std::vector to std::array
Eliminates a runtime-static constructor and heap allocation at program
start.
2020-03-31 14:15:09 -04:00
Lioncash 16c37abf79 DNAMP3: Prevent unnecessary copies 2020-03-31 13:24:34 -04:00
Lioncash 93f107cb79 STRG: Avoid unnecessary copies
Makes several functions significantly less copy intensive. See previous
commit for reason.
2020-03-31 13:23:21 -04:00
Lioncash 3d0270cf82 DNAMP2: Prevent unnecessary copies
Auto-deduces the exact type instead of using a similar, but slightly off
pair type (which causes a copy).
2020-03-31 13:19:50 -04:00
Lioncash d8ed1a5e79 RetroDataSpec: Convert typedefs to using aliases
Same behavior, but nicer to read.
2020-03-31 13:11:24 -04:00
Lioncash 9ef2fbba5a RetroDataSpec: Make use of make_unique where applicable
Same behavior, but without a mildly wonky way of performing it.
2020-03-31 13:06:27 -04:00
Lioncash 53694481e5 SpecMP2: Make use of emplace_back()'s return value
Same behavior, less code.
2020-03-31 12:46:20 -04:00
Lioncash e6f217bf25 SpecMP2: Prevent unnecessary copies in buildPaks()
Uses auto to properly deduce the intended return type in iteration (pair
with a const string), which prevents a copy from needing to be
generated.
2020-03-31 12:43:42 -04:00
Lioncash 97fd815afa SpecMP1: Make use of emplace_back() where applicable
Same behavior, but allows in-place construction.
2020-03-31 12:40:37 -04:00
Lioncash 9af90efb7d SpecMP1: Make use of emplace_back()'s return value
Same behavior, less code.
2020-03-31 12:38:31 -04:00
Lioncash 305262eb29 SpecMP1: Prevent unnecessary copies in buildPaks
Previously the type mismatched by a single const qualifier, which meant
a copy would have to occur.

Instead, we can use auto to avoid this issue from occurring and allowing
the proper type to be automatically deduced.
2020-03-31 12:36:18 -04:00
Lioncash ac28575e9d SpecMP3: Make use of emplace_back()'s return value
Same behavior, less code.
2020-03-31 12:33:51 -04:00
Lioncash be1d77f550 SpecMP3: Remove unnecessary initializer 2020-03-31 12:33:51 -04:00
Lioncash 94c4c0f102 SpecMP3: Prevent unnecessary copies
Prevents iterating over elements by value and also uses auto to ensure
the iterated item matches 1:1.
2020-03-31 12:32:57 -04:00
Lioncash 315becf1b5 ATBL: Collapse std::vector construction and resize into one another
Same behavior, less code.
2020-03-31 07:36:26 -04:00
Lioncash 3e084d2ae2 AROTBuilder: Convert defines into constexpr variables
Same behavior, but with concrete types.
2020-03-31 07:33:25 -04:00
Lioncash da4b1d5e7d AROTBuilder: Collapse manual loops into ranged for loops
Same behavior, minus the induction variable to follow
2020-03-31 07:31:04 -04:00
Lioncash 84141eeb25 AROTBuilder: Eliminate variable shadowing 2020-03-31 07:31:04 -04:00
Lioncash a2709f1d20 AROTBuilder: Make use of std::array where applicable
While we're at it, we can dehardcode some sizes.
2020-03-31 07:31:01 -04:00
Jack Andersen 76fc829c6b Merge branch 'new-particle-metaclass' 2020-03-30 11:38:01 -10:00
Lioncash 8d0a8ea52e SCAN: Convert file-scope std::vector into constexpr std::array
Same behavior, but without any runtime heap allocations at program
start.
2020-03-29 08:46:03 -04:00
Jack Andersen 566b15766c Refactor particle serialization to use generative meta-information 2020-03-28 21:29:27 -10:00
Phillip Stephens 0c3d6c7f27
Initiaal material imps 2020-03-24 23:13:31 -07:00
Phillip Stephens eb9efbf8c3
Initial PATH support for MP2 2020-03-17 23:12:43 -07:00
Phillip Stephens 25842949a9
Initial MP2 fixes 2020-03-17 15:56:14 -07:00
Phillip Stephens 1c5fd85b57
Correct ITweakPlayerRes offset 2020-03-01 16:56:38 -08:00
Luke S be51b0323f
Merge pull request #169 from lioncash/array
ITweakPlayerRes: Make use of std::array where applicable
2020-02-28 10:35:57 -05:00
Luke S 1cfe88fab1
Merge pull request #168 from lioncash/bind
SpecBase: Remove redundant std::bind
2020-02-28 10:35:30 -05:00
Lioncash 3f3b0e6ba8 ITweakPlayerRes: Make use of std::array where applicable
Performs the same changes that were recently applied to ITweakGunRes for
consistency. Also eliminates some sign conversion warnings and
deduplicates some array sizes.
2020-02-28 01:50:32 -05:00
Lioncash be4252127b SpecBase: Remove redundant std::bind
std::thread can already execute the supplied function as is without the
assistance of std::bind.
2020-02-28 01:25:14 -05:00
Lioncash fc3ef2fddd SpecBase: Flatten loop within flattenDependenciesBlend()
We can use insert() with make_move_iterator() to perform the same
behavior, minus unnecessary copies.

While we're at it, we can collapse the code within the Area case, since
it's the exact same as the Mesh code.
2020-02-26 14:52:20 -05:00
Luke S 08604d770a
Merge pull request #163 from lioncash/data
ITweakGunRes: Minor cleanup
2020-02-25 22:32:25 -05:00
Lioncash e80d9c7192 ITweakGunRes: Make use of std::array where applicable
Deduplicates a few array sizes and makes the member variables more
strongly typed.
2020-02-25 15:50:37 -05:00
Lioncash b608a72aad ITweakGunRes: Remove unnecessary c_str() calls
These functions already return the data type that GetResourceIdByName()
expects. Has the side-effect of also eliminating unnecessary strlen
calls.
2020-02-25 15:34:22 -05:00
Lioncash a92bc16265 ITweakPlayerRes: Remove unnecessary calls to .data()
All of these functions return a string_view, which is accepted by
GetResourceIdByName(), so this avoids several unnecessary std::strlen
calls.
2020-02-25 02:09:45 -05:00