Commit Graph

371 Commits

Author SHA1 Message Date
Phillip Stephens 1654333a16
Only allocate particle buffers as needed, greatly improves performance and removes certain hacks 2021-04-18 16:53:51 -07:00
Phillip Stephens 9bae2f943e
Rename everything 2021-04-10 01:42:06 -07:00
Phillip Stephens fbf1e26eda Let's not blow up our memory usage plzkthxbai 2021-03-30 14:29:03 -07:00
Phillip Stephens 879cf852c3 CElementGen: Hacky fix for memory corruption, need to dynamically reallocate buffers when MAXP changes 2021-03-28 18:26:50 -07:00
Phillip Stephens 087bd51693
CElementGen: ADV Parameter fixes 2021-03-16 23:33:05 -07:00
Phillip Stephens 0a3bcf3ab8
Revert "Revert "Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles""
This reverts commit 732831de9a.
2021-03-16 21:49:18 -07:00
Luke Street 732831de9a Revert "Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles"
This reverts commit 35482529
2021-02-15 21:54:44 -05:00
Phillip Stephens dc270ced7e
Remove debug print 2021-01-14 15:57:16 -08:00
Phillip Stephens 3548252931
Remove arbitrary particle limit of 256, unfortunately this breaks various particle systems including Essence Shockwave and flamethrower particles 2021-01-14 15:52:26 -08:00
Phillip Stephens 215eedc013
Fix inconsistent state causing Exo to fling herself off into the void 2020-12-13 10:57:45 -08:00
Phillip Stephens 8633bbddec
More CMetroidPrimeExo imps 2020-12-13 10:57:44 -08:00
Luke Street 8b597112be ParticleCommon: Fix IESampleAndHold element ordering 2020-09-24 03:17:17 -04:00
Luke Street 6e3d94483c Note CMVEFastConstant bug in 0-00 2020-09-24 03:00:15 -04:00
Luke Street d5596e6430 Fix VEAngleSphere element ordering & calculations 2020-09-24 02:42:25 -04:00
Luke Street 3d01549af3 CElementGen: Render PMAB models with ForcedAdditiveNoZWrite
Fixes rendering for missile impacts, charge beam & more
2020-09-23 03:24:33 -04:00
Luke Street ee2e75b861 CElementGen: Don't use redToAlpha pipelines without a texture
Fixes Thermal Visor crashes for Super Missile & Elite Pirate grenades
2020-09-18 02:43:55 -04:00
shiiion cf86338a84 initial flamethrower weapon implementation 2020-06-25 22:37:45 -04:00
Lioncash 10c6c6729f CParticleSwoosh: Make virtual call in constructor explicit
virtual functions statically resolve in constructors and destructors.
This makes it obvious that we want the statically resolving behavior to
the reader.
2020-05-08 16:09:57 -04:00
Lioncash d3dbe15fcc CSpawnSystemKeyframeData: Remove unnecessary includes 2020-05-02 21:28:52 -04:00
Lioncash b76b956339 CElementGen: Give all function prototype parameters names 2020-04-25 03:16:08 -04:00
Lioncash 57d953a045 CElementGen: Eliminate sign conversion warnings with function parameters
Makes the expected types explicit.
2020-04-25 03:09:29 -04:00
Lioncash eb4362a4d4 CDecalDataFactory: Remove unused includes 2020-04-25 02:52:53 -04:00
Lioncash 27861d5c78 CUVElement: Convert stateful structs into classes
Avoids exposing the internals of the data by default (since they were
previously fully accessible).
2020-04-24 00:59:51 -04:00
Lioncash b32bc296ad CUVElement/CVectorElement: Make use of [[maybe_unused]] where applicable 2020-04-24 00:58:44 -04:00
Lioncash 4a9095a2af CRealElement: Make use of [[maybe_unused]] where applicable 2020-04-24 00:57:13 -04:00
Lioncash f620b4325f CIntElement: Make use of [[maybe_unused]] where applicable 2020-04-24 00:55:43 -04:00
Lioncash 102d62846c CColorElement: Make use of [[maybe_unused]] where applicable 2020-04-24 00:54:08 -04:00
Lioncash 31cf98646b CModVectorElement: Eliminate variable shadowing
Prevents "a" from clashing with a local variable.
2020-04-23 07:16:49 -04:00
Lioncash e0bb66f7f0 CParticleElectricDataFactory: Remove unused includes 2020-04-23 03:58:10 -04:00
Luke Street 12d8d534c6 CParticleElectric: Fix CalculatePoints 2020-04-21 22:32:37 -04:00
Luke Street d3a44259c3
Merge pull request #315 from lioncash/init
RuntimeCommonB: Make use of bitfield initializers where applicable
2020-04-21 00:56:39 -04:00
Lioncash 554893ef85 RuntimeCommonB: Make use of bitfield initializers where applicable
Given that we now target C++20, we can make use of bitfield initializers
where applicable.
2020-04-20 15:57:25 -04:00
Luke Street 32c44cbf05 Merge branch 'master' into omegapirate
# Conflicts:
#	Runtime/GuiSys/CAuiImagePane.cpp
2020-04-19 22:12:18 -04:00
Luke Street 24acb585f8 MSVC & zeus fixes; update hecl-gui 2020-04-19 21:09:30 -04:00
Luke Street 025a989e12 CElementGen: Use x338_moduColor in RenderModels 2020-04-18 23:41:35 -04:00
Luke Street 30f2ac3f26 Merge branch 'master' into omegapirate 2020-04-18 18:14:51 -04:00
Lioncash 3715e6dcbb CFlameWarp: Make use of const where applicable
Makes algorithms easier to follow by explicitly marking immutable
state.
2020-04-17 00:27:22 -04:00
Phillip Stephens 582d8a6999
Initial PAL/JP/Trilogy imps, various cleanup 2020-04-15 22:26:14 -07:00
Lioncash 8e89ac234f CElementGen: Initialize x80_timeDeltaScale on construction
Provides deterministic state upon construction, which is nicer for
debugging.
2020-04-14 16:11:38 -04:00
Lioncash 384efebf55 CElementGen: Collapse loop into a ranged-for loop
Same behavior, nicer syntax.
2020-04-14 16:08:21 -04:00
Lioncash 5381c011a0 CParticleElectric: Eliminate several sign conversion instances
Makes sign conversion cases explicit and eliminates them entirely in
other cases.
2020-04-14 12:30:38 -04:00
Lioncash 4cbf8ef513 CParticleElectric: Mark CGlobalRandom instance as maybe unused
This has a stateful destructor, so we mark it as unused to silence
unused variable warnings.
2020-04-14 12:16:25 -04:00
Lioncash 8aef2cf95d CParticleElectric: Make use of const where applicable
Makes it easier to read long functions by knowing which variables are
mutable.
2020-04-14 04:20:03 -04:00
Lioncash fed72614ef CParticleSwoosh: Use const where applicable
Given the length of some functions, this makes following flow nicer,
since it's easier to visually see which variables get modified.
2020-04-14 03:56:27 -04:00
Lioncash 6fbf6734c2 CParticleSwoosh: Eliminate variable shadowing 2020-04-14 03:31:31 -04:00
Lioncash 480d27e68c CParticleSwoosh: Initialize class data members
Makes for deterministic initial state.
2020-04-14 03:27:15 -04:00
Lioncash 59a788a987 CParticleGlobals: Eliminate implicit type conversions
Makes them all explicit for the reader.
2020-04-13 18:44:51 -04:00
Lioncash 5b9a689703 CParticleSwoosh: Initialize x68_frame on construction
Provides a deterministic initial state, which makes for nicer debugging.
2020-04-13 16:23:07 -04:00
Lioncash 93622d9b4b CIntElement: Initialize x14_holdVal in CIESampleAndHold
Provides a deterministic initial state upon construction, which makes
for nicer debugging.
2020-04-13 16:20:51 -04:00
Lioncash 7d6e466b68 CDecalManager: Make use of std::nullopt where applicable
Same thing, less verbose.
2020-04-13 01:43:06 -04:00