Lioncash
194cdf145f
Runtime: Use nullptr where applicable
...
Same behavior, but no magic 0 value.
While we're in the same area, we can do minor cosmetic changes.
2020-03-27 20:18:54 -04:00
Lioncash
241a66dc0a
General: Make use of explicit constructors where applicable
...
Gets rid of potential error prone implicitly constructing constructors.
2020-03-27 06:00:17 -04:00
Lioncash
81dcc0604b
CParticleElectric: Make use of std::array where applicable
...
Prevents array to pointer decay.
2020-03-25 03:58:37 -04:00
Lioncash
c61bee13db
CParticleElectric: Add parameters to function prototypes
...
Makes the interface more self-documenting.
2020-03-25 03:58:37 -04:00
Phillip Stephens
af2738c7b1
Merge pull request #269 from lioncash/sconv
...
CParticleSwoosh: Resolve sign-conversion warnings
2020-03-23 23:29:44 -07:00
Phillip Stephens
00691c1175
Merge pull request #268 from lioncash/intconst
...
CIntElement: Remove const_cast
2020-03-23 23:29:26 -07:00
Phillip Stephens
bb9359c579
Merge pull request #266 from lioncash/make
...
CParticleElectric: Use std::make_unique where applicable
2020-03-23 23:28:59 -07:00
Phillip Stephens
734f1d2db5
Merge pull request #264 from lioncash/move
...
General: Remove unnecessary std::move calls
2020-03-23 23:28:24 -07:00
Phillip Stephens
425f8d4cc8
Merge pull request #263 from lioncash/array3
...
CDecal: Make use of std::array where applicable
2020-03-23 23:28:08 -07:00
Lioncash
7a29f4bf52
CParticleSwoosh: Resolve sign-conversion warnings
...
Resolves trivial warnings within loop condition checks.
2020-03-23 00:38:23 -04:00
Lioncash
a2517a504e
CIntElement: Remove const_cast
...
CIESampleAndHold caches values internally for use later in a non-visible
manner to the user of the class. This is a good place for mutable to be
used.
This improves the readability of the GetValue() implementation.
2020-03-22 06:05:59 -04:00
Lioncash
34a0e9f23d
CParticleElectric: Use std::make_unique where applicable
...
Makes it obvious that std::unique_ptr instances are being created within the
implementation code.
2020-03-22 05:27:49 -04:00
Lioncash
0e54861455
General: Remove unnecessary std::move calls
...
There's no real need to std::move a primitive type. A copy will be
performed either way. We can remove std::move in this case to improve
readability.
2020-03-22 00:56:04 -04:00
Lioncash
2b4b7c36a5
CDecal: Make use of std::array where applicable
...
Same behavior, but with stronger-typing and no implicit array to pointer
decay.
2020-03-21 01:53:41 -04:00
Lioncash
fc4df76afc
General: Make use of emplace_back where applicable
...
Allows for in-place construction. Also results in less code to read in
certain usages.
2020-03-21 00:30:12 -04:00
Lioncash
097d4a4422
Runtime: Collapse emplace_back() calls where applicable
...
Same behavior, but with less code.
2020-03-13 17:14:44 -04:00
Phillip Stephens
97e33bdf11
Merge pull request #213 from lioncash/unique
...
CProjectileWeaponDataFactory: Make GetGeneratorDesc() return a unique_ptr
2020-03-12 15:10:49 -07:00
Lioncash
05bccae70e
CDecalDataFactory: Make GetGeneratorDesc() return a unique_ptr
...
Same behavior, but with safer memory management.
2020-03-12 14:46:02 -04:00
Lioncash
1f42b9be93
CParticleElectricDataFactory: Make GetGeneratorDesc() return a unique_ptr
...
Same behavior, but with safer memory management.
2020-03-12 14:20:48 -04:00
Lioncash
59bbbdf41c
CParticleSwooshDataFactory: Make GetGeneratorDesc() return a unique_ptr
...
Same behavior, but with safer memory management.
2020-03-12 14:17:42 -04:00
Lioncash
93121c38f7
CProjectileWeaponDataFactory: Make GetGeneratorDesc() return a unique_ptr
...
Same behavior, but with safer memory management.
2020-03-12 14:00:23 -04:00
Lioncash
15dce1683e
CElementGen: std::move TToken instance in constructor
...
Allows the parameter to be moved into via calling code.
2020-03-09 13:07:53 -04:00
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
35adfe8abf
CElementGen: Alphabetize forward declarations
...
Makes them nicer to visually scan over.
2020-03-09 12:33:24 -04:00
Lioncash
13afd9b033
CRealElement: Remove redundant instance() call in CRELifetimeTween::GetValue()
...
This only needs to be called once.
2020-01-29 02:07:55 -05: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
Phillip Stephens
8b6dff70b4
Properly cleanup Xorg in visigen, various fixes and cleanups in URDE, more CRidley imps
2019-11-19 15:06:25 -08:00
Phillip Stephens
6a3eba0091
Merge pull request #103 from lioncash/unique
...
CParticleDataFactory: Use unique_ptr where applicable
2019-10-18 01:01:40 -07:00
Lioncash
af7d8e9095
CUVElement: Provide initial value for cv in GetValueUV()
...
The game executable itself sets this variable to an initial value of 1
prior to calling cycleFrames' GetValue() member function.
2019-10-11 17:05:26 -04:00
Lioncash
35fb0e4911
CUVElement: Use const where applicable
...
While we're at it, we can also make conversions to float explicit.
2019-10-11 17:05:23 -04:00
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