Commit Graph

87 Commits

Author SHA1 Message Date
Luke Street f80813b9cc Transition all Textured/ColoredQuad usages
- Upload textures using staging buffer
- Fixes SetOrtho logic
- More work on thermal visor rendering (still WIP)
- Rework Dawn backend initialization
- Support MoltenVK on Metal
- Various fixes & cleanup
2022-05-23 20:26:35 -04:00
Luke Street 22dfd3b3f7 aurora: Rework texture binding API
- Texture binding is now handled by GX calls
- More CCubeMaterial / CCubeRenderer impl
- Semi-working thermal visor rendering
- More CGraphicsPalette impl
- Some CWorldShadow impl
- Start work on indirect texturing
- Stub out CTextRenderBuffer
2022-05-13 19:40:31 -04:00
Luke Street 4e06ea1bb5 Various lighting fixes 2022-05-12 01:10:06 -04:00
Phillip Stephens 44f9d6648a
CGraphics: Viewport fixes 2022-02-27 14:46:15 -08:00
Luke Street 832eb180bd Begin transitioning to new CModel/CCubeModel & friends 2022-02-25 02:45:25 -05:00
Luke Street 5a41dab870 Merge remote-tracking branch 'origin/main' into wgpu
# Conflicts:
#	extern/boo
2022-02-08 03:46:22 -05:00
Luke Street e48435f11e Start wiring up wgpu+winit 2022-01-31 19:06:54 -05:00
Phillip Stephens 13d4a94ee1
PhazonBeam fixes, add debug hack for Metroid Prime's lair cutscene trigger 2022-01-09 17:17:51 -08:00
Phillip Stephens a9bcb7a9ce
Reformat pass 2021-06-07 12:29:18 -07:00
Phillip Stephens 0b4f15341b
Use EntityList instead of `rstl::resverved_vector<TUniqueId, 1024>' directly 2021-06-06 17:07:45 -07:00
Phillip Stephens 5f1aed51cb
De-hardcode max entity count 2021-06-06 16:53:41 -07:00
Phillip Stephens 1654333a16
Only allocate particle buffers as needed, greatly improves performance and removes certain hacks 2021-04-18 16:53:51 -07:00
Phillip Stephens 9bae2f943e
Rename everything 2021-04-10 01:42:06 -07:00
Luke Street 76de1541f2 Runtime: Resolve -Wrange-loop-analysis warnings (part 2) 2020-09-18 17:04:50 -04:00
Lioncash 5d209c8dc8 General: Mark a handful of deduced const variables as const explicitly
Same behavior, but makes it explicit to the reader that these are const.

Prevents cases where the reader might assume that just because the
variable isn't const qualified that it must be mutable, when it actually
isn't.
2020-05-08 18:41:29 -04:00
Lioncash 554893ef85 RuntimeCommonB: Make use of bitfield initializers where applicable
Given that we now target C++20, we can make use of bitfield initializers
where applicable.
2020-04-20 15:57:25 -04:00
Lioncash dca87e7dce CPlayerGun: Convert missed literal to a boolean literal
whoops.
2020-04-19 23:39:04 -04:00
Lioncash 1f8f3726e6 CPlayerGun: Make use of bool literal where appropriate
Avoids a conversion to bool from int.
2020-04-19 23:35:07 -04:00
Luke Street e50d363e88 CPlayerGun: Rename EMissileState; minor CMotionState::Update fix 2020-04-19 00:26:53 -04:00
Lioncash 76f0b57340 General: Use bool literals where applicable
More indicative of the passed in type compared to raw values.
2020-04-17 17:43:56 -04:00
Lioncash 75c07677ed CModel: Mark CModelFlag instances as constexpr where applicable
Allows more runtime initializes to potentially be elided.
2020-04-11 16:56:13 -04:00
Luke Street 22880abb7e Runtime/Weapon: Replace bitfield unions with constructor initializers 2020-04-11 00:49:02 -04:00
Lioncash 2e6bd0f05e CGunWeapon: Eliminate usages of const_cast
Eliminates trivial usages of const_cast by making Draw related functions
non-const. This also allows removing the mutable specifiers from several
shader data members.
2020-04-06 00:52:47 -04:00
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
Phillip Stephens ce5ce35743
Merge pull request #210 from lioncash/bob
CPlayerCameraBob: Minor cleanup
2020-03-12 15:10:19 -07:00
Lioncash 179d19412b CPlayerCameraBob: Make static non-const member variables private
Prevents accidental modification of the values from occurring in code
that makes use of them. Many of these constants aren't even used outside
of the class itself in the first place.
2020-03-09 20:55:12 -04:00
Lioncash 73f11a6132 CPlayerGun: Make use of std::array where applicable 2020-03-09 16:33:10 -04:00
Lioncash 1838e43078 CPlayerGun: Relocate file-static variables and constants into a single anonymous namespace
Keeps all file-static variables organized together.
2020-03-09 16:15:55 -04:00
Lioncash 3abaccb238 CPlayerGun: Resolve trivial implicit sign conversion warnings 2020-03-09 16:04:13 -04:00
Lioncash e80d9c7192 ITweakGunRes: Make use of std::array where applicable
Deduplicates a few array sizes and makes the member variables more
strongly typed.
2020-02-25 15:50:37 -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
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 afab3e0327 Runtime: Make const/non-const getters have the same name
Makes for a more consistent interface, as getters won't have different
names to remember based off whether or not they're const qualified.
2019-08-14 12:45:57 -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
Phillip Stephens ebdcfb6b51 Initial CMetroidBeta imps 2019-08-11 08:14:52 -07: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 410d7896f7 Support for rendering dynamic cubemaps 2019-05-31 17:41:01 -10:00
Jack Andersen 99b1a8ef49 Lots of bug fixes 2019-03-12 17:46:20 -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 b7f35e0528 CRelAngle fix 2018-12-16 17:52:51 -10: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 e1fa938127 Work on CSpacePirate 2018-11-25 16:15:44 -10:00
Jack Andersen 57c1196599 Various bug fixes 2018-11-17 18:01:29 -10:00
Jack Andersen d4bb7d64eb All CPatterned functions implemented 2018-11-10 17:27:54 -10:00
Phillip Stephens c3d8967605 Implement CPowerBomb 2018-09-09 18:04:57 -07:00
Phillip Stephens 489470feda Implement CBomb 2018-09-08 18:13:56 -07:00