Commit Graph

342 Commits

Author SHA1 Message Date
Lioncash 902f4fb5c5 Graphics/Shaders: Use forward declarations where applicable
Now, with all of the headers normalized, we can safely convert some
headers into forward declarations without needing to worry about
potentially breaking code in other headers or source files.
2019-11-09 20:22:09 -05:00
Phillip Stephens d2e9495686
Merge pull request #96 from lioncash/array2
CFinalInput, ControlMapper: Use std::array where applicable
2019-10-01 06:43:23 -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
Lioncash dc565969e6 CFinalInput: Use std::array where applicable
Allows simplifying copies and gets rid of hardcoded size values.
2019-10-01 01:59:56 -04:00
Lioncash 36d04456dd General: Normalize RuntimeCommonB include paths
Finishes the normalizing of all of includes within the RuntimeCommonB target's headers.
2019-09-23 17:22:37 -04:00
Lioncash 06789d1860 General: Normalize several headers' include paths
Normalizes the include paths and makes them consistent. Also adds any
missing includes relevant to the interface.
2019-09-22 20:36:33 -04:00
Phillip Stephens 68e2fad74f
Fix TCastTo.hpp inclusions, add comment to warn against modifying include path 2019-09-21 06:07:13 -07:00
Phillip Stephens a89852fc46
Merge pull request #79 from lioncash/trunc
CAuiEnergyBarT01: Prevent truncation within DownloadBarCoordFunc
2019-09-21 05:44:27 -07:00
Lioncash 3f06dd0a64 CAuiEnergyBarT01: Prevent truncation within DownloadBarCoordFunc
Without float literals, the calculation is performed in double precision
and then truncated down to float implicitly.
2019-09-19 22:31:46 -04:00
Lioncash 04cc300019 CGuiWidgetDrawParms: Mark Default instance as const
This isn't ever modified, so it can be made const to prevent
unintentional modification (and allow it to be placed within the RO
segment).
2019-09-19 21:46:11 -04:00
Phillip Stephens 613f690c42
Merge pull request #66 from lioncash/lockfire
CCompoundTargetReticle: Fix typo in lock fire string
2019-09-13 00:11:37 -07:00
Lioncash 0aa749ce0c CCompoundTargetReticle: Fix typo in lock fire string
In the actual game executable, the string is stored with a lower-case 'i', not an upper-case one.
2019-09-12 06:40:52 -04:00
Lioncash 20696fd500 CCompoundTargetReticle: Declare file-scope strings as arrays
Reduces the overall size of the resulting binary, as only the string
data will be stored rather than the string and a pointer pointing to
said string data.
2019-09-12 06:38:05 -04:00
Lioncash 267fd2962a CCompoundTargetReticle: Move private strings into the cpp file
This is an internal detail, so we don't need to expose this in the
header,
2019-09-12 05:45:53 -04:00
Lioncash f9079f0215 Runtime: Make use of std::make_unique where applicable
Makes use of the C++14 make_unique allocation function to allocate class
instances where applicable instead of a reset with a new operator within
it.

