psi29a
83c8312060
Merge branch 'esm4_cell_fixes' into 'master'
...
A few fixes related to ESM4::Cell
See merge request OpenMW/openmw!3083
2 years ago
Evil Eye
08f35fe839
Add ESM::Skill::mWerewolfValue
2 years ago
Evil Eye
7b0680de5f
Resolve attribute GMST members
2 years ago
Evil Eye
eea730768b
Replace sIconNames with ESM::Skill::mIcon
2 years ago
Evil Eye
9c819b5705
Disallow formatting of UString
2 years ago
Petr Mikheev
5cb4c66266
Avoid using ESM4::Cell with uninitialized fields
2 years ago
Petr Mikheev
19fb9f8e14
Handle editor marker bit in BSXFlags
2 years ago
Petr Mikheev
788a4d32aa
Handle DoubleSided and TreeAnim flags in BSLightingShaderProperty.
2 years ago
Petr Mikheev
fd90a8c9b4
Hide Nif nodes with name "EditorMarker".
2 years ago
Petr Mikheev
1b669db017
Load ESM4::Tree and ESM4::Furniture
2 years ago
Evil Eye
9c60a6fa4d
Replace sSkillNameIds with ESM::Skill::mName
2 years ago
florent.teppe
9f9a6c06e0
Fix get vertex Height for esm4
2 years ago
florent.teppe
5dfa06acf8
removes unused variable
...
it was already mostly unused, it was usefull only in the constructor, even though it was a paramater of the constructor, so it could have been removed.
2 years ago
florent.teppe
12304d36aa
std::cout => Log(Debug::Verbose)
2 years ago
florent.teppe
ad8cfde4e0
ESM::LandData no longer a virtual interface
...
instead it is constructed from ESM::Land or ESM4::Land
2 years ago
fteppe
22dc383f63
fixes errors and warnings
...
Applies review comments
getWorldspaceTerrain => returns a reference because never null
crashfix in navigator
updateLandPositions fixes naming of it
const ESM4::Land* MWWorld::Store<ESM4::Land>::search(ESM::ExteriorCellLocation cellLocation) const removes useless else
ExteriorCellLocation uses default initializers
get terrain height returns -MAX_FLOAT when there is no esm4 terrain.
applied review comments
use default initlializer when possible
factorise code
uses pattern matching in for loop.
2 years ago
florent.teppe
f600730459
fixes functions that were virtual but not tagged as override.
2 years ago
florent.teppe
7d88a240d3
no default terrain for esm4 exterior.
2 years ago
florent.teppe
2bb17279df
linux build
...
clang format 14.0
Arm64 build
2 years ago
florent.teppe
a9e0489867
fixes stutters => bugs in the way cells were updated.
2 years ago
florent.teppe
0e4d21a40c
takes the right terrain bounds.
2 years ago
florent.teppe
7bc4fc6bf9
Fix issues on terrain change
...
terrain Preloader now preloads the right terrain
2 years ago
florent.teppe
427b6ea39a
fix bug in "fixColour" and "fixNormal"
...
fix issue in vtx texture selection
2 years ago
florent.teppe
c2e652b8a0
getLand taken out of loop where it's value would always be the same.
2 years ago
florent.teppe
feb60f5ad8
One landsize variable instead of two.
...
fixes issues in constant values.
2 years ago
florent.teppe
d0211acf9e
Fixes bug in terrain loading + collision heightmap works
...
although terrain rendering is 100% broken right now
2 years ago
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.
2 years ago
florent.teppe
fffcf52316
land manager cache's key is an ExteriorCellLocation
...
ESM4::Land is now a ESM::LandData
2 years ago
florent.teppe
e0fa15b727
Abstracted Land data that can be used by esm3 and esm4.
2 years ago
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.
2 years ago
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.
2 years ago
Evil Eye
90a3a7b62f
Add mWerewolfGMST
2 years ago
Evil Eye
a5e1c87fb8
Remove sGmstAttributeIds, sGmstAttributeDescIds, sAttributeIcons
2 years ago
psi29a
16a580eb21
Merge branch 'clickbait' into 'master'
...
Remove sAttributeIds and sSkillIds
See merge request OpenMW/openmw!3071
2 years ago
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
2 years ago
unknown
14600de185
Remove sAttributeIds and sSkillIds
2 years ago
jvoisin
c98c532213
Replace all asserts in components/esm[34] with throw
2 years ago
elsid
235eb65c97
Rename positionToCellIndex to match return type
2 years ago
psi29a
05555947c3
Merge branch 'specialdedup' into 'master'
...
Deduplicate specialization code
See merge request OpenMW/openmw!3063
2 years ago
jvoisin
44a65512e8
Replace another assert with a throw
2 years ago
Evil Eye
877f6747be
Deduplicate specialization code
2 years ago
elsid
dc8dfe81ce
Add more details to exceptions
2 years ago
Pierre Mossler
e6838cddc7
missing include in attr.cpp
2 years ago
psi29a
d3ed04c551
Merge branch 'lua-activeeffects' into 'master'
...
Lua: Actor api for active effects and active spells
See merge request OpenMW/openmw!3036
2 years ago
Petr Mikheev
e74161ea8e
Merge branch 'slashrslashmarijuanaenthusiasts' into 'master'
...
Improve Skyrim tree loading (limited)
See merge request OpenMW/openmw!3054
2 years ago
elsid
89eccab7f1
Add missing include
...
In file included from /home/elsid/dev/openmw/apps/openmw_test_suite/settings/testvalues.cpp:1:
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp: In function ‘std::string Misc::StringUtils::toHex(std::string_view)’:
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp:139:87: error: ‘uint8_t’ in namespace ‘std’ does not name a type; did you mean ‘wint_t’?
139 | const std::ptrdiff_t space = static_cast<std::ptrdiff_t>(static_cast<std::uint8_t>(v) <= 0xf);
| ^~~~~~~
| wint_t
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp:140:97: error: ‘uint8_t’ in namespace ‘std’ does not name a type; did you mean ‘wint_t’?
140 | const auto [ptr, ec] = std::to_chars(out + space, out + space + 2, static_cast<std::uint8_t>(v), 16);
| ^~~~~~~
| wint_t
2 years ago
Mads Buvik Sandvei
410e8b100a
Elsid comments
2 years ago
Mads Buvik Sandvei
5a8c6df633
clang'd
2 years ago
Mads Buvik Sandvei
4bf23f152b
Revert use of string_view to std::string for effectIdTo* methods.
2 years ago
Mads Buvik Sandvei
6cfc06d7d8
There is no typo
2 years ago
Mads Buvik Sandvei
9a59330561
refactor effect names in loadmgef. Added a map from effect index to non-gmst effect name for use in lua scripts.
2 years ago
Mads Buvik Sandvei
b791ce9132
Remove redundant qualifiers
2 years ago
Mads Buvik Sandvei
7ba43c9426
actor.ActiveEffects and actor.ActiveSpells
2 years ago
elsid
2f18da08d7
Add missing include
2 years ago
psi29a
2545185d52
Merge branch 'cs_show_magic_effect_name' into 'master'
...
Show magic effect name instead of IndexRefId (#7366 )
Closes #7366
See merge request OpenMW/openmw!3049
2 years ago
psi29a
64b07ee9f4
Merge branch 'esmtool_dawnguard_dragonborn' into 'master'
...
Partial support esmtool dump for Dragonborn.esm and Dawnguard.esm from Skyrim
See merge request OpenMW/openmw!3052
2 years ago
psi29a
a61f955e9f
Merge branch 'case.ext' into 'master'
...
Fix a regression and use more starts_with and ends_with
See merge request OpenMW/openmw!3051
2 years ago
Alexei Dobrohotov
a983977e6a
Fix NiSkinData loading for >4.2.1.0
2 years ago
elsid
7c16ecb258
Skip more unknown ESM4 subrecords
...
CNAM from HDPT is a part of Dawnguard.esm.
ATKR from RACE is a part of Dawnguard.esm.
CIS2 from SCRL is a part of Dragonborn.esm.
SPMV from RACE is a part of Dragonborn.esm.
2 years ago
elsid
e537d1d0d4
Ignore missing localization string files by esmtool
...
Dawnguard.esm from Skyrim depends on files stored in Dawnguard.bsa which is not
processed by esmtool.
2 years ago
elsid
358b7ad3ec
Keep ESM4 localized strings in memory
...
Size of the files is in order of megabytes at max. Storing offset lookup table
to read from file on demand is less efficient than reading from memory for such
size.
Read and store offsets first. Sort them to read values sequentially. Memoize
last offset and value to avoid reading the same value twice. Use seek only when
current possition does not match offset. Optimize seek for short distance by
calling read instead.
2 years ago
Alexei Dobrohotov
1b5e904285
Read BSMultiBound et al.
2 years ago
Alexei Kotov
401ebfd7f2
Merge branch 'fix_oblivion_loading' into 'master'
...
Fix Oblivion loading
See merge request OpenMW/openmw!3050
2 years ago
Evil Eye
9728024978
Replace compare with more idiomatic methods
2 years ago
jvoisin
7f191a2a8a
Merge branch 'if_all_the_asserts' into 'master'
...
Replace all the `asserts` with `throw` in components/esm4/reader.cpp
See merge request OpenMW/openmw!3047
2 years ago
jvoisin
a9bf671992
Fix Oblivion loading
...
Found by elsid@, and due to !3043
2 years ago
Evil Eye
3138eb406b
Fix case sensitive comparison
2 years ago
elsid
8f47da46ec
Show magic effect name instead of IndexRefId
2 years ago
jvoisin
8b654f276d
Replace all the `asserts` with `throw` in components/esm4/reader.cpp
2 years ago
jvoisin
6da3c3e200
Fix a gcc warning about copy
...
```
/home/jvoisin/dev/openmw/openmw/components/fontloader/fontloader.cpp:532:29: warning: loop variable '[key, value]' creates a copy from type 'std::pair<const int, int> const' [-Wrange-loop-construct]
for (const auto [key, value] : additional)
^
/home/jvoisin/dev/openmw/openmw/components/fontloader/fontloader.cpp:532:18: note: use reference type 'std::pair<const int, int> const &' to prevent copying
for (const auto [key, value] : additional)
^~~~~~~~~~~~~~~~~~~~~~~~~
&
1 warning generated.
```
2 years ago
psi29a
6f8c152487
Merge branch 'convert_camera_settings' into 'master'
...
Use settings values for Camera settings (#6876 )
See merge request OpenMW/openmw!3041
2 years ago
psi29a
dab616f4e2
Merge branch 'guiew' into 'master'
...
Use string_view in more places and reduce the number of empty string literals
See merge request OpenMW/openmw!3042
2 years ago
jvoisin
534e20cf3a
Replace another `assert` with a `throw`
...
It fixes the following crash:
```nasm
[----------------------------------registers-----------------------------------]
RAX: 0xffffffffffffffe4
RBX: 0x7fffffffbd88 --> 0x0
RCX: 0x555555861f01 --> 0xd6000055555582fa
RDX: 0x1
RSI: 0x0
RDI: 0xff
RBP: 0x2e94
RSP: 0x7fffffff9bb0 --> 0x0
RIP: 0x55555574e286 (<_ZN4ESM44Cell4loadERNS_6ReaderE+182>: mov eax,DWORD PTR [rax+0xc])
R8 : 0x0
R9 : 0x555555836bd0 --> 0x555555861f90 --> 0x100000000000000
R10: 0xffffffff
R11: 0x0
R12: 0x7fffffffbd88 --> 0x0
R13: 0x7fffffffbd30 --> 0x7fffffffbd28 --> 0xff0001
R14: 0x7fffffff9da0 --> 0x10fc
R15: 0x7fffffff9ea8 --> 0x7fffffff9eb8 --> 0x0
EFLAGS: 0x10206 (carry PARITY adjust zero sign trap INTERRUPT direction overflow)
[-------------------------------------code-------------------------------------]
0x55555574e27c <_ZN4ESM44Cell4loadERNS_6ReaderE+172>: mov rdi,r12
0x55555574e27f <_ZN4ESM44Cell4loadERNS_6ReaderE+175>: xor esi,esi
0x55555574e281 <_ZN4ESM44Cell4loadERNS_6ReaderE+177>: call 0x5555557edfb0 <_ZNK4ESM46Reader3grpEm>
=> 0x55555574e286 <_ZN4ESM44Cell4loadERNS_6ReaderE+182>: mov eax,DWORD PTR [rax+0xc]
0x55555574e289 <_ZN4ESM44Cell4loadERNS_6ReaderE+185>: cmp eax,0xff
0x55555574e28e <_ZN4ESM44Cell4loadERNS_6ReaderE+190>: ja 0x55555574e314 <_ZN4ESM44Cell4loadERNS_6ReaderE+324>
0x55555574e294 <_ZN4ESM44Cell4loadERNS_6ReaderE+196>: cmp al,0x5
0x55555574e296 <_ZN4ESM44Cell4loadERNS_6ReaderE+198>: jne 0x55555574e314 <_ZN4ESM44Cell4loadERNS_6ReaderE+324>
[------------------------------------stack-------------------------------------]
0000| 0x7fffffff9bb0 --> 0x0
0008| 0x7fffffff9bb8 --> 0x0
0016| 0x7fffffff9bc0 --> 0x0
0024| 0x7fffffff9bc8 --> 0x0
0032| 0x7fffffff9bd0 --> 0x0
0040| 0x7fffffff9bd8 --> 0x0
0048| 0x7fffffff9be0 --> 0x0
0056| 0x7fffffff9be8 --> 0x0
[------------------------------------------------------------------------------]
Legend: code, data, rodata, value
Stopped reason: SIGSEGV
0x000055555574e286 in ESM4::Cell::load (this=0x7fffffff9da0, reader=...) at /home/jvoisin/dev/openmw/openmw/components/esm4/loadcell.cpp:68
68 if (reader.grp().type == ESM4::Grp_ExteriorSubCell && reader.grp().label.grid[1] == 0
gdb-peda$ bt
this=<optimized out>, reader=...) at /home/jvoisin/dev/openmw/openmw/apps/esmtool/tes4.cpp:547
recordInvocable=...) at /home/jvoisin/dev/openmw/openmw/./components/esm4/readerutils.hpp:31
at /home/jvoisin/dev/openmw/openmw/./components/esm4/readerutils.hpp:23
at ../csu/libc-start.c:381
```
2 years ago
psi29a
364bc91f5b
Merge branch 'fix_element_destroy' into 'master'
...
Fix bug in LuaUi::Element::destroy() that sometimes leads to an infinite loop on UI cleanup
See merge request OpenMW/openmw!3033
2 years ago
psi29a
e1754b840a
Merge branch 'fix_empty_vector' into 'master'
...
Guard an undefined behaviour
Closes #6725
See merge request OpenMW/openmw!3037
2 years ago
Evil Eye
4e05dd3cd3
Make FontWrapper conditional
2 years ago
Evil Eye
492e336c0c
Use string_view in more UI code
2 years ago
Alexei Dobrohotov
3e8a9d1de4
Read BSTreeNode, handle as NiNode
2 years ago
Evil Eye
5491512905
Use string_view in more places and reduce the number of empty string literals
2 years ago
elsid
5d5e6844d1
Use settings values for Camera settings
2 years ago
jvoisin
81bd034a9e
Guard an undefined behaviour
...
`std::vector.back()` on an empty `std::vector` is undefined.
This should fix #6725 .
Thanks to @Capostrophic for the investigation.
2 years ago
jvoisin
cde7aeac3d
Replace an `asert` with a conditional throw
...
The assert is reachable, resulting in a brutal `abort`
instead of a nice exception.
2 years ago
Petr Mikheev
c6eed2a6c6
Fix bug in LuaUi::Element::destroy() that sometimes leads to an infinite loop on UI cleanup
2 years ago
psi29a
1ce35fa9e7
Merge branch 'lua-bounding-box' into 'master'
...
Expose game object's bounding box in lua api
See merge request OpenMW/openmw!3009
2 years ago
Petr Mikheev
be26fbdacb
Explicitly intialize the fields in `ESM4::Cell` that don't have default constructors.
2 years ago
glassmancody.info
a7b7f99d72
Expose game object's bounding box in lua api
2 years ago
Petr Mikheev
61232f4b75
Fix uninitialized mWaterLevel in esm4/loadwrld.cpp
2 years ago
Petr Mikheev
493858127a
Drop NIF root node transformation for Skyrim models the same way as for Morrowind models.
2 years ago
Petr Mikheev
29031d0586
Increase ESM4 active grid
2 years ago
elsid
15f3e3ae71
Support ESM4 IDLE record
2 years ago
elsid
584c0dbcdc
Support reading bool GMST by ESM4
2 years ago
elsid
010db45a10
Read ESM::FormId using ESM4::Reader::getFormId
2 years ago
elsid
a90aa7d8b2
Count navmeshdb reads for each reading job
2 years ago
elsid
5ae8b9cae1
Report raw navmesh cache counters
2 years ago
elsid
a8a76f9a05
Fix BulletShape copy constructor and use for BulletShapeInstance
...
Copy mVisualCollisionType.
2 years ago
elsid
04d439485b
Log more info about navmesh shapes and jobs
2 years ago
psi29a
ab17d0947a
Merge branch 'esm4-exterior' into 'master'
...
Loading ESM4 Exteriors
See merge request OpenMW/openmw!2986
2 years ago
psi29a
c15710c35b
Merge branch 'settings_values_index' into 'master'
...
Use typed settings storage for settings window (#6876 )
See merge request OpenMW/openmw!2997
2 years ago
florent.teppe
a3bd6e7e47
ESM::ExteriorCellIndex => ESM::ExteriorCellLocation
2 years ago
florent.teppe
393357abc0
ESM::Cell::positionToCellIndex returns a ESM::ExteriorCellIndex
...
and takes a worldspace id as input
ESM::getCellSize takes a wordspace as input.
removed useless static in static inline funcs
2 years ago
florent.teppe
559830f59a
applies review comments
...
Removes ToLowercase after .serializeText
removed unused variable
!ptr => ptr == nullptr
better indentation + error message on throw
friend struct std::hash<...> useless on struct with all public fields.
2 years ago
florent.teppe
3d06cabf6a
indexToPosition moved from world -> esm/util.hpp
2 years ago
florent.teppe
1cf0cd5628
moved mwworld/cellutils.hpp -> esm/util.hpp
2 years ago
florent.teppe
75561abfca
Factorises code and fixes preload bug.
2 years ago
florent.teppe
5648e03e9e
function to get cellsize depending on the context.
2 years ago
florent.teppe
93b3d9238c
mWater level disabled for skyrim.
2 years ago
florent.teppe
3de08e654f
Better handling of water levels for exterior cells.
...
Especially for skyrim and it's weird water level values in exteriors.
If we don't have a valid exterior water level we use the world's water level
2 years ago
florent.teppe
56cb2a83ec
removed sDefaultWorldspace, only sDefaultWorldspaceId now.
...
sDefaultWorldspaceId is a StringRefId to be able to getvalue easily.
2 years ago
florent.teppe
141878f30d
int x, int y , ESM::RefId worldspace => ESM::ExteriorCellIndex
...
also removed the changeToExteriorCell that only took a position as input, didn't work with esm4.
2 years ago
florent.teppe
1d03b54694
maps with tuple key instead of map of map
...
instead of using a map with key as exterior and map of <int ,int >, Cell as value we use a single map with a tuple x,y,exterior as key
2 years ago
florent.teppe
d8a782425b
can actually load and teleport to esm4 exterior spaces
2 years ago
florent.teppe
a62e75fd19
Initial attempt at loading esm4 exteriors
2 years ago
jvoisin
0270cfb733
Merge branch 'throw_with_more_info' into 'master'
...
show which file is not found
See merge request OpenMW/openmw!3011
2 years ago
Bret Curtis
95fff7b77b
show which file is not found
2 years ago
Elias Howell
bf8fafa79a
fixed some typos and spelling errors
2 years ago
elsid
258ae9d98e
Add settings index to provide lookup by category and name
2 years ago
psi29a
cdc753df70
Merge branch 'lua_refactoring' into 'master'
...
MWLua refactoring
See merge request OpenMW/openmw!2956
2 years ago
jvoisin
c7a3f43915
Minor header cleanup
...
This has been done via CLion's "unused include directive",
set to "detect completely unused".
2 years ago
elsid
0601d7213e
Remove ESM::RefId::sEmpty
...
This variable is only required to return empty RefId as const reference. There
is no point in doing so for a type cheap to copy.
2 years ago
Petr Mikheev
4562b8c06b
Add headers for all `.cpp` files in mwlua; move packages initilaization from LuaManager to luabindings.cpp
2 years ago
Petr Mikheev
c362b2efa6
Use LuaUtil::cast for casting sol::object to prevent crashing on type mismatch in Lua scripts.
2 years ago
Petr Mikheev
61578ca39b
Add function LuaUtil::cast
2 years ago
psi29a
957318d0b9
Merge branch 'remove_cruft' into 'master'
...
remove boost::locale::conv
See merge request OpenMW/openmw!2970
2 years ago
psi29a
50bd6cf263
remove boost::locale::conv
2 years ago
Bret Curtis
0db31207dc
remove remaining boost::filesystem cruft
2 years ago
elsid
35f4bcd31e
Run openmw_settings_access_benchmark in CI
...
Add benchmarks to access 2 and 3 settings. Use settings with max memory address
distance assuming Settings::Values is single memory location object.
Use settings-default.cfg from the source code repository to initialize settings.
2 years ago
elsid
0a678224cd
Add category to error message
2 years ago
elsid
05d09d9927
Fix msvc warning
2 years ago
elsid
8e487c283c
Store default settings values
2 years ago
Tetramir
6936c3a1c8
Merge branch 'fix_esm4' into 'master'
...
Fix regressions in ESM4 reader caused by !2902
See merge request OpenMW/openmw!2957
2 years ago
Petr Mikheev
7b6f0cefb9
Fix regressions in ESM4 reader caused by !2902
2 years ago
Mads Buvik Sandvei
7d69bea7dc
Move InitializeStereoOperation to components/stereo
2 years ago
Mads Buvik Sandvei
fe066069d7
/components/ code should not access the stereo manager without checking whether or not stereo is enabled first. Stereo component code should not read settings itself, but rather take settings as parameters.
2 years ago
elsid
7a7c20d49e
Define single UpdateGuard type in a separate file
2 years ago
elsid
472a36d92a
Cleanup detournavigator includes
2 years ago
elsid
2cbbdc2879
Add missing files to components/detournavigator list
2 years ago
florent.teppe
3bbf60373a
Keep things coherent between references and and cell table
2 years ago
psi29a
70ddca78bf
Merge branch 'ref_id_print_tests' into 'master'
...
Add more tests for printing RefId and clarify some constants
See merge request OpenMW/openmw!2945
2 years ago
elsid
7db14b3392
Add more tests for printing RefId and clarify some constants
2 years ago
elsid
c97df7d770
Check FormIdRefId value in constructor
2 years ago
Petr Mikheev
3546d2b3e5
Make Store<ESM4::Reference> to use FormId instead of RefId
2 years ago
Petr Mikheev
00beb06391
Initial Lua bindings for ESM4 types; bindings for ESM4Door.
2 years ago
elsid
b8525e8e3d
Fix code format
2 years ago
psi29a
ed4e75df65
Merge branch 'fix_includes' into 'master'
...
Add missing and remove redundant includes
See merge request OpenMW/openmw!2938
2 years ago
fall-leaf
cc7e29c9a2
opensuse build fix
2 years ago
elsid
b33d12b8e1
Add missing and remove redundant includes
2 years ago
Evil Eye
97fb06d8c9
Add RefId::is
2 years ago
elsid
20129568e6
Replace VisitorCellIdIsESM3Ext with RefId::getIf function
2 years ago
elsid
8f84431840
Do not initialize settings storage for editor
2 years ago
elsid
bdc2eb5250
Check only original default settings
...
When more than 1 user config layers are used we still want to check only the
first layer of default settings loaded from settings-default.cfg.
2 years ago
psi29a
ad25e9b154
Merge branch 'settings_storage' into 'master'
...
Typed settings storage (#6876 )
See merge request OpenMW/openmw!2651
2 years ago
Petr Mikheev
ff774d6406
Load more ESM4 records
2 years ago
Petr Mikheev
f09a689a4f
Merge ESM::RefNum and ESM4::FormId
2 years ago
elsid
bd10becb65
Use lexicographical comparison in ESM3ExteriorCellRefId::operator<
2 years ago
psi29a
ebb5820dd1
Merge branch 'pathgridgraph' into 'master'
...
Refactor pathgrid indices to use size_t instead of int
See merge request OpenMW/openmw!2900
2 years ago
Evil Eye
8d8207b734
Refactor pathgrid indices to use size_t instead of int
2 years ago
elsid
794050df63
Fix and add tests for ESM3ExteriorCellRefId serialization and text representation
2 years ago
psi29a
aad9ce53db
Merge branch 'esm4_gmst' into 'master'
...
Support loading ESM4 GMST records
See merge request OpenMW/openmw!2892
2 years ago
elsid
dbed00842e
Split components/esm4/common.hpp header
2 years ago
elsid
87ac85223a
Support loading ESM4 GMST records
2 years ago
florent.teppe
0d17e20490
Implements serialize/deserialize
...
fixes test compilation.
2 years ago
florent.teppe
21bd28542a
Applies review advice
...
2d coord hash moved to hash.hpp file
format version adds suffix to be more coherent
don't use ESM::RefId::sEmpty
RefId equality with string_view, conversion to refId unecessary
action teleport remove test that mCellId is empty
removes some const references, when copy is enough
invalid refid => empty refid
removes useless change
2 years ago
florent.teppe
d782d37ee2
Make sure Vec2iRefId is trivially copyable on GCC 11.3
...
std::pair<int, int> isn't trivially copyable on some compilers
so a specific struct is defined, it's an int pair, but it should be recognised by GCC 11.3 as trivially copyable
Vec2iRefId => ESM3ExteriorCellRefId
more explcit name and use mX,mY instead of pair
renamed files and enum
2 years ago
florent.teppe
53b14c8b42
fix tests
...
hopefully also fixes clang tidy
2 years ago
florent.teppe
4c15064a83
Create new Vec2i RefId for ESM3 exterior cells.
...
Applies the necessary changes to use !2708 for the new Id type
2 years ago
florent.teppe
1e0c3bfdec
fixes integration tests
...
we still want to be able to write using old formats
2 years ago
florent.teppe
f99e65843a
Removes most cellId.hpp include, simplifies id generation for cells.
2 years ago
florent.teppe
c2182c2fcc
Get Rid of ESM::CellId almost everywhere
...
it was a competing concept from using RefIds for cell.
There is almost no point to it now, except to load older data.
2 years ago
florent.teppe
fb6701ac1a
ESM::CellId is no longer stored on saves.
2 years ago
florent.teppe
c39dd576f8
Gets rid of most ESM::CellId
2 years ago
florent.teppe
6895a452ef
restores the concept of worldspace for MWWorld::Cell
2 years ago
florent.teppe
9f597ecfea
No more Cellid used by ESM4 cells
...
and that also means it is no longer used by MWWorld::Cell
fixes tests
2 years ago
florent.teppe
3f678c3b0a
Dest Door and teleport use ESM::RefId
...
This changes a lot of files as a consequence.
Still buggy, moving to exterior doesn't bring to the right place yet
coc "seyda neen" doesn't work. SO I broke somehting when fetching a cell from a name
2 years ago
florent.teppe
36502eaf75
ESM3 Cells have an Id.
...
Store<ESM::Cell> is updated to use it.
2 years ago
Andrei Kortunov
8c6616214b
Remove redundant quotes
2 years ago
psi29a
ee970db9e0
Merge branch 'player_cell_id_test' into 'master'
...
Test more ESM::Player records
See merge request OpenMW/openmw!2888
2 years ago
psi29a
0a791528bc
Merge branch 'fix_index_ref_id_hash' into 'master'
...
Shift record type value for IndexRefId hash
See merge request OpenMW/openmw!2885
2 years ago
elsid
9162eaa019
Test more ESM::Player records
2 years ago
elsid
171a25645a
Make sure there are tests for all RefId types
2 years ago
elsid
258aec223a
Shift record type value for IndexRefId hash
2 years ago
Mads Buvik Sandvei
e666f36b60
[Multiview] Fix transparent pass and vertex shader
2 years ago
psi29a
1a1f983930
Merge branch 'omwscripts_in_launcher' into 'master'
...
Support adding Lua mods in subdirectories in the launcher
See merge request OpenMW/openmw!2874
2 years ago
psi29a
119163e74b
Merge branch 'fixemptycollisioncrash' into 'master'
...
Make empty collision shape for objects without any triangles.
Closes #7077
See merge request OpenMW/openmw!2871
2 years ago
psi29a
0c074990ce
Merge branch 'fix_lazy_load_skyrim' into 'master'
...
Fix lazy load skyrim
See merge request OpenMW/openmw!2861
2 years ago
uramer
ee1551f02c
Merge branch 'l10n' into 'master'
...
Dehardcode non-game-specific localization GMSTs
See merge request OpenMW/openmw!2855
2 years ago
fredzio
37c4587ca4
Display directories that contains omwscripts.
...
Display newly added omwscripts as new.
2 years ago
unelsson
3d4da02b18
Don't mess around with btEmptyShape. Use nullptr instead.
2 years ago
elsid
3e99deb0e8
Use typed settings storage for detournavigator
2 years ago
elsid
db7d0adfe8
Define settings values based on documentation
...
Using docs/source/reference/modding/settings/*.rst and
files/settings-default.cfg files content.
2 years ago
elsid
3bad40153c
Define typed settings storage with single time initialization
...
To make sure loaded settings have valid values doing the check once per loading.
And to make access more efficient.
2 years ago
florent.teppe
a3a7767093
applies review changes
...
filepos changed to an actual file pos
moved lambda declaration out of function call
2 years ago
florent.teppe
464092e323
fix oblivion and skyrim
2 years ago
florent.teppe
34dd24b261
Initial changes to detect when context isn't usable
2 years ago
unelsson
0a1af644af
Make empty collision shape for objects without any triangles.
2 years ago
psi29a
cd6413c060
Merge branch 'fix_dialogue_title' into 'master'
...
Show original dialogue name
See merge request OpenMW/openmw!2862
2 years ago
Petr Mikheev
0769e3daf0
Fix #7294 (launcher creates new contentlist everytime)
2 years ago
elsid
452d1e7e49
Store original string id for Dialogue records
2 years ago
elsid
06f42ba69c
Use fixed size enum type for ESM::Dialogue::mType
2 years ago
elsid
4716583f3e
Set ESM::Dialogue::mType on blank and skip load
2 years ago
elsid
90ed24f4c9
Split type traits for ESM4, ESM3 and unite common
2 years ago