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
Lioncash
e27ac1e2a1
DNAMP1/ScriptObjects: Eliminate several runtime static constructors
...
All of these entries make use of captureless lambdas, so there's no need
to make use of std::function. We can just use a regular function
pointer, which allows making all of the file-static entries within
IScriptObject constexpr. Eliminating all of their runtime static
constructors.
2020-02-24 03:20:39 -05:00
Jcw87
7be3f4febb
Fixed character type mismatch.
2020-02-15 12:24:50 -08:00
Phillip Stephens
8d90edd55f
Initial CChozoGhost imp
2020-01-20 20:00:40 -08:00
Luke Street
56c3221733
Merge branch 'blender2.81'
2019-12-22 18:32:55 -05:00
Phillip Stephens
1a13f7e4ee
Update submodules, initial CTextureCache
2019-12-10 20:51:33 -08:00
Luke Street
cce11d3cd9
Blender 2.81 support
2019-12-10 18:45:55 -05:00
Phillip Stephens
34e78a2dd0
Move CParticleGlobals from the executable and onto the heap, minor fixes, update wiki link
2019-12-03 00:47:05 -08:00
Phillip Stephens
9e2486ba0e
Use `std::string::empty` rather than string comparison
2019-10-13 19:47:24 -07:00
Phillip Stephens
6260708ba4
Cook/cache fixes for unset original IDs
2019-10-13 19:45:43 -07:00
Phillip Stephens
5f0f3ea45c
More tweak CVars
2019-10-05 07:07:13 -07:00
Jack Andersen
e1d46755a3
Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde
2019-09-30 21:41:42 -10:00
Jack Andersen
16ca0d24c2
Explicit Asset ID refactor
2019-09-30 21:38:03 -10:00
Phillip Stephens
79ac5d76df
Update hecl, more CVar imps
2019-09-29 08:17:55 -07:00
Phillip Stephens
56b198838f
Update hecl
2019-09-29 05:44:37 -07:00
Lioncash
5b7f159233
General: Be explicit about athena's Endian type
...
Allows this code to still compile if the Endian type is ever changed
into a strong enumeration.
2019-09-14 11:01:01 -04:00
Lioncash
bf818a883e
DataSpec: Be explicit about athena's SeekOrigin type
...
This was missed in 9c0d13f001
2019-09-08 16:44:02 -04:00
Lioncash
9c0d13f001
DataSpec: Be explicit about athena's SeekOrigin type
...
Allows code to still function properly if the enum is changed into an
enum class.
2019-09-07 21:20:01 -04:00
Phillip Stephens
c2777b42f8
Merge pull request #55 from lioncash/typo
...
WPSC: Correct typo within WPSM's _read() function
2019-09-06 23:20:29 -07:00
Lioncash
8556a74196
WPSC: Correct typo within WPSM's _read() function
...
This should be calling read() on xunk_SPS1, not xunk_SPS2
2019-09-06 08:42:35 -04:00
Lioncash
66ce2774d5
DNAMP1/CTweakPlayerGun: Prevent array overrun cases
...
These arrays are both 5 elements in size. Accessing them at index 5
would be out of bounds.
2019-09-06 08:13:10 -04:00
Lioncash
7a0e7f449e
PAK: Make operator bool() explicit for PAKEntryReadStream
...
Prevents potential error-prone conversions to bool.
2019-09-05 00:59:32 -04:00
Lioncash
107dfc4203
PAK: Zero initialize m_sz and m_pos of PAKEntryReadStream
...
Provides a deterministic initial state for the members in the case of
the default constructor.
2019-09-05 00:57:57 -04:00
Lioncash
da89e7cf45
SpecBase: Add missing includes
2019-09-04 19:30:04 -04:00
Jack Andersen
ca0ca94b18
Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde
2019-08-31 10:40:41 -10:00
Jack Andersen
cffb56a24e
MacOS build fixes
2019-08-31 10:40:07 -10:00
Phillip Stephens
256994c199
Initial CEnergyBall, update submodules, various fixes
2019-08-31 02:02:21 -07:00
Phillip Stephens
3ca09f60db
atdna fixes
2019-08-26 20:02:31 -07:00
Lioncash
1d3062b33f
General: Make use of FopenUnique where applicable
...
Migrates to the hecl Fopen variant that automatically closes its
contained file handle if it goes out of scope.
2019-08-26 15:03:58 -04:00
Phillip Stephens
4ac54f39cd
Merge branch 'fwd' of https://github.com/lioncash/urde into lioncash-fwd
2019-08-23 20:43:15 -07:00
Lioncash
7f7a18a708
DataSpec/DNACommon: Resolve indirect includes where applicable
...
Avoids indirect inclusions where applicable and includes the necessary
headers as used by the interface. This way, it prevents code from
failing to compile due to changes in other header inclusions.
2019-08-23 22:03:03 -04:00
Phillip Stephens
f2b551b89b
Minor compile fixes, fix potential undefined behavior in CMDL.cpp
2019-08-23 17:09:21 -07:00
Lioncash
b064967de8
DNACommon: Replace platform-specific string conversion functions with standard facilities
...
These can be replaced with std::strtoull and std::wcstoull, eliminating
a platform-specific ifdef.
2019-08-23 14:27:00 -04:00
Phillip Stephens
a41bd828e7
Update submodules
2019-08-18 18:49:54 -07:00
Phillip Stephens
44ea9e68ed
Update submodules
2019-08-17 23:01:05 -07:00
Phillip Stephens
d4b36699b7
Merge pull request #43 from lioncash/spec-const
...
RetroDataSpec: Make member functions const where applicable
2019-08-15 07:46:46 -07:00
Lioncash
11098374a4
RetroDataSpec: Use fmt::print where applicable
...
Replaces uses of fprintf with fmt::print where applicable. For trivial
character insertion, we can make use of fputc instead of fprintf.
2019-08-14 22:44:49 -04:00
Lioncash
2517fac404
RetroDataSpec: Make member functions const where applicable
...
Marks member functions that don't modify instance state as const.
2019-08-14 22:25:15 -04:00
Phillip Stephens
ad5e395a51
Fixes for `override` modernization
2019-08-10 17:49:41 -07:00
Lioncash
a5a2516138
RetroDataSpec: Use override where applicable
...
Continues the override modernizations, applying the keyword where
applicable to the RetroDataSpec target.
2019-08-10 00:24:30 -04:00
Phillip Stephens
1d3e5cdb70
Implement Oculus loader
2019-08-09 14:55:59 -07:00
Phillip Stephens
ff83dbc676
Minor fixes and cleanup
2019-08-03 17:02:53 -07:00
Phillip Stephens
9d2cbf61ed
Add texture cache containing information about textures
2019-08-03 16:44:52 -07:00
Jack Andersen
0ab08daae7
Windows build fixes
2019-07-27 15:21:31 -10:00
Jack Andersen
b4fe474de3
Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde
2019-07-19 18:29:06 -10:00
Jack Andersen
7a3da1f7a6
Massive fmtlib refactor
2019-07-19 18:27:21 -10:00
Phillip Stephens
9579900706
Fix WorldTeleporter derp
2019-07-19 09:50:01 -07:00
Phillip Stephens
1a9ca77603
Update ScriptObject DNAs to match known values
2019-07-19 01:30:11 -07:00
Phillip Stephens
cdf9545de4
Fix MemoryRelay handling in DataSpec
2019-07-16 19:10:57 -07:00
Phillip Stephens
7ec637034b
Update file download locations
2019-07-12 01:06:23 -07:00
Jack Andersen
003146f614
Work on CBabygoth
2019-06-29 21:29:49 -10:00
Jack Andersen
77af3f0ebd
CPuddleToadGamma and animation system fixes
2019-06-20 20:02:56 -10:00
Jack Andersen
87023b432e
Fixes in ANIM cooking
2019-06-15 16:22:23 -10:00
Jack Andersen
37307e1cf6
Various CActorContraption fixes
2019-06-14 14:39:20 -10:00
Jack Andersen
e218b8aeb5
CActorContraption fixes, better CMake dependency handling
2019-06-11 16:05:17 -10:00
Jack Andersen
486c925a45
Merge branch 'shader-refactor'
2019-05-10 13:10:12 -10:00
Jack Andersen
233d13ceb9
Refactor for blender 2.8 and new shader model
2019-05-07 17:50:21 -10:00
Phillip Stephens
28071851ad
Initial CFlameThrower imps
2019-04-16 01:00:46 -07:00
Jack Andersen
3a0d2930fa
Numerous uninitialized memory fixes
2019-04-06 19:14:48 -10:00
Jack Andersen
b72cc490e8
Implement CFishCloud
2019-04-02 18:32:31 -10:00
Jack Andersen
a63a61fef8
Implement CWallCrawlerSwarm
2019-03-23 22:06:59 -10:00
Jack Andersen
99b1a8ef49
Lots of bug fixes
2019-03-12 17:46:20 -10:00
Jack Andersen
f40bf707f6
DCLN OBB transform fix
2019-03-07 18:16:42 -10:00
Jack Andersen
8b9f073635
Various rendering fixes
2019-03-02 20:19:42 -10:00
Jack Andersen
ca5cf5c77c
Cook all AGSCs simultaneously
2019-02-28 10:34:59 -10:00
Jack Andersen
8df0a4913c
zeus constexpr refactor and thermal visor fixes
2019-02-23 21:15:54 -10:00
Jack Andersen
1186b8097c
Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde
2019-02-17 19:48:01 -10:00
Jack Andersen
48eaa2545b
Working CScriptGunTurret
2019-02-17 19:47:46 -10:00
Phillip Stephens
fb1f65434d
Fix IA8 texture decoding
2019-02-16 09:16:34 -08:00
Phillip Stephens
c1c22eb065
Fix IA4 encoding/decoding
2019-02-11 17:58:12 -08:00
Jack Andersen
01af7b735d
Implement CScriptSpindleCamera
2019-02-09 18:41:35 -10:00
Jack Andersen
7d29c6e25a
More bug fixes
2019-01-30 21:52:21 -10:00
Jack Andersen
c9a38c567f
Fix for extracting animations which animate undefined bones
2019-01-29 11:36:43 -10:00
Jack Andersen
851e113dc0
Implement CWarWasp
2019-01-15 18:22:44 -10:00
Jack Andersen
f9b0614327
Various bug fixes
2019-01-04 22:34:09 -10:00
Jack Andersen
d60fcc99c9
Fix CNewIntroBoss and particle bugs
2019-01-04 17:28:02 -10:00
Jack Andersen
5b55320e9b
Implement CPlasmaProjectile
2019-01-02 17:47:28 -10:00
Jack Andersen
147a9396c4
CBeetle implementation
2018-12-30 19:01:42 -10:00
Jack Andersen
e716d05cec
Switch to lzokay library
2018-12-19 17:45:48 -10:00
Jack Andersen
f184291461
ANCS PAS I/O fix
2018-12-15 20:32:07 -10:00
Jack Andersen
dac8fc3eb5
Space pirate bug fixes
2018-12-14 20:29:41 -10:00
Jack Andersen
ec1cb75b25
Finish CSpacePirate implementation
2018-12-12 21:39:16 -10:00
Jack Andersen
636c82a568
New code style refactor
2018-12-07 19:30:43 -10:00
Jack Andersen
7c7da6671a
SIMD refactor
2018-12-07 15:49:15 -10:00
Jack Andersen
e1fa938127
Work on CSpacePirate
2018-11-25 16:15:44 -10:00
Phillip Stephens
ea4848196a
Implement CNewIntroBoss
2018-11-16 21:05:57 -08:00
Jack Andersen
cc4a895818
Finish CSteeringBehaviors
2018-11-15 20:06:20 -10:00
Jack Andersen
660e7cd239
Work on CParasite
2018-11-12 23:20:11 -10:00
Jack Andersen
d4bb7d64eb
All CPatterned functions implemented
2018-11-10 17:27:54 -10:00
Jack Andersen
87e5aea6f5
Correct handling of empty skinned models
2018-11-08 20:57:16 -10:00
Jack Andersen
3f7431286c
Handle triple-overdraw edge case
2018-11-08 18:34:49 -10:00
Jack Andersen
304fc7e69e
More reliable 2-face model extraction
2018-11-08 14:25:55 -10:00
Jack Andersen
1aab0528f3
Various bug fixes
2018-11-07 14:53:38 -10:00