florent.teppe
c2e652b8a0
getLand taken out of loop where it's value would always be the same.
2023-05-29 11:32:13 +02:00
florent.teppe
feb60f5ad8
One landsize variable instead of two.
...
fixes issues in constant values.
2023-05-29 11:32:13 +02:00
florent.teppe
d0211acf9e
Fixes bug in terrain loading + collision heightmap works
...
although terrain rendering is 100% broken right now
2023-05-29 11:32:13 +02:00
florent.teppe
c35c7b3640
ESM4::Land loaded, added to store and to land objects
...
it does not work yet. Some things are displayed, but it looks all wrong.
2023-05-29 11:31:37 +02:00
florent.teppe
fffcf52316
land manager cache's key is an ExteriorCellLocation
...
ESM4::Land is now a ESM::LandData
2023-05-29 11:31:37 +02:00
florent.teppe
e0fa15b727
Abstracted Land data that can be used by esm3 and esm4.
2023-05-29 11:31:37 +02:00
florent.teppe
e09cf6ac61
enable terrain takes a worldspace as input
...
enable terrain anslo switches the worldspace.
2023-05-29 11:31:37 +02:00
florent.teppe
1b718f09c5
adding worldspace info to terrain data structures
...
Rendering manager can have multiple terrain, one for each queried worldspace
Terrain::World has a worldspace member
storage functions require a worldspace parameter.
2023-05-29 11:31:37 +02:00
florent.teppe
93e7b0d946
Terrain has a mandatory worldspace in constructor
...
getTerrainHeightAt takes a worldspace.
Doesn't change anything for now => Therrain is created with the default ESM3 worldspace, and is never changed.
2023-05-29 11:31:36 +02:00
psi29a
4399748889
Merge branch 'clickbait' into 'master'
...
Move more arrays to the ESM::Attribute struct
See merge request OpenMW/openmw!3074
2023-05-29 09:00:22 +00:00
Petr Mikheev
1563c5c84e
Merge branch 'simple_world_model_get_all' into 'master'
...
Simplify WorldModel::getAll
See merge request OpenMW/openmw!3077
2023-05-29 08:36:37 +00:00
elsid
02adb91859
Simplify WorldModel::getAll
...
There is no need to have generic forEach template function.
2023-05-29 00:01:46 +02:00
psi29a
c368c188f2
Merge branch 'fix_position_cell_crash' into 'master'
...
Use sDefaultWorldspaceId as fallback worldspace for PositionCell command
See merge request OpenMW/openmw!3073
2023-05-28 17:42:16 +00:00
Evil Eye
90a3a7b62f
Add mWerewolfGMST
2023-05-28 15:28:34 +02:00
Evil Eye
a5e1c87fb8
Remove sGmstAttributeIds, sGmstAttributeDescIds, sAttributeIcons
2023-05-28 15:10:53 +02:00
psi29a
692396a608
Merge branch 'ptr_registry' into 'master'
...
Move Ptr registry into a separate type and fix potential issues
See merge request OpenMW/openmw!3072
2023-05-28 12:49:17 +00:00
elsid
06af4cb56a
Use sDefaultWorldspaceId as fallback worldspace for PositionCell command
...
store is nullptr at this point because there was no cell found.
2023-05-28 14:25:53 +02:00
elsid
86db640c8b
Increment revision on clearing PtrRegistry
...
Setting it to 0 may not lead to the change detected by clients. Potentially
mRevision may already have value 0. For example on overflow.
2023-05-28 13:04:20 +02:00
elsid
a581e394b4
Check for revision inequality
...
It's not possible to have SafePtr with mLastUpdate from the future. But
theoretically it's possible to get PtrRegistry::mRevision overflow so operator
less would return false when there is a change.
2023-05-28 13:04:20 +02:00
elsid
ce91784085
Move Ptr registry into a separate type
...
There is no dependency on the rest of the WorldModel state.
2023-05-28 13:04:17 +02:00
psi29a
16a580eb21
Merge branch 'clickbait' into 'master'
...
Remove sAttributeIds and sSkillIds
See merge request OpenMW/openmw!3071
2023-05-28 09:14:47 +00:00
psi29a
052972033c
Merge branch 'get_rid_of_asserts_in_esm' into 'master'
...
Replace all asserts in components/esm[34] with throw
See merge request OpenMW/openmw!3069
2023-05-28 09:14:08 +00:00
unknown
14600de185
Remove sAttributeIds and sSkillIds
2023-05-27 21:54:13 +02:00
psi29a
36aea64eb8
Merge branch 'refactor_world_model' into 'master'
...
Cleanup and refactor WorldModel
See merge request OpenMW/openmw!3068
2023-05-27 15:38:17 +00:00
jvoisin
c98c532213
Replace all asserts in components/esm[34] with throw
2023-05-27 16:10:53 +02:00
elsid
d98852fdbe
Use std::count_if to implement WorldModel::countSavedGameRecords
2023-05-27 15:49:36 +02:00
elsid
3a66854c3c
Avoid confusion for generated cell flags
2023-05-27 15:49:36 +02:00
elsid
60139c6bd5
Use WorldModel::mStore instead of MWBase::Environment::get().getESMStore()
2023-05-27 15:49:36 +02:00
elsid
183202cd65
Remove WorldModel::getCellByPosition function
...
It's used in a single place. Move the code there.
2023-05-27 15:49:36 +02:00
elsid
235eb65c97
Rename positionToCellIndex to match return type
2023-05-27 15:49:36 +02:00
elsid
98e80d65b0
Remove unused include
2023-05-27 15:49:36 +02:00
elsid
b6cd6402cc
Use ranged for loop
2023-05-27 15:49:36 +02:00
elsid
a04eb9d26c
Move WorldModel::getPtr(const ESM::RefId&, CellStore&) to CellStore
...
The function does not depend on WorldModel.
2023-05-27 15:49:36 +02:00
elsid
df6630a15c
Move WorldModel private functions to bottom
...
This is API class. A reader most likely need to know public functions first.
2023-05-27 15:49:36 +02:00
psi29a
67cf3879ac
Merge branch 'macos' into 'master'
...
Support macOS: AMD64 and ARM64
Closes #7393
See merge request OpenMW/openmw!3059
2023-05-27 13:34:31 +00:00
psi29a
a5c2ad45dc
Support macOS: AMD64 and ARM64
2023-05-27 13:34:31 +00:00
psi29a
2fa4f6c226
Merge branch 'reuse_cell_store' into 'master'
...
Cleanup WorldModel::getPtr(const ESM::RefId&)
See merge request OpenMW/openmw!3066
2023-05-26 22:48:33 +00:00
elsid
181c894e4c
Skip already visited cells when looking for ptr
2023-05-26 22:51:03 +02:00
elsid
466a7cedbb
Convert pointer to referece where nullptr is not acceptable
2023-05-26 22:42:50 +02:00
elsid
1b116240a3
Try return existing CellStore from WorldModel::getCellStore first
2023-05-26 22:40:03 +02:00
psi29a
05555947c3
Merge branch 'specialdedup' into 'master'
...
Deduplicate specialization code
See merge request OpenMW/openmw!3063
2023-05-26 12:08:05 +00:00
psi29a
6af3ddfb56
Merge branch 'another_assert' into 'master'
...
Replace another assert with a throw
See merge request OpenMW/openmw!3064
2023-05-26 12:04:32 +00:00
jvoisin
44a65512e8
Replace another assert with a throw
2023-05-26 10:23:58 +00:00
Evil Eye
877f6747be
Deduplicate specialization code
2023-05-26 12:16:47 +02:00
jvoisin
2ab5b8e7b0
Merge branch 'cs_log' into 'master'
...
Make editor failure to load content files more detailed
See merge request OpenMW/openmw!3062
2023-05-25 20:38:05 +00:00
elsid
dc8dfe81ce
Add more details to exceptions
2023-05-25 20:56:07 +02:00
elsid
d852ac20f5
Log loading content file
2023-05-25 20:56:07 +02:00
psi29a
fec74b7c41
Merge branch 'activeeffect-signature-fix' into 'master'
...
Fix signature of MWMechanics::MagicEffects::get
See merge request OpenMW/openmw!3061
2023-05-25 18:51:51 +00:00
Mads Buvik Sandvei
85a30c9ad0
Fix signature of MWMechanics::MagicEffects::get. Fix a mistake in the docs.
2023-05-25 18:12:18 +02:00
jvoisin
03ff03005d
Merge branch 'missing_include' into 'master'
...
missing include in attr.cpp
See merge request OpenMW/openmw!3060
2023-05-25 12:47:27 +00:00