Commit Graph

833 Commits

Author SHA1 Message Date
Lioncash 1b71d91ea7 CResourceStore: Make use of ranged for where applicable
Same behavior, less code.
2020-06-18 06:47:02 -04:00
Lioncash e9dd2c57a6 CResTypeInfo: Shorten std::sort call
We can remove unnecessary qualifiers to make this a little less verbose.
2020-06-18 06:35:18 -04:00
Lioncash 2b7c4941e5 CResTypeInfo: Make use of std::move in the constructor
Allows calling code to eliminate copies altogether from occurring.
2020-06-18 06:30:21 -04:00
Lioncash 8f70b20312 CResTypeInfo: Make use of ranged for where applicable
Same behavior, better readability
2020-06-18 06:28:00 -04:00
Lioncash a612751cb0 CResTypeInfo: Make use of in-class initializers where applicable
Same behavior, less code.
2020-06-18 06:19:08 -04:00
Lioncash b77f52bb0e CResTypeFilter: Make use of ranged for where applicable
We can also collapse a loop down into a std::any_of.
2020-06-18 06:14:50 -04:00
Lioncash 5ce6b972a0 CGameProject: Make use of size_t where applicable
Plays nicely with standard containers.
2020-06-18 06:14:26 -04:00
Lioncash 6a0a20e3fa CGameProject: Make use of std::move where applicable
Same behavior, but allows calling code to completely eliminate copies.
2020-06-18 05:30:29 -04:00
Lioncash bb9947fe0e CGameProject: Make use of std::string_view where applicable
Makes a few functions have non-allocating arguments
2020-06-18 05:29:52 -04:00
Lioncash 6d98e918ae CGameArea: Make use of size_t where applicable
Plays nicer with the standard library and avoids truncation warnings.
2020-06-18 05:16:46 -04:00
Lioncash 456530605f NGameList: Remove const qualifier
Fixes the build.
2020-06-18 04:52:35 -04:00
Lioncash e9df5625e6 CScriptLayer: std::move string in SetName()
Allows calling code to avoid copies.
2020-06-18 04:48:15 -04:00
Lioncash a55fafac22 CScriptLayer: Add const overload for operator[]
Behavioral symmetry.
2020-06-18 04:47:17 -04:00
Lioncash 2b7c322e59 CScriptLayer: Make use of prefix increment on iterators 2020-06-18 04:46:38 -04:00
Lioncash 363b19ebe6 CScriptLayer: Make use of explicit 2020-06-18 04:45:40 -04:00
Lioncash 26f847494e CDynamicVertexBuffer: Make use of std::array where applicable
Same behavior, but eliminates hardcoded sizes.
2020-06-18 04:42:57 -04:00
Lioncash 65482ba272 CCollisionMeshData: Make use of size_t where applicable
Plays nicer with standard types.
2020-06-18 04:37:20 -04:00
Lioncash ce97d79fa3 CBoneTransformData: Make use of size_t where applicable
Plays nicer with standard containers and prevents truncation warnings.
2020-06-18 04:30:57 -04:00
Lioncash cc04eee1b7 NGameList: Tidying up
Cleans up linkage and casts.
2020-06-18 04:20:41 -04:00
Lioncash a54bd900c0 NPropertyMap: Make use of ranged for where applicable
While we're at it, we can tidy up a few other things like linkage
2020-06-18 04:13:18 -04:00
Lioncash 6799e40ef5 IProperty: Make use of ranged for where applicable
Same behavior, less moving parts.
2020-06-17 17:54:57 -04:00
Lioncash e4feff9930 CTweakManager: Remove unnecessary inline specifier 2020-06-17 17:34:34 -04:00
Lioncash b2ad9cf13b CTweakData: Fix -Wreorder warnings 2020-06-17 04:32:14 -04:00
Lioncash 4a020d1d4a CSkin: Make use of ranged for where applicable
Same behavior, less code.
2020-06-17 04:27:54 -04:00
Lioncash 32dafc6bb8 CSkeleton: Make use of size_t where applicable
Prevents truncation warnings.
2020-06-17 04:24:49 -04:00
Lioncash 566a32fd75 General: Migrate off non-constexpr constants 2020-06-16 22:48:11 -04:00
Lioncash c8ebbc860b CMaterialSet: Collapse loop into find_if
Same behavior, explicit intent.
2020-06-16 18:45:52 -04:00
Lioncash 2d2210cd9e CMaterial: Make use of size_t for loops where applicable
Consistency.

