Phillip Stephens
3b5d5e1473
Update zeus
2022-03-12 09:03:55 -08:00
Luke Street
a3d0da44e2
Implement CGX & migrate usages to CGX/GX
2022-03-12 10:47:20 -05:00
Luke Street
d7dbec5be0
Implement CVertexMorphEffect & CSkinnedModelWithAvgNormals (prev. CMorphableSkinnedModel)
2022-03-10 18:56:50 -05:00
Luke Street
8096ffc29a
CCubeMaterial: Fix kcolor set in HandleTransparency
2022-03-10 03:27:50 -05:00
Luke Street
cd963c4a5c
Reimplement CSkinRules/CSkinnedModel; skinning kinda works!
2022-03-10 01:33:17 -05:00
Luke Street
d62336b813
CModel destructor & frame list fixes
2022-03-09 02:23:56 -05:00
Luke Street
c7f05d0a59
Windows fixes & memory fixes
2022-03-08 18:36:39 -05:00
Luke Street
3fd0b1f23a
Fixes & CArtifactDoll/CSamusDoll updates
2022-03-08 17:21:15 -05:00
Luke Street
e88f831950
Implement HandleTransparency, lighting & fix texture load
2022-03-08 17:19:02 -05:00
Luke Street
e0a7236ad6
Various model rendering fixes
2022-03-08 02:44:57 -05:00
Phillip Stephens
eb17b8061d
CTevCombiners: I overlooked a possible buffer overrun, fix it by using `maxTevStages` instead of `ERglTevStage::MAX`
2022-03-07 22:19:07 -08:00
Phillip Stephens
791b1fa598
CTevCombiners: Add KColorSel and KAlphaSel configuration to CTevPass::Execute
2022-03-07 22:13:25 -08:00
Phillip Stephens
cb2440d79c
CTevCombiners: Remove hack in CTevPass::Execute
2022-03-07 22:08:48 -08:00
Luke Street
14a82a678a
Some hacks for TEV stage handling
2022-03-08 00:28:31 -05:00
Luke Street
71342ed75e
More aurora::gx refactoring
2022-03-07 18:53:42 -05:00
Phillip Stephens
35674c27e5
CCubeRenderer: More rendering imps
2022-03-06 19:07:00 -08:00
Phillip Stephens
aea7ac597a
CCubeRenderer: more model darw imps
2022-03-06 13:01:25 -08:00
Luke Street
7d07892198
Extract GX shader/pipeline generation into shared API
2022-03-06 15:58:06 -05:00
Luke Street
cd86dbd6ee
More CCubeMaterial, more CGraphics, more aurora::gx
2022-03-06 02:46:42 -05:00
Phillip Stephens
7a61b6cf30
CCubeModel: Fix typo
2022-03-05 20:52:14 -08:00
Phillip Stephens
2bdfe96134
CCubeRenderer: Start getting world rendering implemented
2022-03-05 20:50:54 -08:00
Luke Street
6c3e74b93e
CGuiFrame & Model fixes; CModel::Draw impl; Document CModelFlags bits
2022-03-05 19:26:52 -05:00
Luke Street
84b6fcfb44
Remove forRenderer from CGraphics PerspectiveProjectionMatrix
2022-03-05 18:30:43 -05:00
Phillip Stephens
6b1948176a
Remove redundant `GX` specifieron IndTexScale
2022-03-05 13:48:46 -08:00
Phillip Stephens
24a602c10f
Cleanup and more migration to Stream
2022-03-05 13:46:53 -08:00
Luke Street
33d0d14fda
Initial working CGraphics Stream API
2022-03-04 22:37:07 -05:00
Luke Street
740114af9e
Begin transitioning to new CTexture; start Stream API
2022-03-04 02:47:21 -05:00
Phillip Stephens
00fd243f62
CCubeRenderer: Don't fill up the buckets uncontrolled
2022-03-03 00:33:24 -08:00
Phillip Stephens
487dcc4bde
CSkinRules: Fix ReadCount not incrementing offset properly
2022-03-03 00:24:46 -08:00
Phillip Stephens
7010c36056
DolphinCTexture: Near complete RE, usable as-is!
2022-03-02 23:51:11 -08:00
Phillip Stephens
b0a711d5e2
Initial proper CTexture RE, fix configuration corruption
2022-03-02 00:26:24 -08:00
Phillip Stephens
44f9d6648a
CGraphics: Viewport fixes
2022-02-27 14:46:15 -08:00
Luke Street
fb69d3fdba
aurora: Add more GX state functions & cleanup
2022-02-27 16:58:27 -05:00
Phillip Stephens
004d78100f
More CCubeRenderer imps
2022-02-27 13:17:44 -08:00
Phillip Stephens
805065b6f2
CCubeRenderer: Add Drawable logic implemented
2022-02-27 12:12:02 -08:00
Luke Street
1583248896
Fix missing CMoviePlayer::Initialize call
2022-02-27 12:08:24 -05:00
Phillip Stephens
b02ec12049
Initial CFont implementation, proper CTexture/CGraphicsPalette structures
2022-02-26 18:18:58 -08:00
Phillip Stephens
7a59585c70
Use RE'd CStopwatch adapted for std::chrono, get metaforce linking again
2022-02-26 08:42:42 -08:00
Luke Street
586268c66f
More CCubeModel/CCubeMaterial
2022-02-26 02:05:59 -05:00
Luke Street
832eb180bd
Begin transitioning to new CModel/CCubeModel & friends
2022-02-25 02:45:25 -05:00
Luke Street
c3c9f9d601
Remove shader warmup
2022-02-23 03:20:29 -05:00
Luke Street
c33674b9ab
Lots of Windows fixes; add D3D12; more boo decoupling
2022-02-22 00:53:57 -05:00
Luke Street
57d96dbb17
Fully decouple hecl from Metaforce
...
- Added CStringExtras Convert functions
(and UTF-compatible versions)
- GX header copied into Runtime
- SFX headers copied into Runtime/Audio
2022-02-21 08:01:06 -08:00
Phillip Stephens
6c92f03664
Move CVar* into Metaforce to begin removal of hecl's Dataspec
2022-02-21 08:01:06 -08:00
Phillip Stephens
ad272f7468
More refactoring, decouple tweaks from hecl
2022-02-21 08:01:05 -08:00
Phillip Stephens
dad7249927
RE COutput/InputStream and friends and migrate over
...
This branch is probably still horribly broken, but it's a good first step to migrating away from having hecl embedded in the runtime
2022-02-21 08:01:05 -08:00
Luke Street
c64f9eb2d1
aurora: Reimplement textures
2022-02-17 19:38:31 -05:00
Luke Street
7b9f893a49
aurora: the boring C++ version
2022-02-16 00:21:24 -05:00
Phillip Stephens
acd861754c
TexturedQuad fixes, Better controller input handling (needs custom mapping)
2022-02-08 11:18:12 -08:00
Luke Street
b871cc965a
memmove -> memcpy
2022-02-08 01:59:09 -05:00
Luke Street
921d6bf10a
Working movie player
2022-02-08 01:54:05 -05:00
Luke Street
a1482b4743
SDL controller input
2022-02-07 20:48:08 -05:00
Phillip Stephens
c53ee12578
Add ability to check if DXT1/BC1 is supported, create a fake texture for the time being for hardware that doesn't support it
2022-02-06 05:13:19 -08:00
Phillip Stephens
06a1c6e8ac
Minor fixes, get PRESS START rendering
2022-02-05 07:22:30 -08:00
Phillip Stephens
8d01afc632
Finish CModel constructors
2022-02-04 00:10:09 -08:00
Phillip Stephens
dca8af4d96
Fix division on packed normals
2022-02-03 07:26:33 -08:00
Phillip Stephens
9461fe0563
More CModel RE, removed the separated normal types hack
2022-02-03 07:24:41 -08:00
Phillip Stephens
aca91b9361
More CModel re-reverse engineering
2022-02-01 23:18:03 -08:00
Phillip Stephens
05f841a5ce
More CModel RE
2022-02-01 01:18:42 -08:00
Phillip Stephens
3ba2c4bfff
Minor fixes, more CModel RE
2022-02-01 00:14:49 -08:00
Luke Street
e48435f11e
Start wiring up wgpu+winit
2022-01-31 19:06:54 -05:00
Luke Street
a2cc6cd204
Merge remote-tracking branch 'darkszero/feature/lazy-commit-resources'
...
# Conflicts:
# extern/boo
2021-10-25 23:07:56 -04:00
Luke Street
32e115f4aa
Merge remote-tracking branch 'origin/main' into utf8
...
# Conflicts:
# DataSpec/DNAMP1/FRME.cpp
# DataSpec/DNAMP1/MLVL.cpp
# Runtime/CMain.cpp
# hecl/lib/Blender/Connection.cpp
2021-10-25 19:03:01 -04:00
Phillip Stephens
3bb05c0ee5
Always initialize all pipelines in CElementGenShaders, this prevents an edge case in Quarantine Access B
2021-08-06 20:19:29 -07:00
Henrique Gemignani Passos Lima
d2ae2b3818
Support lazy CGraphics::CommitResources
2021-07-04 02:53:04 +03:00
Luke Street
9ca1a38171
Use UTF-8 exclusively internally
...
This removes SystemString, SystemChar, etc.
All filepaths and log strings are assumed to be UTF-8,
with conversions to UTF-16 for Windows APIs as appropriate.
Updates amuse, athena, boo, kabufua and nod
2021-06-30 14:20:45 -04: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
Luke Street
94f10bb002
Remove Editor & specter
2021-05-29 18:45:07 -04:00
Phillip Stephens
847211f81f
Remove unnecessary switch from CLight constructor
2021-05-06 10:52:35 -07:00
Phillip Stephens
5e0604f101
Correct Light radius calculation
2021-05-06 10:51:54 -07:00
Phillip Stephens
f795332d89
Merge pull request #388 from henriquegemignani/feature/optick
...
Using optick, linked from boo
2021-04-18 17:31:29 -07:00
Luke Street
fb9ea9092a
Merge branch 'massive-rename'
2021-04-10 09:38:42 -04:00
Henrique Gemignani Passos Lima
d6f19d26e7
Using optick, linked from boo
2021-04-10 09:21:34 -04:00
Henrique Gemignani Passos Lima
e3896bdee9
Combine CommitResources for CBooRenderer::UpdateAreaUniforms.
...
This shares the IGraphicsDataFactory::Context over many functions, to avoid
the overhead of calling CGraphics::CommitResources multiple times.
2021-04-10 09:18:45 -04:00
Phillip Stephens
9bae2f943e
Rename everything
2021-04-10 01:42:06 -07:00
SirMangler
7fb4c45046
FPS Counter and debug overlay CVAR
2021-01-10 16:10:55 +00:00
Luke Street
168eb6ac39
CModelShaders: Split Thermal into ThermalModel, ThermalStatic extended shaders
...
This semi-hacky approach will be replaced with future hsh work
2020-12-18 06:08:25 -05:00
Luke Street
9e5f28ba80
CModelShaders: Check noZWrite for thermal depth test
...
Adds back LightingAlphaWrite extended shader
2020-09-27 12:59:56 -04:00
Luke Street
6ff305da06
CModelShaders: Disable Z-test for LightingAlphaWrite
...
Permits static thermal hot objects to render properly
2020-09-27 12:23:54 -04:00
Luke Street
2361916614
CBooRenderer: Don't smash the stack
2020-09-16 13:07:53 -04:00
Luke Street
bc8135e896
CBooRenderer: Fix light count in ActivateLightsForModel
2020-09-16 13:01:06 -04:00
Lioncash
a32e21df14
General: Resolve -Wcast-qual warnings
...
We can just avoid casting away const in order to resolve these warnings.
2020-08-23 15:54:54 -04:00
Lioncash
c9f5483c59
CLineRendererShaders: Make use of static inline variables
...
Same behavior, less code.
2020-08-02 03:02:08 -04:00
Lioncash
83c2023bbb
CElementGenShaders: Make use of static inline variables
...
Same behavior, less code
2020-08-02 02:57:02 -04:00
Lioncash
4e1ff26f56
CDecalShaders: Make use of static inline variables
...
Same behavior, less code.
2020-08-02 02:53:15 -04:00
Lioncash
25c017e0cc
CModelBoo: Make use of static inline variables
...
Same behavior, but allows all the initializers to be in one place,
rather than throughout the cpp file.
2020-08-01 23:33:50 -04:00
Lioncash
391e97fbd1
CBooRenderer: Eliminate mixed signedness bitwise ANDing
...
Prevents sign mismatch warnings.
2020-08-01 04:42:06 -04:00
Luke Street
d44eccc386
Runtime: constexpr fixes for gcc
2020-05-27 13:02:20 -04:00
Luke Street
c1f7358d96
CWideScreenFilter: Implement DrawFilter
2020-05-14 19:23:43 -04:00
Lioncash
f2d0939a15
CParticleSwooshShaders: Remove unused file-scope variable
...
Same behavior, one less runtime static constructor.
2020-05-12 20:50:35 -04:00
Lioncash
4e718a805f
CFluidPlaneShader: Replace explicit operator bool calls with the analogous named function
...
Same behavior, more informative to the reader about what is being
checked for.
2020-05-12 20:45:32 -04:00
Lioncash
4b5074b298
RuntimeCommon: Const qualify auto references where source is const
...
Marks references that would be deduced as const automatically with const
to be explicit to the reader.
2020-05-12 20:32:51 -04:00
Lioncash
8e77d6175c
CTextureBoo: Make use of std::array where applicable
...
Allows dehardcoding some array sizes.
2020-05-12 20:23:27 -04:00
Lioncash
e0a44bdf45
CTextureBoo: Prevent signed conversion warnings from occurring in Convert* helper functions
2020-05-12 20:03:58 -04:00
Lioncash
fee8d91dca
CTextureBoo: Make use of anonymous namespace
...
Makes some helper functions have internal linkage, silencing some
-Wmissing-declarations warnings, and also allows preventing ODR
violations from ever occurring with the RGBA8 and DXT1Block structs.
2020-05-12 20:01:58 -04:00
Lioncash
df3aed75fe
CGameArea: Eliminate implicit sign conversions in Validate()
2020-04-23 02:53:24 -04:00
Lioncash
fe642bde8b
CCameraBlurFilter: Make use of std::array where applicable
...
Same behavior, less hardcoded sizes.
2020-04-22 00:13:43 -04:00
Lioncash
fa3e639a9d
RuntimeCommon: Make use of bitfield initializers where applicable
...
Continues and finishes the migration towards initializing all bitfield
members where applicable
2020-04-21 17:16:19 -04:00