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
Lioncash
189b03c001
ITweakPlayerRes: Fix mismatched icon retrievals within ResolveResources()
...
Previously, all of these icons were using the first top icon, rather
than their own respective icons.
This amends that.
2020-02-25 02:07:15 -05:00
Lioncash
5ff100fdd1
DNAMP1/ScriptObjects: Convert SCRIPT_OBJECT_DB into a std::array
...
Now that all elements of the std::vector would otherwise be constexpr,
we can use a std::array here instead, given they're all able to
deterministically be available at compile-time.
This gets rid of a runtime static heap allocation at program start.
2020-02-24 03:42:24 -05:00
Lioncash
2ec236fc45
DNAMP1/ScriptObjects: Trim headers in ScriptObjects.hpp
...
All of these can be migrated into the cpp file, since they're only used
there.
Greatly reduces the amount of work the preprocessor has to do in files
that include this one.
2020-02-24 03:42:05 -05:00