Commit Graph

322 Commits

Author SHA1 Message Date
Lioncash 7430b70b73 CParticleDataFactory: Use unique_ptr where applicable
Same behavior, but makes the functions a little safer in terms of memory
management.
2019-10-11 15:16:13 -04:00
Lioncash 8b58cdc268 CIntElement: Add class to handle RTOI int elements
Within the int element handling code, there seems to be a missing
implementation (with the FourCC 'RTOI'), which seems to take two 32-bit
floating point values, multiplies them, then converts the result to a 32-bit
integer.
2019-10-06 08:52:41 -04:00
Lioncash ff940612bc CIntElement: Make use of std::clamp within CIEClamp's overrides
Same behavior, less code.
2019-10-04 19:51:38 -04:00
Lioncash 3407a59ad7 CIntElement: Simplify CIEKeyframeEmitter's GetMaxValue()
We can just use std::max_element here to collapse the loop into an
assignment.
2019-10-04 19:46:36 -04:00
Lioncash af0c2c41e3 CIntElement: Organize cpp includes 2019-10-04 19:38:31 -04:00
Lioncash 83873b580e CIntElement: Join variable declarations with assignments where applicable 2019-10-04 19:38:26 -04:00
Lioncash 66b198d1a4 CElementGen: Correct FourCC in SetTranslation()
The game executable checks for a FourCC of ELSC within this function,
not SELC.
2019-10-03 09:45:26 -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
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 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
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
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 fd0bfc3acf Minor flamethrower and babygoth fixes 2019-06-30 20:14:42 -10:00
Phillip Stephens 6df0fcde50 Minor CElementGen cleanup, implement CFlaahgraPlants 2019-06-20 14:17:03 -07:00
Jack Andersen 87023b432e Fixes in ANIM cooking 2019-06-15 16:22:23 -10:00
Jack Andersen e218b8aeb5 CActorContraption fixes, better CMake dependency handling 2019-06-11 16:05:17 -10:00
Phillip Stephens 81f1e22fc2 More CFlameThrower imps, implement `CScriptSpecialFunction::ThinkChaffTarget` and `CScriptSpecialFunction::ObjectFollowObject` 2019-05-09 19:33:56 -07: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 99b1a8ef49 Lots of bug fixes 2019-03-12 17:46:20 -10:00
Jack Andersen 2f963b9ce3 Various bug fixes 2019-03-08 22:58:27 -10:00
Jack Andersen 8b9f073635 Various rendering fixes 2019-03-02 20:19:42 -10:00
Jack Andersen 8df0a4913c zeus constexpr refactor and thermal visor fixes 2019-02-23 21:15:54 -10:00
Jack Andersen 48eaa2545b Working CScriptGunTurret 2019-02-17 19:47:46 -10:00
Jack Andersen ad2681f857 Windows fixes 2019-01-28 22:28:35 -10:00
Jack Andersen d60fcc99c9 Fix CNewIntroBoss and particle bugs 2019-01-04 17:28:02 -10:00
Phillip Stephens d30ceb6611 More CPuddleSpore implementations 2018-12-12 11:50:37 -08: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
Phillip Stephens a7e81073ae CDamageInfo fixes, initial CPuffer 2018-11-13 20:16:11 -08:00
Phillip Stephens 89ece2e9b2 Proper CRandom16 usage
More CScriptGunTurret imps
2018-11-09 18:48:06 -08:00
Jack Andersen 1aab0528f3 Various bug fixes 2018-11-07 14:53:38 -10:00
Jack Andersen 3ef7386978 Proper interleaved rendering of indirect-textured particle instances 2018-11-04 21:25:28 -10:00
Jack Andersen 4c306e7e40 Implement CHUDBillboardEffect, bug fixes 2018-11-03 15:08:44 -10:00
Phillip Stephens dd30f51761 Initial CScriptGun implementation, more loaders 2018-10-27 17:20:30 -07:00
Jack Andersen 29dad50cca Particle, map and line renderer fixes 2018-10-25 18:37:22 -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
Phillip Stephens bbfe61efbf Various loader implementations 2018-10-11 15:57:05 -07:00
Jack Andersen c91e5df986 Convert to pragma once 2018-10-06 17:42:33 -10:00
Jack Andersen 9461e98512 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/urde into shader-refactor 2018-10-06 16:59:32 -10:00
Jack Andersen c307e354ca Huge shader refactor 2018-10-06 16:59:17 -10:00
Phillip Stephens 94fd52d0ea HUD and CPlayer bug fixes 2018-09-20 11:17:09 -07:00
Phillip Stephens c3d8967605 Implement CPowerBomb 2018-09-09 18:04:57 -07:00
Jack Andersen 5a60a0acfc Amuse API changes 2018-08-27 19:44:16 -10:00
Jack Andersen cd3bba2f0e Working grapple beam 2018-06-20 14:57:57 -10:00
Jack Andersen 941c4d793c Fix CScriptEffect translation set 2018-06-12 16:32:02 -10:00
Jack Andersen 8f9d7da3ee Implement tessellation shader for HLSL 2018-06-07 15:15:46 -10:00
Jack Andersen a5f25bf3f4 Fix water rendering 2018-06-02 20:11:39 -10:00
Jack Andersen cc6d79e280 Various bug fixes 2018-05-26 18:22:38 -10:00
Jack Andersen 70b3404b7c Windows build fixes and warning avoidance 2018-05-24 20:39:38 -10: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 979a54a8a8 More bug fixes 2018-05-17 18:16:33 -10:00
Phillip Stephens 0c49c8ea9e Implement CScriptActorKeyframe 2018-05-14 14:44:09 -07:00
Phillip Stephens 8d395d932e Implement CScriptEffect, more fixes for CScritDock 2018-05-13 20:38:36 -07:00
Jack Andersen 9130b9459a More particle bug fixes 2018-05-13 13:27:47 -10:00
Jack Andersen faf0ac7d27 Particle POI fix, implement ORNT mode for particles 2018-05-12 18:09:11 -10:00
Jack Andersen 12430610f1 Lots of bug fixes 2018-05-09 21:25:26 -10:00
Phillip Stephens 711c3e0d2c Remove rstl::optional_object, various cleanups, implement CExplosion and CScriptDoor 2018-04-29 20:12:41 -07:00
Phillip Stephens 6d60ccfd04 Various fixes and tweaks, Implement CExplosion, Add cheats 2018-04-26 14:12:20 -07:00
Jack Andersen 7100ed437f macOS decal rendering support 2018-03-16 17:41:01 -10:00
Jack Andersen 017185109f Fix disappearing actor issue 2018-03-04 13:23:21 -10:00
Jack Andersen 46a4a37cc6 Initial working projectiles 2018-02-11 19:30:21 -10:00
Jack Andersen 547471c6ba Work on projectiles 2018-02-10 19:27:00 -10:00
Jack Andersen 3754962301 Finish CProjectileWeapon 2018-02-09 20:26:12 -10:00
Jack Andersen ac8dfde174 Various bug fixes and CActor rendering 2018-02-04 20:56:09 -10:00
Jack Andersen 36f1473f3e All animation nodes implemented 2018-01-29 15:04:01 -10:00
Jack Andersen bb10423267 Various particle bug fixes 2018-01-26 22:34:46 -10:00
Jack Andersen 7a179eb10a Various bug fixes 2018-01-13 20:44:22 -10:00
Jack Andersen 73ae278c87 Several collision fixes 2017-12-17 16:54:50 -10:00
Jack Andersen 8901ac2150 Various fixes 2017-12-09 19:30:01 -10:00
Jack Andersen 3894749675 Changes to support boo object tracker API 2017-11-04 20:17:12 -10:00
Jack Andersen 484a4900a0 CMorphBall Complete 2017-09-29 17:45:57 -10:00
Jack Andersen 2c4967ca4d More work on CMorphBall 2017-09-16 17:13:03 -10:00
Jack Andersen 27cee61765 Implement array-based rstl::reserved_vector 2017-09-10 21:08:30 -10:00
Jack Andersen 10092821c8 Initial round of CMorphBall implementations 2017-09-10 16:18:49 -10:00
Jack Andersen 53ec80ce72 Implement CFlameWarp 2017-09-09 23:04:51 -10:00
Jack Andersen 149eed4b73 Implement CAuxBeam 2017-09-09 14:36:21 -10:00
Jack Andersen 361aa1512b Finish CGunWeapon 2017-09-04 17:00:19 -10:00
Jack Andersen 640623f3ef Finish CGrappleArm 2017-09-03 16:22:46 -10:00
Phillip Stephens 870e8c80ee Refactor ResId into CAssetId 2017-08-12 22:26:14 -07:00
Phillip Stephens 2dee7c72cb Fix build error 2017-08-01 03:08:42 -07:00
Phillip Stephens 9afacd791b CActorModelParticles work 2017-07-31 03:47:04 -07:00
Jack Andersen 6c257e1811 Work on CPlayer 2017-07-15 20:13:37 -10:00
Jack Andersen 47e73f9f80 Add particle data binding for rendering PMUS quads 2017-06-12 08:20:07 -10:00
Jack Andersen 14a4bc2050 ZERY fix 2017-06-10 18:07:09 -10:00
Jack Andersen f8f3bf407a Finish CParticleElectric 2017-06-10 16:57:35 -10:00
Jack Andersen f3acc97d63 Implement actual CParticleSwoosh rendering 2017-06-09 19:34:39 -10:00
Jack Andersen 302bd76ebd Implement remaining CParticleSwoosh renderers 2017-06-05 19:05:09 -10:00
Jack Andersen a07097855b Work on CParticleSwoosh renderers 2017-06-04 16:40:29 -10:00
Jack Andersen ca9170bc88 Several initial CParticleSwoosh implementations 2017-06-03 18:54:47 -10:00
Jack Andersen 6da6e37d42 Conform CElementGen with retail 2017-06-03 15:01:09 -10:00
Jack Andersen db8a7d3433 CParticleDatabase implementations 2017-06-02 20:03:07 -10:00
Jack Andersen 08cbeceb80 Windows build fixes 2017-05-08 09:10:09 -10:00
Jack Andersen b2d375a1d7 Finish CSamusDoll 2017-05-05 19:21:42 -10:00
Jack Andersen db12dd2ea2 Implement CStateManager::Update 2017-03-23 19:30:16 -10:00