This doesn't touch cases where buffers are allocated, given make_unique
would zero-initialize them.
2019-09-12 04:09:48 -04:00
Lioncash d5fa8b72b0 CStringTable: Remove unnecessary initializer
std::unique_ptr always initializes to nullptr. We can remove this
implicit convertion from 0 to nullptr.
2019-09-01 03:16:54 -04:00
Lioncash e23dfbd8db CStringTable: Use std::array instead of std::vector
Gets rid of a static constructor, as well as a few heap allocations
2019-09-01 03:13:45 -04:00
Lioncash d3d629d405 RuntimeCommon: Use const on member functions where applicable
Adds missing const qualifiers on class member functions that don't
modify instance state.
2019-08-14 09:25:39 -04:00
Phillip Stephens 5eaa7a23e8 Merge branch 'override' of https://github.com/lioncash/urde 2019-08-09 06:27:54 -07:00
Lioncash 2059535b55 RuntimeCommonB: Use the override specifier where applicable
Applies the override keyword where applicable to indicate visually where
member function overriding is occurring. This only targets
the RuntimeCommonB target as a starting point, which resolves around
900+ cases where the keyword could be used.
2019-08-09 09:13:26 -04:00
Lioncash af8731f2d2 GuiSys/CInstruction: Correct erroneous assignment in TestLargestFont
Without this, x20_largestMonoW will never be any value other than zero,
which is indicative of a logic bug.
2019-08-09 07:08:04 -04:00
Jack Andersen 5acf9ecbcf Graphics debug groups and bug fixes 2019-07-20 22:42:52 -10:00
Jack Andersen 7a3da1f7a6 Massive fmtlib refactor 2019-07-19 18:27:21 -10:00
Jack Andersen e218b8aeb5 CActorContraption fixes, better CMake dependency handling 2019-06-11 16:05:17 -10:00
Jack Andersen 3a0d2930fa Numerous uninitialized memory fixes 2019-04-06 19:14:48 -10:00
Jack Andersen 52b36795ac Proper handling for persistently resident resources 2019-03-09 23:37:36 -10:00
Jack Andersen 2f963b9ce3 Various bug fixes 2019-03-08 22:58:27 -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 ad2681f857 Windows fixes 2019-01-28 22:28:35 -10:00
Jack Andersen 137968ecc7 Bug fixes and CAutoMapper mouse events 2019-01-22 21:52:19 -10:00
Jack Andersen aeb6a9a147 More mouse events for pause screen 2019-01-21 18:23:51 -10:00
Jack Andersen f3f9924309 Initial mouse events for pause screen 2019-01-20 18:10:34 -10:00
Jack Andersen 47c6b5cba8 Bug fixes and CGuiFrame mouse events 2019-01-19 20:43:11 -10:00
Jack Andersen f9b0614327 Various bug fixes 2019-01-04 22:34:09 -10:00
Jack Andersen b7f35e0528 CRelAngle fix 2018-12-16 17:52:51 -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 9c88971df6 Initial CSpacePirate and rag doll imps 2018-11-23 22:09:35 -10:00
Jack Andersen 427f5d8786 Various bug fixes 2018-10-26 20:16:12 -10:00
Jack Andersen c91e5df986 Convert to pragma once 2018-10-06 17:42:33 -10:00
Jack Andersen c307e354ca Huge shader refactor 2018-10-06 16:59:17 -10:00
Jack Andersen e46ec80b64 Integrate Amuse into hecl cook/extract for MP1/2 2018-09-02 14:46:16 -10:00
Jack Andersen 718d2cb29e Water rendering order fix, morphball visor fixes 2018-06-21 11:04:16 -10:00
Jack Andersen cd3bba2f0e Working grapple beam 2018-06-20 14:57:57 -10:00
Jack Andersen a5f25bf3f4 Fix water rendering 2018-06-02 20:11:39 -10:00
Jack Andersen 98549a7785 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde 2018-05-24 20:40:18 -10:00
Jack Andersen 70b3404b7c Windows build fixes and warning avoidance 2018-05-24 20:39:38 -10:00
Phillip Stephens 48f41b6c73 Minor fixes to CMetroidAreaCollider and CHudThreatInterface 2018-05-24 18:23:27 -07:00
Jack Andersen f60af632b3 Big fixes and big memory leak refactor (linux only for now) 2018-05-19 20:14:57 -10:00
Jack Andersen 12430610f1 Lots of bug fixes 2018-05-09 21:25:26 -10:00
Jack Andersen 1c977e8021 Scan visor fixes 2018-05-07 19:10:24 -10:00
Jack Andersen 70e791babc Missing SCAN packaging fix 2018-05-07 16:11:07 -10:00
Jack Andersen 9d25d44fe8 CGuiFrame destructor fix 2018-05-06 13:47:55 -10:00
Phillip Stephens 6d60ccfd04 Various fixes and tweaks, Implement CExplosion, Add cheats 2018-04-26 14:12:20 -07:00
Jack Andersen b405f33ded Correct rstl::prereserved_vector implementation 2018-02-14 18:37:21 -10:00
Jack Andersen 59af54afad Merge branch 'master' of ssh://gitlab.axiodl.com:6431/AxioDL/urde 2018-02-04 20:57:18 -10:00
Jack Andersen ac8dfde174 Various bug fixes and CActor rendering 2018-02-04 20:56:09 -10:00
Jack Andersen 97835607d9 More windows build fixes 2018-02-03 20:46:47 -10:00
Jack Andersen 13a31be23b Implement rumble classes 2018-01-25 23:48:42 -10:00
Jack Andersen 168fab6b14 HUD rendering bug fixes 2018-01-05 20:50:42 -10:00
Jack Andersen a78c4c6b36 Animation transitions and pause screen fixes 2018-01-04 17:02:30 -10:00
Jack Andersen 99fc9e3598 Various bug fixes and CAnimTree implementations 2018-01-03 18:17:44 -10:00
Jack Andersen 8301adc3d6 Huge compile performance refactor 2017-12-28 22:08:12 -10:00
Jack Andersen 053ebd41c4 HUD bug fixes 2017-12-20 17:19:54 -10:00
Jack Andersen c00cc6cea9 Lots of bug fixes; working CPhazonSuitFilter 2017-12-19 20:06:54 -10:00
Jack Andersen 1c44f8d1bc Various movement and HUD bug fixes 2017-12-18 17:05:50 -10:00
Jack Andersen 8901ac2150 Various fixes 2017-12-09 19:30:01 -10:00
Jack Andersen cff5198e6b Major graphics resource performance improvement 2017-11-19 13:48:09 -10:00
Jack Andersen a2c79eb996 More CAutoMapper fixes 2017-11-17 17:35:37 -10:00
Jack Andersen 2df95c01cf General resource handling bug fixes 2017-11-14 18:12:13 -10:00
Phillip Stephens f4de84b5fa Fix invalid asset ID handling in CGuiModel and CAuiImagePane 2017-11-13 05:13:34 -08:00
Jack Andersen f7ec7bdc0c string_view refactor 2017-11-12 20:19:18 -10:00
Jack Andersen 742ab2514f First skybox and HUD rendering 2017-11-11 19:14:57 -10:00
Jack Andersen ff5c7321c7 Merge branch 'gl-fixes' 2017-11-05 20:58:43 -10:00
Phillip Stephens 67748655ba Compile fixes, Implement CStateSetterFlow::OnMessage 2017-11-04 23:29:22 -07:00
Jack Andersen 3894749675 Changes to support boo object tracker API 2017-11-04 20:17:12 -10:00
Jack Andersen 3fcc50d82d Finish CCompoundTargetReticle 2017-10-29 17:37:20 -10:00
Jack Andersen 6eff4f2e01 Implement most of CTargetingManager 2017-10-28 20:21:52 -10:00
Jack Andersen e274cd12b9 Refactorings to support .upak generation 2017-10-24 21:47:49 -10:00
Jack Andersen 4ee4963aaf Windows fixes 2017-10-23 17:12:10 -10:00
Jack Andersen ddb1d584b7 More work on CPlayerGun 2017-08-30 16:42:37 -10:00
Jack Andersen 96b17ac73d Implement MetroidPrimeStage1 loader 2017-08-19 19:23:22 -10:00
Phillip Stephens 870e8c80ee Refactor ResId into CAssetId 2017-08-12 22:26:14 -07:00
Phillip Stephens ecff2b7f8d Implement WorldTeleporter and SpiderBallWaypoint 2017-08-08 15:12:14 -07:00
Jack Andersen daef773f39 Implement additive body states, rstl::binary_find 2017-07-10 21:17:03 -10:00
Phillip Stephens b22c0bc75f Fix CGuiTextSupport crash 2017-07-07 05:23:20 -07:00
Jack Andersen ff15bfbec3 Finish CMetroidAreaCollider 2017-06-29 15:39:34 -10:00
Jack Andersen 4f33422423 Lots of CPlayer implementations 2017-06-11 18:23:34 -10:00
Jack Andersen db8a7d3433 CParticleDatabase implementations 2017-06-02 20:03:07 -10:00
Jack Andersen ca69a54faf Camera filter refactor 2017-05-31 19:34:24 -10:00
Jack Andersen a550ce1959 Finish CMessageScreen 2017-05-31 11:26:50 -10:00
Jack Andersen 0c5e4efc46 Work on CPlayerVisor 2017-05-29 17:45:31 -10:00
Jack Andersen 4b048a0dff Finish CInGameGuiManager 2017-05-21 12:01:04 -04:00
Jack Andersen 0459192951 Implement CInGameGuiManager::Update() 2017-05-18 09:27:21 -10:00
Jack Andersen 1f25becf8e Finish CAuiImagePane 2017-05-17 21:07:49 -10:00
Jack Andersen 08a8b1819a Finish CScanDisplay 2017-05-16 19:04:38 -10:00
Jack Andersen 5835e5173e Finish CLogBookScreen 2017-05-14 09:58:44 -10:00
Jack Andersen 855ef53407 Work on CInventoryScreen 2017-05-07 09:35:52 -10:00
Jack Andersen 4ff1475f0e Work on CSamusDoll 2017-05-04 08:56:20 -10:00
Jack Andersen 0fe125d913 Finish CSamusHud and subsystems 2017-04-13 09:28:31 -10:00
Jack Andersen 9cd421888d Additional HUD work 2017-04-08 20:14:22 -10:00
Jack Andersen e070844e8a Additional HUD work 2017-04-08 10:40:36 -10:00
Jack Andersen d3c4f69e6f Work on HUD interfaces 2017-04-06 19:35:09 -10:00
Jack Andersen dc781f5c67 Additional HUD interfaces 2017-04-03 19:48:13 -10:00
Jack Andersen 67ed82bc52 Implement CHudEnergyInterface 2017-04-02 19:37:54 -10:00
Jack Andersen a2b9bfb1a2 Lots of CSamusHud imps 2017-04-02 15:39:23 -10:00
Jack Andersen b3c94f1d2b Lots of HUD-related implementations 2017-04-01 17:03:37 -10:00
Jack Andersen 8e7773aa94 AutoMapper work 2017-03-19 19:09:53 -10:00
Jack Andersen 1629882113 Refactors to support fog volume rendering 2017-03-13 21:03:58 -10:00
Jack Andersen ce723d5505 Frontface culling support boo sync 2017-03-10 10:52:53 -10:00
Phillip Stephens fe72458f48 Restore CCameraManager::GetCurrentCamera's proper behavior (AKA, I'm an idiot) 2017-03-05 09:54:00 -08:00
Jack Andersen 5c884fec0c Work on CStateManager rendering functions 2017-03-02 21:18:12 -10:00
Phillip Stephens fc51cd38aa Initial CCollisionActor imps, minor cleanup 2017-02-20 19:29:45 -08:00
Jack Andersen 4e01787e09 More efficient cooked resource loading, AQS audio fixes 2017-02-14 20:02:30 -10:00
Jack Andersen 59406a069b Bug fixes and more CStateManager imps 2017-02-13 18:27:20 -10:00
Phillip Stephens ac5f28eeff Add missing factories, update hecl 2017-02-13 13:29:00 -08:00
Jack Andersen 7085b837b7 Subresource cooking and various bug fixes 2017-02-12 20:51:47 -10:00
Jack Andersen a7cab596e6 Initial InGameGuiManager imps 2017-02-11 17:17:18 -10:00
Phillip Stephens 7e4c82a013 Fix SCAN state saving, clean up MLVL, add support for newer CRasterFont versions 2017-02-08 23:37:00 -08:00
Jack Andersen 802cf9d811 Minor CRasterFont tweaks 2017-01-31 21:20:18 -10:00
Jack Andersen 83baca806d GuiSys Image geometry fixes 2017-01-29 20:58:59 -10:00
Jack Andersen 83176b41a9 FRME bug fixes and shader adjustments 2017-01-29 18:16:20 -10:00
Jack Andersen 1fbd08b7c6 Conform HLSL shaders 2017-01-28 21:27:48 -10:00
Jack Andersen d5c7efce58 Tons of refactors and bug fixes 2017-01-28 17:58:16 -10:00
Phillip Stephens 933e731817 CTweakPlayerGun rep (THE FINAL ONE YAY!!!) 2017-01-26 18:58:21 -08:00
Jack Andersen 3a3298d48e STRG cooking bug fixes 2017-01-26 16:22:52 -10:00
Phillip Stephens bcc524e084 Merge branch 'master' of https://github.com/AxioDL/urde 2017-01-26 02:06:41 -08:00
Phillip Stephens 0f3e4b4a38 Tweak Imps 2017-01-26 02:06:18 -08:00
Jack Andersen d6482874d6 Path-substitution integrated into MP1 STRG cook/uncook 2017-01-25 22:09:22 -10:00
Jack Andersen 7a60151d3e Char16 refactor and GuiSys bug fixes 2017-01-23 21:41:33 -10:00
Jack Andersen eb955c53ec Windows fixes 2017-01-21 23:06:03 -10:00
Jack Andersen e9222c7aba Merge branch 'master' of https://github.com/AxioDL/urde 2017-01-21 15:53:11 -10:00
Jack Andersen 0744a2307a Several architectural fixes and additions 2017-01-21 15:40:12 -10:00
Phillip Stephens 02d9c7199a Unfuck my fuckup 2017-01-21 08:58:43 -08:00
Phillip Stephens 49839bbd6d Remove dbug printf 2017-01-21 07:49:31 -08:00
Phillip Stephens 4a7a3bea2f FRME Fixes 2017-01-21 07:46:51 -08:00
Jack Andersen 56b24c39f0 Ensure directories are created late in extract 2017-01-16 15:23:19 -10:00
Jack Andersen 3544cbd278 Work on FRME widgets; initial DSP streaming 2017-01-13 18:16:10 -10:00
Jack Andersen 904166e016 RumbleFxTable and final FrontEnd options functions 2017-01-12 14:16:26 -10:00
Jack Andersen f16c61cce8 Work on options portion of CFrontEndUI 2017-01-09 21:15:49 -10:00
Jack Andersen 4c09493a3f CFrontEndUI work 2017-01-08 17:44:00 -10:00
Jack Andersen db7c2aeaf2 GuiSys and FrontEnd work 2016-12-30 14:51:51 -10:00
Jack Andersen 20677700e0 Return fixes for MSVC 2016-12-30 08:38:01 -10:00
Jack Andersen a93ca26ea1 CFrontEndUI work 2016-12-29 20:37:01 -10:00
Jack Andersen b3cae0d4d5 Work on CSaveUI and CSfxManager 2016-12-28 19:53:00 -10:00
Phillip Stephens 7b79e52740 Collision flags and SFX type handling 2016-12-25 23:58:44 -08:00