While we're at it, remove an unused include.
2020-06-16 18:42:28 -04:00
Lioncash f44a5fc8d2 CShader: Mark several functions as const
These don't modify internal member state.
2020-06-16 18:33:01 -04:00
Lioncash a67df9865e CShader: Make use of unique_ptr where applicable
Prevents unsafe allocations by default.
2020-06-16 18:27:13 -04:00
Lioncash 4d34589816 CDrawUtil: Make use of std::array
While we're at it, we can make several arrays constexpr.
2020-06-16 18:04:10 -04:00
Lioncash 43596280c5 CVertexBuffer: Make use of size_t in Reserve() 2020-06-16 17:42:24 -04:00
Lioncash 3d1ced47e2 CVertex: Make use of std::array where applicable
Allows dehardcoding sizes and simplifies comparison code.
2020-06-16 17:17:20 -04:00
Lioncash a17d43a87d CVertexBuffer: Make use of size_t where applicable
Same behavior, less truncations.
2020-06-16 16:48:25 -04:00
Lioncash d081dd87cf CVertexBuffer: Make use of std::array
Same behavior, but without hardcoded array sizes.
2020-06-16 16:13:47 -04:00
Lioncash 09f5163184 CStringTable: Make use of size_t
Plays nicer with standard containers. While we're at it, we can use
std::move where applicable.
2020-06-16 15:17:23 -04:00
Lioncash f71ef1e615 CStringList: Make use of size_t
Prevents truncation warnings.
2020-06-16 14:25:07 -04:00
Lioncash c980df5188 CSourceAnimData: Make use of ranged for where applicable 2020-06-16 14:21:02 -04:00
Lioncash 84a42cd3c2 CWorld: Make use of size_t where applicable
Plays nicer with standard types and prevents type truncations.
2020-06-15 20:14:17 -04:00
Lioncash c9270b65ed CWorld: Make use of std::move in SetName()
Allows calling code to avoid copies.
2020-06-15 19:55:43 -04:00
Lioncash e18e73cca5 CBasicModel: Make use of size_t where applicable
Same behavior, but without some internal variable truncation.
2020-06-15 19:48:25 -04:00
Lioncash 4978bc9e5c CBasicModel: Make use of explicit 2020-06-15 19:32:44 -04:00
Lioncash fa883930db CAudioManager: Make use of ranged for 2020-06-15 19:28:34 -04:00
Lioncash 7a6c30861d CAreaAttributes: Make constructor explicit 2020-06-15 18:59:04 -04:00
Lioncash 9bcb2f288d CAnimationParameters: Provide operator!=
Provides logical symmetry.
2020-06-15 15:41:58 -04:00
Lioncash f498088bed CAnimationParameters: Default copy constructor and assignment operator
Same behavior, less code.
2020-06-15 15:36:33 -04:00
Lioncash 247fcd37a8 CAnimationParameters: Remove unnecessary inline specifiers 2020-06-15 15:34:57 -04:00
LC d0a32518cd
Merge pull request #21 from lioncash/anim
CAnimationParameters: Add missing break in switch cases in SetUnknown()
2020-06-15 15:33:31 -04:00
Lioncash 7ba5a0cc58 CSceneNode: Convert 0 literal to nullptr 2020-06-15 15:31:12 -04:00
Lioncash 77248960f8 CModel: Simplify InternalGetIBO() a little
We can use the result of the emplace_back directly.
2020-06-15 14:55:50 -04:00
Lioncash 79f7b62960 CMaterialSet/CModel: Make use of size_t where applicable
Prevents type truncation warnings internally and also provides slightly
better code-gen, given the upper half of 64-bit registers don't need to
be constantly cleared.
2020-06-15 14:49:38 -04:00
Lioncash 6edea6a225 CMaterialSet: Make Clone() return a unique_ptr
Makes the returned pointer leak-free by default.
2020-06-15 14:12:06 -04:00
Lioncash 95f6c3360d CMaterialPass: Make use of size_t where applicable
Plays nicer with standard types.
2020-06-15 14:08:36 -04:00
Lioncash b90bd90e03 CMaterial: std::move string in SetName()
Allows callers to avoid copies.
2020-06-15 14:02:59 -04:00
Lioncash e7b3015f08 CMaterial: Make use of size_t where applicable
Prevents truncation warnings from occurring.
2020-06-15 14:02:55 -04:00
Lioncash 5b96480a45 CMaterial: Simplify Clone() a little
Given we use std::array now, we can perform a direct assignment instead
of a loop.
2020-06-15 13:55:22 -04:00
Lioncash 28587fb622 CSceneNode: std::move string in SetName()
Allows for calling code to completely avoid copies being made.
2020-06-15 13:48:57 -04:00
Lioncash e962d9ba96 CLight: Correct lack of assignment in SetSpotCutoff()
Brought this up with Antidote and was told that this is likely what was
intended to be done.
2020-06-14 20:16:54 -04:00
Lioncash 9e3018809f CWorld: Eliminate sign conversion warnings 2020-06-14 19:48:23 -04:00
Lioncash 35ea47e473 CWorld: Make use of in-class initializers
Same behavior, less code.
2020-06-14 19:47:05 -04:00
Lioncash 128ee0d01c CMaterialLoader: Make use of static
This function doesn't touch instance state at all
2020-06-14 19:43:43 -04:00
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
Jack Andersen 5304f8026e Quickplay integration for MacOS 2019-05-27 12:39:24 -10:00
Jack Andersen acd925ffaa Mac OpenGL fixes 2019-05-27 11:25:00 -10:00
Jack Andersen c4cc4b8657
Merge pull request #2 from Antidote/cmake
Fix crashes while attempting to load MP2 and MP3
2019-05-27 01:01:51 -10:00
Jack Andersen 5a8b62b1cd Mac build fixes 2019-05-27 00:59:37 -10:00
Phillip Stephens cd9601d6aa Fix QuickPlay on Linux, add more robust executable validation 2019-05-27 00:13:15 -07:00
Jack Andersen 374d836154 Disable user template editing if directory not writable 2019-05-26 20:38:29 -10:00
Phillip Stephens 7819b07df5 Fix crash in CompressionUtil::DecompressLZO
Fix invalid ActorMultiKeyFrame template reference
2019-05-26 22:23:54 -07:00
Jack Andersen 28f96e91c2 More linux and memory leak fixes 2019-05-26 18:59:19 -10:00
Jack Andersen fc7cffbf37 Silence MSVC warning and remove pointless glew utilities 2019-05-26 15:49:50 -10:00
Jack Andersen 981b374232
Merge pull request #1 from Antidote/cmake
Silence Warnings
2019-05-26 15:38:50 -10:00
Jack Andersen d593500e18 Codegen fixes, DPI scaling, SVG icons 2019-05-26 15:29:10 -10:00
Phillip Stephens 1c80a13c23 Silence Warnings 2019-05-26 18:18:31 -07:00
Jack Andersen 9f94db6c82 Linux build fixes 2019-05-25 20:24:13 -10:00
Jack Andersen 20862139b6 Alphabetical includes and UICommon usages 2019-05-23 15:35:23 -10:00
Jack Andersen 1c86aedb21 Fixes for binary directory generation 2019-05-23 15:02:08 -10:00
Jack Andersen b6191dc330 Initial round of CMake refactoring 2019-05-23 13:04:29 -10:00
Aruki b1fdc7e025 Update version number on master 2019-04-17 23:47:52 -07:00
Aruki a21fd08e4a Fixed Dolphin browse button not being hooked up 2019-04-08 11:03:34 -07:00
Aruki cfd5088a30 Added layer toggle support for quickplay 2019-04-08 01:04:54 -07:00
Aruki da30cac887 Added "Give All Items" quickplay feature 2019-04-07 11:43:32 -07:00
Aruki 42d079ff49 Added widget for toggling quickplay properties 2019-04-07 00:00:33 -07:00
Aruki 7de85a5a2d Quickplay support 2019-04-06 15:53:05 -07:00
Aruki 3507be8e42 Polished collision editor UI a bit 2019-02-18 03:59:19 -07:00
Aruki 0827c05802 Various crash fixes 2019-02-18 03:54:58 -07:00
Aruki 4e1560a99c Reorganized collision data classes & added basic collision editor window with an OBB tree visualization 2019-02-12 02:50:07 -07:00
Aruki ff021dcdda Fixed log spam during project creation 2019-02-11 01:57:29 -07:00
Aruki b49f19c386 Fixed crash when creating new projects 2019-02-04 23:15:20 -07:00
Aruki 1baa48de34 Merge branch 'StringEditing' 2019-02-03 03:32:34 -07:00
Aruki 96c1aae27f Added support for deleting resources + minor fixes 2019-02-03 02:22:36 -07:00
Aruki 56843e214d Added ability to create brand new SCAN/STRG assets. Added ability to update old projects. 2019-02-02 17:32:19 -07:00
Aruki 1e997dac46 Implemented SCAN cooker 2019-01-30 13:48:05 -07:00
Aruki 1360202ee5 Added commandline-operated test for verifying cooker output 2019-01-30 01:05:52 -07:00
Aruki 9d23d9550a MP2/MP3/DKCR tweak saving support 2019-01-28 03:55:15 -07:00
Aruki 246784926f Added scan editor 2019-01-27 16:49:51 -07:00
Aruki e2d554ae8b Tweak templates for MP2, MP3, and DKCR 2019-01-27 16:47:56 -07:00
Aruki 992c76720d Support for loading MP2/MP3/DKCR tweaks 2019-01-25 14:06:13 -07:00
Aruki e9e1ccb8d6 String cooking support 2019-01-12 23:43:41 -08:00
Aruki a1d94cc58f Rewrote SCAN asset handling + loading 2019-01-12 21:28:04 -08:00
Aruki 32b12ff650 Fixed a couple things related to attempting to create projects for demo builds 2019-01-12 09:28:06 -08:00