Commit Graph

1664 Commits

Author SHA1 Message Date
Fabian Neundorf
0b46acab54
Name m_unk0x21 as GetUseAlias in LegoMesh (#1567) 2025-06-17 18:42:59 +02:00
Fabian Neundorf
fd3f08f4c4
Clear unknowns in LegoBuildingInfo and LegoBuildingManager (#1566)
* Clear unknowns in `LegoBuildingInfo` and `LegoBuildingManager`

* Name remaining unknown in `LegoBuildingManager`
2025-06-16 23:08:17 +02:00
Fabian Neundorf
16ccb0e06e
Name locations after exiting buildings/vehicles (#1564)
* Hospital
* Infocenter
* Garage
* Police
* Jetski Build
* Racecar Build
* Any vehicle
2025-06-15 19:31:19 +02:00
Christian Semmler
e6a005fd33
Merge remote-tracking branch 'isle/master' 2025-06-15 09:00:56 -07:00
Fabian Neundorf
aeac9f787e
Gasstation (#1560)
* Clear unknowns in `GasStation` and `GasStationState`

* Make global variable in gasstation unique

* Apply same name to global variable in hospital.cpp
2025-06-15 08:48:54 -07:00
Anders Jenbo
4c80c8d923
Add 32bit color support (#311) 2025-06-14 23:09:23 +00:00
Fabian Neundorf
26978f5484
Name LegoLOD::FUN_100aae20 (#1562) 2025-06-14 19:56:46 +02:00
Anders Jenbo
43a261b945
Use pitch instead of trying to calculate it (#308) 2025-06-14 19:42:50 +02:00
Christian Semmler
2733ffcf69
Fix presenter progress event (#300) 2025-06-13 16:32:25 +00:00
Anders Jenbo
48d81f9324
Allow software renderer to not be the first (#297) 2025-06-13 06:29:04 +02:00
Christian Semmler
2e7d453881
Merge remote-tracking branch 'isle/master' 2025-06-12 19:14:41 -07:00
Christian Semmler
e321385803
BETA matches in ViewManager (#1559)
* BETA matches

* Fix

* Fix `ViewManager::Update`
2025-06-13 04:14:28 +02:00
Anders Jenbo
ea29aee6f6
Allow all CPUs to run the game the best they can (#296) 2025-06-13 02:32:12 +02:00
Anders Jenbo
81ba75ea65
SIMD optimize z-buffer clear (#283) 2025-06-13 01:21:34 +02:00
Christian Semmler
5080e372f9
Emscripten port (#229)
* Emscripten port

* Fix NCC

* Update CMakeLists.txt

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Update CMakeLists.txt

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Update CMakeLists.txt

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Update CMakeLists.txt

* cmake: set iniparser cmake options in local scope

* ci: try adding emscripten to test matrix

* cmake: try to make CMake install package more usable

* cmake: fix typo

* Update CMakeLists.txt

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>

* Add support for .ini loading

* Different default full screen behavior for Emscripten

* Add comments

* Add web platform

---------

Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
2025-06-13 00:26:43 +02:00
Christian Semmler
6d99683f1d
Merge remote-tracking branch 'isle/master' 2025-06-12 14:35:18 -07:00
Anders Jenbo
d3378026ba
Remove screen mode restrictions and related code (#291) 2025-06-12 22:51:42 +02:00
Fabian Neundorf
7b619d5544
Clear unknowns in LegoPlantManager (#1557) 2025-06-12 09:33:32 -07:00
jonschz
596ebde9d3
Add BETA10 assertions in LegoPathController (#1555)
* Add BETA10 assertions in LegoPathController

* formatting

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-06-12 08:52:56 +02:00
Christian Semmler
098e2a6894
Fix Infocenter -> Act2/Act3 switch (#286) 2025-06-12 02:31:16 +02:00
MasterTimeThief
9aa8dbfc46
Clear unknowns in 'LegoCarBuild' and 'LegoCarBuildPresenter' (#1542)
* Renamed variables and functions related to the Car Build sections

* Car Build variable renaming - fixed issues and added enum `ShelfState`

* Fixed some spacing in `legocarbuildpresenter.h`

* Fixed tab spacing

* Changed `m_shelfState` back to `MxU16`

* Cleared up `InitBuildPlatform`

* Fixed comments
2025-06-11 23:37:50 +02:00
Fabian Neundorf
3b3fe276c4
Clear unknowns in LegoPhoneme (#1556) 2025-06-11 23:29:23 +02:00
Anonymous Maarten
319317819c
Fix ASAN error when starting cart race (#278) 2025-06-11 04:09:28 +02:00
Christian Semmler
9e549e25f3
Merge remote-tracking branch 'isle/master' 2025-06-10 18:17:28 -07:00
Anonymous Maarten
bc481cc1c5
assert(0) in LegoCarRaceActor::VTable0x1c is beta10-only (#1553) 2025-06-11 03:17:24 +02:00
Christian Semmler
cb199a8728
Merge remote-tracking branch 'isle/master' 2025-06-10 17:19:24 -07:00
Fabian Neundorf
99ff92e49e
Use enum for states in PoliceState (#1552) 2025-06-10 16:07:10 -07:00
Fabian Neundorf
180d4949da
Clear unknowns in PoliceState (#1551) 2025-06-10 11:51:21 -07:00
Christian Semmler
9ebeda5c0e
Add Max LOD and Max Allowed Extras configs (#273)
* Add new config options

* Fix defaults

* Use global for `m_maxAllowedExtras`

* Revert
2025-06-10 01:08:13 +00:00
Christian Semmler
e2b39f9144
Fix MxStopWatch (#271) 2025-06-10 02:10:25 +02:00
Christian Semmler
0a1516fbd9
Merge remote-tracking branch 'isle/master' 2025-06-09 16:17:50 -07:00
Christian Semmler
8cdc8fbc05
Name LegoAnimationManager::m_unk0x41c (#1550) 2025-06-10 01:17:34 +02:00
Christian Semmler
fae0416716
Merge remote-tracking branch 'isle/master' 2025-06-09 13:04:34 -07:00
Anonymous Maarten
7e9acc8d04
Add IDirect3DRMMiniwinDevice interface (#267) 2025-06-09 16:34:37 +00:00
MS
f334eae667
Fix #1548 (#1549) 2025-06-08 21:38:36 -04:00
Christian Semmler
897700c19a
Update legomodelpresenter.cpp (#265)
* Update legomodelpresenter.cpp

* Update legopartpresenter.cpp
2025-06-09 00:55:38 +00:00
Fabian Neundorf
82f1ce8814
Clear unknowns/numbers in Hospital and HospitalState (#1545)
* Define state variables in `HospitalState`

* Cleared unknown for flashing leds in `Hospital`

* Misc name changes in `Hospital`

* Name states in `Hospital`
2025-06-08 15:57:38 -07:00
Christian Semmler
1a91547011
Update legomodelpresenter.cpp (#264)
* Update legomodelpresenter.cpp

* Update renderer.cpp
2025-06-08 15:55:35 -07:00
Anonymous Maarten
59105d74f8
Fix UBSAN warning when starting the jetski race (#263) 2025-06-09 00:14:47 +02:00
Florian Kaiser
36c1093c88
Clear unknowns in LegoPathBoundary, LegoWEEdge, LegoWEGEdge and LegoPathController (#1546) 2025-06-08 11:04:58 -07:00
Florian Kaiser
06af7d25c6
Rename g_wdbOffset to g_wdbSkipGlobalPartsOffset for clarity (#1547) 2025-06-08 08:04:06 -07:00
Fabian Neundorf
7471852e9d
Named unknown function in LegoTextureInfo (#1544) 2025-06-07 18:04:55 +02:00
Christian Semmler
bf24fa4a57
Update legounknown.cpp (#253) 2025-06-06 18:45:33 -07:00
Christian Semmler
6a1f013df2
Fix LegoUnknown::FUN_1009a1e0 (#250) 2025-06-07 03:02:06 +02:00
Christian Semmler
8acfdd8ccb
Merge remote-tracking branch 'isle/master' 2025-06-06 14:23:19 -07:00
Christian Semmler
d714bf62f1
Improve LegoPathActor::VTable0x84 BETA match (#1543) 2025-06-06 23:22:46 +02:00
Fabian Neundorf
ac4d3b2490
Name for bounding box in ROI (#1541)
* Name for bounding box in ROI

* Use snake_case for member
2025-06-06 11:47:45 -07:00
Christian Semmler
8e55368615
Fix image serialization bugs (#238) 2025-06-05 02:20:53 +02:00
Christian Semmler
0b8a7a758d
Merge remote-tracking branch 'isle/master' 2025-06-04 14:31:13 -07:00
Fabian Neundorf
9134dd791c
Name boolean field in Mesh (#1540) 2025-06-04 23:30:06 +02:00
Fabian Neundorf
d272054d5a
Clear unknowns in legocharactermanager (#1539) 2025-06-04 23:29:41 +02:00
Anders Jenbo
fcdcc15cc1
Log FPS with SDL_Log for now (#232) 2025-06-04 16:35:11 +02:00
Fabian Neundorf
d7d3a47cd2
Add names to LegoActorInfo.Part (#1538)
Each part consists of two "blocks" where every block has a list of
indices which reference into a list of names and the actual index used
for the list of indices.

By doing that, it is possible to reuse the list of name for every actor
and instead have a "sublist" through the indices list.
2025-06-03 18:11:01 -07:00
Anders Jenbo
f412d44f83
Config clean ups (#226) 2025-06-03 20:08:09 +02:00
Fabian Neundorf
b4fb9f3a15
Better name for LegoActorLOD's flags (#1537) 2025-06-02 14:21:12 -07:00
Christian Semmler
215c3f1480
Merge branch 'master' of github.com:isledecomp/isle-portable 2025-06-01 10:21:49 -07:00
Christian Semmler
18c9a87953
Fix saving game states (#215) 2025-06-01 19:21:42 +02:00
Christian Semmler
ac6ec7afbb
Merge remote-tracking branch 'isle/master' 2025-06-01 10:19:20 -07:00
Christian Semmler
f48dd8c912
Update legogamestate.cpp (#1535) 2025-06-01 18:46:14 +02:00
MattKC
e03401c98b
adjust rotational speed by delta time (#208) 2025-05-31 13:21:22 +02:00
Christian Semmler
3eba4fce12
Merge remote-tracking branch 'isle/master' 2025-05-30 17:33:33 -07:00
Anonymous Maarten
ac971f8c15
Assertion in MxTransitionManager::StartTransition is beta10-only (#1534)
This fixes an assertion error when:
1. Start the game
2  Skip intro (probably optional)
3. Turn left to the elevator room
4. Enter the elevator
5. Press the (I) button
2025-05-31 02:33:28 +02:00
Christian Semmler
a699a4316a
Merge remote-tracking branch 'isle/master' 2025-05-30 17:20:18 -07:00
Anonymous Maarten
941bc6ffa9
Fix UBSAN entering the petrol station car building minigame (#1533) 2025-05-31 02:19:11 +02:00
Christian Semmler
63a0be90a5
Merge remote-tracking branch 'isle/master' 2025-05-30 12:43:47 -07:00
Anonymous Maarten
e813a12a4a
Fix notification/presenter casts (#1532)
* LegoCarBuild: cast c_notificationType0 to MxNotificationParam

* MxBackgroundAuioManager gets a MxWavePresenter
2025-05-30 21:43:33 +02:00
Anonymous Maarten
58b5a2b96d
Allow entering helicopter build minigame (#204)
* LegoCarBuild: cast c_notificationType0 to MxNotificationParam

* MxBackgroundAuioManager gets a MxWavePresenter
2025-05-30 19:23:54 +00:00
Fabian Neundorf
d0f4725f0f
Fill in unknown color string descriptions (#1531) 2025-05-30 21:12:49 +02:00
Anonymous Maarten
364844d6d0
Use SDL_rand/SDL_randf (#203) 2025-05-30 19:01:01 +00:00
Christian Semmler
bcd0021bb1
Fix anim key construction (#199) 2025-05-29 16:11:43 -07:00
Christian Semmler
a9be411c48
Merge remote-tracking branch 'isle/master' 2025-05-29 14:42:07 -07:00
Christian Semmler
168bd4b26c
Fix LegoTreeNode* construction (#1530)
* Fix LegoTreeNode* construction

* Fix
2025-05-29 23:41:57 +02:00
Christian Semmler
a1ec97ac6e
Merge remote-tracking branch 'isle/master' 2025-05-29 08:50:07 -07:00
Anders Jenbo
211d409992
Apply RAND_MAX to legoanimationmanager.cpp (#1528) 2025-05-29 06:52:15 -07:00
Anders Jenbo
6e0b580b86
Correct delete[] in legocarbuildpresenter.cpp (#1529) 2025-05-29 06:51:42 -07:00
Anders Jenbo
8c9feaac1e
Merge pull request #186 from AJenbo/renderbackends
Implement software rendering backend for d3drm
2025-05-29 10:46:57 +02:00
Anonymous Maarten
e030ed739b
Fixing some ubsan errors while walking around on the island (#194)
* LegoMeterPresenter: use array deleter

* Avoid unaligned access in MxDSSelectionAction::Deserialize

* assert in LegoCarBUild::InitPresenter is BETA10-only

* clang-format
2025-05-29 03:46:13 +00:00
Anonymous Maarten
30ae89f483
LegoMeterPresenter: use array deleter + BETA10-only assertion (#1527)
* LegoMeterPresenter: use array deleter

(cherry picked from commit 0897f75c7c)

* assert in LegoCarBUild::InitPresenter is BETA10-only

(cherry picked from commit 1a41b62f6f)
2025-05-28 20:25:05 -07:00
Anders Jenbo
ef7499bdb9 Restructure miniwin and add support for 3D backends 2025-05-29 04:07:53 +02:00
MS
5646d017f1
RendererImpl, CameraImpl, LightImpl (#1525) 2025-05-28 22:04:01 -04:00
Anonymous Maarten
ea7cac8359
legoanimationmanager: use delete[] (#191) 2025-05-28 18:28:50 -07:00
Anonymous Maarten
45890eec94
legoanimationmanager: use delete[] (#1526) 2025-05-28 18:28:30 -07:00
Christian Semmler
def1cf8a12
Fix missing filesystem map (#190) 2025-05-28 18:20:00 -07:00
jonschz
b7090bd838
Match LegoActor and LegoPathActor in BETA10 (#1524)
* Match `LegoActor` in BETA10

* Cleanup

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-05-27 22:04:01 +02:00
jonschz
4186bae786
Match Helicopter::FUN_100042a0 (#1523)
* Match `Helicopter::FUN_100042a0`

* Add comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-05-26 23:33:52 +02:00
Christian Semmler
3973f84a18 Fix PCH 2025-05-26 09:52:55 -07:00
Christian Semmler
5fc3bfb921 Change to unsigned int 2025-05-26 09:52:18 -07:00
Christian Semmler
70633de3f6 Merge remote-tracking branch 'isle/master' into mergeii 2025-05-26 09:49:34 -07:00
MS
b28fcae005
Match TextureImpl functions (#1521)
* TextureImpl functions

* TglD3DRMIMAGE functions
2025-05-26 18:46:22 +02:00
Christian Semmler
04b669cf96
Fix type cast in MxControlPresenter::FUN_10044270 (#1522) 2025-05-26 18:45:06 +02:00
jonschz
f7744f5550
Fix ambiguous matches in BETA10 (#1520)
* Fix ambiguous matches in BETA10

* Add more functions, fix one LINE annotation

* Fix LEGO1 matches

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-05-26 07:25:47 +02:00
MS
5ad885f958
TglImpl::DeviceImpl functions (#1519) 2025-05-25 11:37:16 -04:00
Florian Kaiser
804632b13f
Refactor LegoUnknown100db7f4 to LegoOrientedEdge (#1515)
* Refactor `LegoUnknown100db7f4` to `LegoOrientedEdge`

* Update LEGO1/lego/sources/geom/legoorientededge.h

* Update legopathcontroller.h

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2025-05-24 23:09:24 -07:00
jonschz
8e54a20d7d
Match DecodeSS2 (#1476)
---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-05-25 07:59:58 +02:00
Anonymous Maarten
bdbd0e31d7
Add D3DRMFrame parent <-> child relation (#161)
* Add D3DRMFrame parent <-> child relation

* Apply suggestions from code review
2025-05-24 22:18:53 -07:00
Christian Semmler
fbdb89cf20
Use SDL_strcasecmp for strcmpi 2025-05-24 08:17:36 -07:00
Christian Semmler
26cd442d95
Merge remote-tracking branch 'isle/master' 2025-05-24 08:12:54 -07:00
Christian Semmler
a860e76dba
Match LegoOmni::GetWorldId (#1517) 2025-05-24 17:12:07 +02:00
Florian Kaiser
90b5c27a8b
Clear unknowns in MxBackgroundAudioManager (#1516)
* Clear unknowns in `MxBackgroundAudioManager`

* Apply suggestions from code review

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2025-05-24 06:49:43 -07:00
Christian Semmler
390fef9f9a
Fix isledecomp/isle merge (#150)
* Fix isledecomp/isle merge

* Use constant
2025-05-23 18:48:29 +02:00