Commit Graph

622 Commits

Author SHA1 Message Date
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
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
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
Phillip Stephens 8d90edd55f
Initial CChozoGhost imp 2020-01-20 20:00:40 -08:00
Phillip Stephens 1a13f7e4ee
Update submodules, initial CTextureCache 2019-12-10 20:51:33 -08: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
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
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
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 a41bd828e7 Update submodules 2019-08-18 18:49:54 -07:00
Phillip Stephens 44ea9e68ed Update submodules 2019-08-17 23:01:05 -07: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 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 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
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 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 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
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 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
Jack Andersen 0b3a9e1865 Implement CPatterned::KnockBack 2018-11-05 20:16:12 -10:00
Jack Andersen 98c7525176 Initially working CEnvFxManager 2018-11-01 22:16:16 -10:00
Jack Andersen 3147b49b3d EVNT extraction fix 2018-10-27 15:22:55 -10:00
Jack Andersen 8fb77eac2c Various bug fixes 2018-10-20 18:14:00 -10:00
Jack Andersen 3f4aeffb17 Merge branch 'shader-refactor' 2018-10-15 17:17:37 -10:00
Jack Andersen 1851308021 Windows fixes 2018-10-14 10:16:21 -10:00
Phillip Stephens bbfe61efbf Various loader implementations 2018-10-11 15:57:05 -07:00
Jack Andersen 1559163f98 Shader refactor bug fixes and attachment model extract/cook 2018-10-11 10:50:05 -10:00
Jack Andersen c91e5df986 Convert to pragma once 2018-10-06 17:42:33 -10:00
Phillip Stephens 489470feda Implement CBomb 2018-09-08 18:13:56 -07:00
Jack Andersen 56eeada360 Windows fixes 2018-09-02 20:34:09 -10:00
Jack Andersen e46ec80b64 Integrate Amuse into hecl cook/extract for MP1/2 2018-09-02 14:46:16 -10:00
Jack Andersen 5a60a0acfc Amuse API changes 2018-08-27 19:44:16 -10:00
Jack Andersen ef1f9d564c Big Door initial animation fix 2018-06-29 15:35:43 -10:00
Jack Andersen d0af2cb4f7 Finish CScriptPlatform 2018-06-29 10:21:36 -10:00
Jack Andersen 3a9e7b2f9b PVS and DCLN bug fixes 2018-06-27 20:47:34 -10:00
Jack Andersen 680cb7b353 Finish CInterpolationCamera 2018-06-27 15:17:01 -10:00
Jack Andersen f8b8211b0f Name PathCamera property fields 2018-06-25 19:42:16 -10:00
Jack Andersen cfe384b5c2 Better octree generation density 2018-06-23 13:09:16 -10:00
Jack Andersen 718d2cb29e Water rendering order fix, morphball visor fixes 2018-06-21 11:04:16 -10:00
Jack Andersen 079c343557 ANIM cook fix; OBB generation crash fix 2018-06-15 16:26:58 -10:00
Jack Andersen 513d9c99cd VisorParameters scan passthrough property 2018-06-15 10:37:00 -10:00
Jack Andersen 5fb95d69d3 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde 2018-06-06 18:44:11 -10:00
Jack Andersen ac424ff9eb Implement CFluidPlaneGPU for GPU-computed water ripples 2018-06-06 18:43:26 -10:00
Phillip Stephens cb2b9fa8bd Initial CScriptGunTurret Implementation 2018-06-04 12:15:35 -07:00
Jack Andersen 357a7efa9a Various bug fixes 2018-06-01 20:06:40 -10:00
Jack Andersen 2c151a0f3b Ensure *all* EVNT resources are extracted 2018-05-27 15:54:55 -10:00