Lioncash
cc376d3e21
CMaterialLoader: Make use of std::array
2020-06-14 19:41:42 -04:00
Lioncash
903f6dfe7e
CGameArea: Make use of in-class initializers where applicable
...
Same behavior, less code.
2020-06-14 19:27:54 -04:00
Lioncash
2c274897c9
CLightParameters: Make EWorldLightingOptions an enum class
...
Avoids polluting the global namespace.
2020-06-14 19:21:30 -04:00
Lioncash
cec88d182b
CLightNode: Mark member functions as const where applicable
...
Several functions don't modify internal member state.
2020-06-14 19:13:35 -04:00
Lioncash
f2201ca03c
CLight: Make CalculateSpotAngleAtten() const
...
This member function doesn't modify internal member state.
2020-06-14 19:05:29 -04:00
Lioncash
b439e4bba1
CLight: Make use of in-class initializers where applicable
...
Same behavior, less code.
2020-06-14 19:03:32 -04:00
Lioncash
f942ad6551
CGameTemplate: Mark getter functions as const
...
These don't modify internal class state, so we can mark them as const.
2020-06-14 18:58:05 -04:00
Lioncash
15708b8624
CGameTemplate: Collapse loops into ranged for where applicable
2020-06-14 18:49:37 -04:00
Lioncash
d9bb255518
CGameTemplate: Use in-class initializers where applicable
...
Same behavior, less code.
2020-06-14 18:35:10 -04:00
Lioncash
332be356de
CIndexBuffer: Make use of size_t where applicable
...
Provides a nicer interface for operating with standard types, etc.
2020-06-14 18:29:39 -04:00
Lioncash
d4564434c3
FShowFlags: Remove use of cpp file
...
Now that these constructs are constexpr capable, we can make use of
constexpr here to contain it fully within the header.
2020-06-14 17:12:37 -04:00
Lioncash
b2db6a21fa
CFlagsProperty: Mark HasValidValue() as const
...
This doesn't modify internal state.
2020-06-14 17:07:47 -04:00
Lioncash
d5a33b631a
CFlagsProperty: Make use of a ranged for loop
2020-06-14 17:06:46 -04:00
Lioncash
84184da66d
CFont: Prevent Wmaybe-uninitialized warning
2020-06-14 17:04:35 -04:00
Lioncash
4861f118fb
CFont: Make PtsToFloat() internally linked
...
This is only ever used within the cpp file
2020-06-14 17:04:35 -04:00
Lioncash
1c292f5e2d
CFont: Make use of std::array
...
Same behavior, stronger typing.
2020-06-14 17:04:32 -04:00
Lioncash
b6b7bcace1
CFont: In-class initialize members where applicable
...
Provides a consistent initial state.
2020-06-14 16:54:16 -04:00
Lioncash
01e68ec5d8
CFontLoader: Default constructor
2020-06-14 16:51:13 -04:00
Lioncash
e49315a645
CSkeleton: Make use of unique_ptr where applicable
...
Makes ownership semantics explicit.
2020-06-14 16:49:51 -04:00
Lioncash
4dcb539763
CSkeletonLoader: Make use of ranged for where applicable
...
Same behavior, less code.
2020-06-14 16:13:28 -04:00
Lioncash
6909c75d64
CTextureDecoder: Misc cleanup
...
Const correctness, unimplemented prototypes, reducing copies, etc.
2020-06-14 16:07:43 -04:00
Lioncash
68455c54e8
CTextureDecoder: Make utility functions internally linked
...
Same behavior, but keeps implementation details internal.
2020-06-14 15:41:32 -04:00
Lioncash
f0cd6ee99b
CStructProperty: Make use of ranged for
2020-06-12 17:25:06 -04:00
Lioncash
7b40eec19c
CScriptObject: Collapse for loops into ranged for loops
...
While we're at it, eliminate sign conversion warnings.
2020-06-12 17:12:37 -04:00
Lioncash
5c42bcc580
CLink: Resolve sign conversion warnings
2020-06-12 16:46:49 -04:00
Lioncash
38d245b460
CLink: Make constructor explicit
2020-06-12 16:45:33 -04:00
Lioncash
f5e9254c9a
CIndexBuffer: Make use of in-class initializers where applicable
2020-06-12 16:43:54 -04:00
Lioncash
721c4d8121
CIndexBuffer: Make constructor explicit
...
Prevents implicit constructions.
2020-06-12 16:41:47 -04:00
Lioncash
ece0aec27a
CGraphics: Make use of std::array
2020-06-12 16:36:34 -04:00
Lioncash
bf9233779a
CGraphics: Make skDefaultAmbientColor constexpr
...
Same behavior, no runtime initializer.
2020-06-12 16:19:59 -04:00
Lioncash
e8a20933de
CVirtualDirectory: Resolve -Wreorder warnings
2020-06-12 16:09:20 -04:00
Lioncash
1ae5462cd7
CGameProject: Make use of unique_ptr where applicable
...
Makes the ownership semantics explicit.
2020-06-12 16:07:04 -04:00
Lioncash
1bdcdb85de
CResourceStore: Use unique_ptr where applicable
...
Makes the ownership semantics explicit and prevents leaks from occurring
a little better.
2020-06-12 14:43:39 -04:00
Lioncash
137b2395c9
CResourceStore: Use in-class initializers where applicable
2020-06-12 14:11:57 -04:00
Lioncash
7da16efe9d
CDependencyTree: Make use of unique_ptr
...
Makes the ownership semantics explicit in the interface.
2020-06-12 14:09:08 -04:00
Lioncash
e2190793fd
CDependencyTree: Tidying up
...
- Convert for loops to ranged for loops.
- Collapse loop into an any_of.
2020-06-12 13:37:54 -04:00
Lioncash
7d4ce7e909
CDependencyGroupLoader: Default constructor
2020-06-12 13:26:39 -04:00
LC
10cbcd4024
Merge pull request #31 from lioncash/properties
...
Property: Make use of override where applicable
2020-06-12 13:17:05 -04:00
Lioncash
c020084587
CCollisionMaterial: Make use of std::array
...
Allows simplifying some size calculations.
2020-06-12 13:14:39 -04:00
Lioncash
a51604ca91
CCollisionMeshGroup: Make use of unique_ptr
2020-06-12 13:08:48 -04:00
Lioncash
48d8d361b6
CCollisionLoader: Collapse for loop into ranged for pt. 2
2020-06-12 12:57:18 -04:00
Lioncash
3b3b2cc80f
CCollisionLoader: Collapse for loop into ranged for
...
Also removes a delete left behind in an error case.
2020-06-12 12:52:28 -04:00
Lioncash
3449f60317
CCollisionLoader: Make use of unique_ptr more
...
Same behavior, but makes the allocation ownership explicit
2020-06-12 12:50:19 -04:00
Lioncash
d43f2dab31
CAudioGroupLoader: Default constructor
2020-06-12 12:44:27 -04:00
Lioncash
9e2a8bd693
CAnimationLoader: Make use of std::array
...
Prevents implicit array to pointer decay.
2020-06-12 12:43:09 -04:00
Lioncash
12ccb2fbd4
CGameArea: Simplify allocation handling
...
Eliminates manual new/delete and also makes the lifecycle of allocations
enforced within the interface.
2020-06-12 12:38:54 -04:00
Lioncash
674ae65e56
CAnimSetLoader: Collapse for loops into ranged for loops
2020-06-12 11:28:05 -04:00
Lioncash
9921ccfe25
IMetaTransition: Always initialize CMetaTransTrans members
...
Always provides a deterministic initial state.
2020-06-12 10:47:22 -04:00
Lioncash
eabc789910
CAnimSet: Simplify allocation code
...
We can make use of std::unique_ptr to prevent any potential memory leaks
from occurring and simplifying the destruction code.
2020-06-12 10:43:29 -04:00
Lioncash
4eb1027362
CAnimSet: Collapse loops into ranged for where applicable
2020-06-12 10:03:02 -04:00
Lioncash
2a5ab1ed32
CAnimEventLoader: Use unique_ptr more
...
Makes memory handling a little more robust.
2020-06-11 21:10:02 -04:00
Lioncash
ecbd3eb83d
CAnimEventLoader: Default destructor
...
Allows the constructor to be considered trivial.
2020-06-11 21:00:08 -04:00
Lioncash
114742fc37
CCamera: Resolve -Wreorder warnings
2020-06-11 20:58:59 -04:00
Lioncash
6f0c8669de
CCollisionLoader: Formatting
2020-06-11 20:53:11 -04:00
Lioncash
d0bd7eb292
CCollisionLoader: Make LoadAreaCollision() return a unique_ptr
...
Same behavior, less boilerplate
2020-06-11 20:46:39 -04:00
Lioncash
907f1270bd
CResourceFactory: Make use of unique_ptr
...
Makes the API more memory safe
2020-06-11 20:22:21 -04:00
Lioncash
ce315280c3
CResource: Make BuildDependencyTree() return a unique_ptr
...
Makes the functions more memory safe in terms of freeing memory in
exceptional paths .
2020-06-11 18:39:07 -04:00
Lioncash
eb8ca98a8a
CAnimEventData: Collapse for loop into a ranged for loop
2020-06-11 18:02:52 -04:00
Lioncash
044efcf59d
CAnimEventData: Remove unnecessary inline specifiers
2020-06-11 18:01:18 -04:00
Lioncash
aeea0f8052
CMaterialPass: Make use of std::array
2020-06-11 17:50:40 -04:00
Lioncash
7b81aa5268
CMaterialPass: Simplify initialization code
2020-06-11 17:41:54 -04:00
Lioncash
92811a9309
CShader: Simplify initialization
2020-06-11 17:34:52 -04:00
Lioncash
b8078e7419
CShaderGenerator: Fix compiler warning
...
MSVC desires the namespace version
2020-06-11 15:55:06 -04:00
Lioncash
012da6fb6d
General: Remove unnecessary inline specifiers and add overrides
2020-06-11 15:49:42 -04:00
Lioncash
2d76c5865a
CCharacterNode: Add missing override specifiers
2020-06-11 13:44:20 -04:00
Lioncash
060101c718
CCharacterNode: Remove unnecessary inline specifiers
...
Functions defined in class declarations are implicitly inline
2020-06-11 13:43:19 -04:00
Lioncash
100453b356
CCamera: Remove unnecessary inline specifiers
...
Functions defined within a class declaration are inline by default.
2020-06-11 13:41:33 -04:00
Lioncash
53b257fb8a
CBoneTransformData: Remove unnecessary inline keywords
...
Functions defined within the class declaration are inline by default.
2020-06-11 13:40:00 -04:00
Lioncash
9ec61de2ca
CAudioManager: Make LogSoundInfo() a const member function
...
This function doesn't modify internal state.
2020-06-11 13:38:00 -04:00
Lioncash
872c38b384
CAudioManager: Make GetSoundInfo() a const member function
...
This doesn't modify internal member state.
2020-06-11 13:35:38 -04:00
Lioncash
9692a064cd
CAudioManager: Make constructor explicit
...
Prevents potentially error-prone constructions from occurring
2020-06-11 13:34:17 -04:00
Lioncash
7f881b1b10
CAudioMacro: Make use of ranged for where applicable
...
Same behavior, less moving parts.
2020-06-11 13:32:29 -04:00
Lioncash
f9031283d0
CAudioMacro: Add missing override specifier
2020-06-11 13:31:40 -04:00
Lioncash
416608a76a
CAudioMacro: Remove unnecessary inline specifiers
...
Functions defined within a class declaration are already inline by
default.
2020-06-11 13:31:00 -04:00
Lioncash
edaafd4bcf
CAudioMacro: Make constructor explicit
...
Prevents implicit error-prone constructions from occurring.
2020-06-11 13:30:07 -04:00
Lioncash
e95cb1117a
CAudioLookupTable: Include used headers
2020-06-11 13:28:11 -04:00
Lioncash
1b4ebd5f7b
CAudioLookupTable: Make FindSoundDefineID() const
...
This doesn't mutate any contained state, so it can be const.
2020-06-11 13:26:32 -04:00
Lioncash
a82f9c197b
CAudioLookupTable: Make use of explicit constructors
...
Prevents implicit constructions
2020-06-11 13:25:19 -04:00
Lioncash
d223bac56a
CAudioGroup: Make use of in-class initializers
2020-06-11 13:23:50 -04:00
Lioncash
7ce0e14e29
CAssetNameMap: Eliminate file-scope string allocations
2020-06-11 13:21:33 -04:00
Lioncash
9925925b6f
TResPtr: Use in-class initializers where applicable
2020-06-11 13:14:33 -04:00
Lioncash
11f156352a
CAnimSetLoader: Default constructor
2020-06-11 13:11:38 -04:00
Lioncash
61a6151afe
externals: Update LibCommon
2020-06-11 11:10:04 -04:00
LC
b5ddc20771
Merge pull request #26 from lioncash/scene
...
CSceneNode: Minor cleanup
2020-06-11 10:53:51 -04:00
LC
1fb554fa4c
Merge pull request #24 from lioncash/cook
...
CAreaCooker: Minor cleanup
2020-06-11 10:53:17 -04:00
LC
8babcc13bb
Merge pull request #22 from lioncash/anim2
...
CAnimation: Minor clean up
2020-06-11 10:52:59 -04:00
LC
9c2b7e4c95
Merge pull request #23 from lioncash/iter
...
CResourceIterator: Cleanup and undefined behavior prevention
2020-06-11 10:52:41 -04:00
LC
d7b6ab81ea
Merge pull request #27 from lioncash/gen
...
CShaderGenerator: Make file-scope arrays non-allocating
2020-06-11 10:52:19 -04:00
LC
80ccc32e68
Merge pull request #29 from lioncash/viewport
...
CBasicViewport: Make member functions const where applicable
2020-06-11 10:51:53 -04:00
LC
919dcfd8d9
Merge pull request #28 from lioncash/table
...
CStringTable: Eliminate file-scope allocations
2020-06-11 10:51:34 -04:00
LC
4f289193bb
Merge pull request #32 from lioncash/str
...
CGameInfo: Make file-scope strings non-allocating
2020-06-11 10:51:20 -04:00
LC
156c92909e
Merge pull request #33 from lioncash/index
...
CIndexBuffer: Mark member functions as const where applicable
2020-06-11 10:50:52 -04:00
Lioncash
76ec0df8a2
externals: Update LibCommon
2020-06-11 10:49:37 -04:00
Lioncash
c929293789
CIndexBuffer: Mark member functions as const where applicable
...
These member functions don't alter internal state, so we can mark them
as const.
2020-06-10 19:33:50 -04:00
Lioncash
7da0cdb8a3
CGameInfo: Make file-scope strings non-allocating
...
Same behavior, minus any potential heap allocations and static
constructors.
2020-06-10 18:04:40 -04:00
Lioncash
96876b70e0
Property: Make use of override where applicable
...
Makes the API strongly enforced. This also fixes a bug in CBoolProperty,
where ValueAsString() had an incorrect signature (was missing a const).
2020-06-10 09:19:12 -04:00
Lioncash
01372f7049
CBasicViewport: Make member functions const where applicable
...
These don't modify member state. While we're at it, we can mark
functions as override where applicable.
2020-06-10 01:47:51 -04:00
Lioncash
583472f2f9
CStringTable: Eliminate file-scope allocations
...
Eliminates all runtime static initializers, reducing the heap usage of
the application lifetime just a little bit.
2020-06-10 01:06:46 -04:00
Lioncash
ef0030872a
CShaderGenerator: default constructor and destructor
2020-06-10 00:55:12 -04:00
Lioncash
e75c077bda
CShaderGenerator: Make file-scope arrays non-allocating
...
We can make these plain views to eliminate any potential static runtime
constructors.
2020-06-10 00:55:08 -04:00
Lioncash
c285207f24
CSceneNode: Collapse loops into ranged for loops
...
Where applicable, we can simplify some loops a little bit, migrating off
the slightly more verbose iterator means of traversing standard
containers.
2020-06-09 23:07:47 -04:00
Lioncash
3d4f2d60eb
CSceneNode: Make use of std::array
...
Same behavior, stronger typing.
2020-06-09 22:57:44 -04:00
Lioncash
7065005c30
CSceneNode: Make use of override
...
Same behavior, stronger enforcement of API.
2020-06-09 22:56:38 -04:00
Lioncash
d3315bf84f
CSceneNode: Make use of in-class initializers
...
Same behavior, less code.
2020-06-09 22:55:25 -04:00
Lioncash
03f1aba7e8
CAreaCooker: Collapse for loops into ranged for where applicable
...
Same behavior, less code.
2020-06-09 07:56:56 -04:00
Lioncash
f727c07d13
CAreaCooker: Make use of in-class initializers where applicable
...
Simplifies the construction code.
2020-06-09 07:42:51 -04:00
Lioncash
0eef99f72e
CResourceIterator: Provide a virtual destructor
...
Prevents any potential undefined behavior from occurring from deleting a
derived type from a base class pointer.
2020-06-09 05:14:15 -04:00
Lioncash
621367e120
CResourceIterator: Make use of override where applicable
...
Same behavior, but enforces the interface.
2020-06-09 05:11:08 -04:00
Lioncash
65cc3a0d89
CResourceIterator: Use prefix form for iterators
...
Same behavior, minus any created temporaries.
2020-06-09 05:10:09 -04:00
Lioncash
e2209106fb
CResourceIterator: Remove unnecessary inline specifiers
2020-06-09 05:09:31 -04:00
Lioncash
0c784aa305
CAnimation: Make use of std::array
...
Same behavior, but more strongly typed.
2020-06-09 04:21:45 -04:00
Lioncash
9f63991a0a
CAnimation: Mark BuildDependencyTree() as overwritten
...
Same behavior, but enforces the interface.
2020-06-09 04:21:45 -04:00
Lioncash
a4f45aeb2d
CAnimation: Remove unnecessary inline specifiers
...
Same behavior, less writing. Functions defined in a class declaration
are already implicitly inline.
2020-06-09 04:21:45 -04:00
Lioncash
f233af5de4
CAnimation: Convert typedefs into using aliases
...
Same behavior, nicer readability
2020-06-09 04:21:45 -04:00
Lioncash
d4d7cf66cd
CAnimation: Make use of in-class initializers where applicable
...
Simplifies member initialization
2020-06-09 04:21:41 -04:00
Lioncash
7824d0720d
CAnimationParameters: Add missing break in switch cases in SetUnknown()
...
Prevents undocumented switch fallthrough.
2020-06-09 04:10:49 -04:00
Lioncash
cf92227587
CAnimationParameters: Make use of in-class variable declarations where applicable
...
Same behavior, less code.
2020-06-09 04:10:45 -04:00
Jack Andersen
644d89aa2d
Use PrimeWorldEditor for setApplicationName
2020-03-30 19:44:07 -10:00
Jack Andersen
6e08f95d10
Replace deprecated Qt APIs, Windows fixes
2020-03-30 18:07:18 -10:00
Jack Andersen
5bda353d57
Fix dolphin open panel filter, force X11 on linux launcher
2020-03-30 13:50:07 -10:00
EthanArmbrust
3aefd515bb
Include QCloseEvent in IEditor.cpp
...
Without this include, project fails to build on Arch Linux with gcc 9.3.0 with the following error:
`../src/Editor/IEditor.cpp:79:15: error: invalid use of incomplete type ‘class QCloseEvent’
79 | pEvent->ignore();
| ^~
`
2020-03-26 14:10:55 -04:00
Bearborg
4f3f5ea02d
Replace deprecated GL_LUMINANCE and GL_LUMINANCE_ALPHA texture formats
2019-12-25 11:34:28 -05:00
Jack Andersen
94bdd70cb3
Prevent unpriveleged mouse-drag on macOS from conflicting with priveleged case.
2019-11-25 16:49:17 -10:00
Jack Andersen
9a96deed0a
Add *.nfs extract support
2019-11-24 17:50:08 -10:00
Jack Andersen
bcfcab1247
Merge branch 'master' of https://github.com/AxioDL/PrimeWorldEditor
2019-11-24 16:50:43 -10:00
Jack Andersen
30c1646f02
Update dew, fix no lighting mode
2019-11-24 16:46:57 -10:00
April Wade
c90ce7d507
Fix 3D rendering on macOS
2019-11-22 03:17:50 -06:00
Jack Andersen
e55b6b43e3
Fixes for building on ubuntu
2019-11-19 05:06:03 +00:00
Jack Andersen
37c462725c
Default zero mat/amb alpha so bloom does not get overpowered
2019-11-17 12:03:09 -10:00
Jack Andersen
6e2bf5be83
Fix MP3 extraction crash
2019-11-16 20:48:07 -10:00
Jack Andersen
8ad13ff4c9
MP1 material fix after MP3 refactor
2019-11-16 15:42:36 -10:00
Jack Andersen
dfc9d1ddb0
Merge remote-tracking branch 'origin/mp3-materials'
2019-11-16 15:26:14 -10:00
Jack Andersen
cfea90e9d2
Segfault fixes
2019-11-16 15:24:46 -10:00
Jack Andersen
55c4a5818e
Use non-1.0 alpha component for default lighting
2019-11-07 14:54:35 -10:00
Jack Andersen
6e3b23ec50
Accurate MP3 material processing
2019-11-06 16:52:45 -10:00
Phillip Stephens
79ec379c66
Minor lighting fixes and initial Mode 8 implementation
2019-10-27 04:03:57 -07:00
Aruki
cd7937f73c
Fixed CMayaSpline source files not compiling
2019-06-18 12:10:04 -07:00
Aruki
ca40d34739
Merge branch 'master' of https://github.com/arukibree/primeworldeditor
2019-06-14 23:32:26 -07:00
Aruki
a21407a1b7
Commit of old 2016-era WIP CMayaSpline implementation
2019-06-14 23:31:27 -07:00
Jack Andersen
036c56370c
Various memory-related bug fixes
...
Also new lzokay API to reduce erroneous usage.
2019-06-14 09:01:29 -10:00
Jack Andersen
4c873591f0
Make InstanceID label selectable and add parsing tooltip
2019-06-13 13:12:53 -10:00
Jack Andersen
741185e8d6
Add CMake variable for PUBLIC_RELEASE
2019-06-12 11:21:41 -10:00
Jack Andersen
b507196851
LibCommon now being integrated as an add_subdirectory submodule
2019-06-04 14:44:39 -10:00
Jack Andersen
12f4d5a267
Native handling of relative cursor coordinates for camera control
2019-06-03 19:38:13 -10:00
Pwootage
694c0b0765
Fix HiDPI on macOS (and possibly others?)
2019-06-03 21:51:01 -06:00
Jack Andersen
fb88c81ef6
Fix package target for macOS
2019-06-03 14:01:15 -10:00
Jack Andersen
574ab7d6ac
Enable CPack for Windows and macOS deployment
2019-06-03 11:28:47 -10:00
Jack Andersen
9b95f0b33d
Ensure editor window deletion is deferred
2019-05-28 19:32:18 -10:00
Jack Andersen
ca28e21739
Fixes to support building with GCC
2019-05-28 16:51:30 -10:00
Jack Andersen
5011e7d26b
Make tooltip base color black for contrast
2019-05-27 13:47:08 -10:00