Commit Graph

156 Commits

Author SHA1 Message Date
Lioncash af2a82b5a7 CElementGen: Make GetSystemCount() a const member function
This doesn't modify internal member state, so this can be made a const
member function.
2020-03-09 13:03:42 -04:00
Lioncash a8486cf479 CElementGen: Resolve sign-conversion warnings in loops
Prevents implicit truncation to int from occurring.
2020-03-09 13:01:42 -04:00
Lioncash 9db07b037a CElementGen: Make use of std::array where applicable 2020-03-09 12:53:28 -04:00
Lioncash 221cc5c6b8 RuntimeCommonB: Normalize cpp file includes
Like the prior changes normalizing the inclusions within headers, this
tackles the cpp files of the RuntimeCommonB target, making these source
files consistent with their headers.
2019-12-22 18:12:04 -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
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 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
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
Phillip Stephens 6df0fcde50 Minor CElementGen cleanup, implement CFlaahgraPlants 2019-06-20 14:17:03 -07:00
Jack Andersen e218b8aeb5 CActorContraption fixes, better CMake dependency handling 2019-06-11 16:05:17 -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
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
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 c307e354ca Huge shader refactor 2018-10-06 16:59:17 -10:00
Jack Andersen 8f9d7da3ee Implement tessellation shader for HLSL 2018-06-07 15:15:46 -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
Phillip Stephens 0c49c8ea9e Implement CScriptActorKeyframe 2018-05-14 14:44:09 -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
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 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 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 53ec80ce72 Implement CFlameWarp 2017-09-09 23:04:51 -10:00
Jack Andersen 361aa1512b Finish CGunWeapon 2017-09-04 17:00:19 -10:00
Jack Andersen 47e73f9f80 Add particle data binding for rendering PMUS quads 2017-06-12 08:20:07 -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 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 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
Phillip Stephens 12c6163e32 Fix CMemoryCardSys shutdown crash 2017-01-22 09:36:25 -08:00
Phillip Stephens 362fb6b00d Implement CParticleGenInfoGeneric 2017-01-20 22:03:37 -08:00
Jack Andersen f95d6c8ada OpenGL enum change; Metal <10.11 fixes 2016-08-23 18:35:35 -10:00
Jack Andersen 952b96fa79 GLSL refactors to support Vulkan 2016-07-07 14:07:11 -10:00
Phillip Stephens 00a98bce85 Various implementatations 2016-04-29 03:08:46 -07:00
Jack Andersen 86c21a77ac Function-scope statics aren't as efficient as file-scope ones 2016-04-14 17:26:01 -10:00
Jack Andersen c91bfade75 CCharacterFactory imps 2016-04-14 17:02:21 -10:00
Jack Andersen 929f8263fc Windows Fixes; D3D depth support 2016-04-02 19:25:34 -10:00
Phillip Stephens dc978a4c79 Add Global Project
Fix Particle Crashes
2016-04-02 01:44:23 -07:00
Jack Andersen 77a8ce5f17 boo lambda-API refactor 2016-03-30 09:16:01 -10:00
Phillip Stephens 42717c383c Rename EVNT structs to match the engine
Implement getter elements and state tracking for CElementGen
2016-03-18 19:04:12 -07:00
Jack Andersen 9ade279902 Merge branch 'master' into urde-tags 2016-03-04 14:03:41 -10:00
Jack Andersen 783fb4c4fe Humungous refactor 2016-03-04 13:04:53 -10:00
Jack Andersen 1884f89f53 New atdna YAML handling 2016-03-03 15:01:37 -10:00
Phillip Stephens 57017298e6 Fix broken rotation 2016-03-02 20:57:21 -08:00
Jack Andersen a260108a09 Retail offsets added 2016-03-02 15:06:42 -10:00
Jack Andersen 7bf455af79 Particle DNA property names 2016-03-02 12:37:10 -10:00
Phillip Stephens 97c8af9aa2 Fix maxVerts < 2 case 2016-02-27 17:35:45 -08:00
Jack Andersen 4405af9925 Bind indirect shader pipeline closer to actual draw command 2016-02-26 15:39:16 -10:00
Jack Andersen bc28aa1d10 Working D3D TIND rendering 2016-02-25 19:38:11 -10:00
Phillip Stephens 277455b072 Initial CParticleElectric stubs 2016-02-25 19:31:00 -08:00
Jack Andersen 2e6d7c26e2 SParticleMetrics is a lie 2016-02-24 20:23:35 -10:00
Jack Andersen d044adf7e1 TIND element shader working 2016-02-24 19:09:45 -10:00
Jack Andersen 23688360c9 CElementGen TIND updates 2016-02-24 16:55:38 -10:00
Jack Andersen 7e7f789c28 Vulkan updates 2016-02-22 16:34:16 -10:00
Phillip Stephens 8cd46293c2 Add ability to reset particle system 2016-02-17 20:44:06 -08:00
Jack Andersen 365f6ac9e7 Implement line renderer (OpenGL only for now) 2016-02-17 16:42:32 -10:00
Jack Andersen 6cabf3d3e7 lots of includes to make MSVC happy 2016-02-16 19:20:34 -10:00
Jack Andersen 468db3b203 Metal CElementGen shaders implemented 2016-02-16 12:25:17 -10:00
Jack Andersen 721929e4d0 mipmap sampling fix 2016-02-16 09:42:24 -10:00
Jack Andersen 3953f88dcf Metal shader placeholder 2016-02-15 22:52:22 -10:00
Jack Andersen a80142728d Tons of PART rendering preparation 2016-02-15 19:50:41 -10:00
Jack Andersen 0260ebcd64 Merge branch 'master' of https://github.com/AxioDL/PathShagged 2016-02-14 18:00:51 -10:00
Jack Andersen 160940abde GLSL shaders for CElementGen 2016-02-14 18:00:26 -10:00
Phillip Stephens b2cbb4e298 Implement LoadGPSM
Remove corrupted SELC duplicate (PMLC)
2016-02-14 18:31:46 -08:00
Jack Andersen 24c2176073 More CGraphics support functions 2016-02-13 17:42:36 -10:00
Phillip Stephens af69c9d3ab Rename namespaces 2016-02-13 01:02:47 -08:00
Jack Andersen acf65c561a CParticleGen inheritance fix 2016-02-12 19:49:59 -10:00
Jack Andersen 5f4eee538d Finished CElementGen virtual method imps 2016-02-12 19:16:39 -10:00
Jack Andersen 0f1f0e1211 More particle implementation 2016-02-12 14:57:09 -10:00
Jack Andersen 43a818d1a3 initial CGraphics class 2016-02-11 16:36:34 -10:00
Jack Andersen 93f8ae8905 Constructor stubs for swooshes and electrics 2016-02-11 13:05:42 -10:00
Jack Andersen b801bc5744 Merge branch 'master' of https://github.com/AxioDL/PathShagged 2016-02-11 12:43:04 -10:00
Jack Andersen ffdea0c2b9 Additional particle imps 2016-02-11 12:38:25 -10:00
Phillip Stephens 5b0dfde1d8 Merge branch 'master' of https://github.com/AxioDL/PathShagged 2016-02-11 11:18:47 -08:00
Phillip Stephens 66339e3bfa GetSystemCount 2016-02-11 11:18:14 -08:00