Alexei Kotov
c7d5ea9fbf
Improve BulletNifLoader handling of extra data
...
Only handle extra data for the root node(s)
Properly handle MRK flag editor marker filtering
Fix BSXFlags test
1 year ago
jvoisin
32a9581394
Merge branch 'deepdepths' into 'master'
...
Depth flag handling fixes (bug #7380 )
See merge request OpenMW/openmw!3568
1 year ago
AnyOldName3
9b6d82566f
Merge branch 'unbound' into 'master'
...
Don't use Bounding Box node bounds as the original collision shape
See merge request OpenMW/openmw!3562
1 year ago
Alexei Kotov
116ef1c62b
Depth flag handling fixes (bug #7380 )
...
Properly disable depth test while allowing depth writes to happen
Remove NiStencilProperty interaction
Don't set up depth flags for BSShaderPPLightingProperty
1 year ago
Alexei Kotov
2c1db92d04
Don't use Bounding Box node bounds as the original collision shape
...
Bounding Box node bounds are not used for non-actor collision in Morrowind and the generated box isn't actually used for actor collision in OpenMW
Preserving btBoxShape cloning code because it might get used in the future
1 year ago
Alexei Kotov
af08205f19
Support BSShader/BSLightingShader depth flags
1 year ago
Alexei Kotov
9405e5cb3c
BulletNifLoader: Replicate node bounds handling more closely
1 year ago
Alexei Kotov
8db631c6b6
Update BSXFlags test
1 year ago
Alexei Kotov
1b93e646b8
Rename Property->NiProperty
1 year ago
Alexei Kotov
9ae1077808
Update NIF property loading, first pass
...
Revise all FO3+ shader properties (attempt reading FO4, FO76 and Starfield properties)
Use constants for most instances of property flags
Drop invalid usage of non-existent double-sided flag for BSShader
Make formatting more consistent, drop unnecessary comments
1 year ago
Alexei Kotov
eb8242946a
Improve node record consistency with NifTools
1 year ago
Alexei Kotov
bff9231c3b
Refactor NiGeometry/BSTriShape
...
Don't pass invalid geometry data links to the loaders
1 year ago
Alexei Kotov
deb051639e
Refactor NiBoundingVolume
1 year ago
Alexei Kotov
0fe095303f
Rename Controller->NiTimeController, update NiTimeController and related code
1 year ago
Alexei Kotov
05d8975ed1
Revise various NIF controller records
...
Mostly those that don't require external changes
1 year ago
psi29a
42b77342c5
Merge branch 'nif' into 'master'
...
Modernize NIF loader, part 3
See merge request OpenMW/openmw!3418
1 year ago
Alexei Kotov
a7cc4e6ba6
Rename Node->NiAVObject and update everything directly related
...
Update NiNode
Simplify RootCollisionNode handling in BulletNifLoader
1 year ago
Alexei Kotov
6872c7144e
Rename Transformation->NiTransform and update everything directly related
1 year ago
Alexei Kotov
ef896faa90
Rename Named->NiObjectNET and update everything directly related to it
...
BulletNifLoader: properly check if the node has animation controllers
Flatten extra data linked list
1 year ago
elsid
053a3caf7b
Pass cache expiry delay to GenericResourceManager constructor
1 year ago
Alexei Kotov
89774716fb
Modernize NiGeometryData
1 year ago
Alexei Kotov
cfd37dbcc6
Modernize NiTriShapeData
1 year ago
Alexei Kotov
eba0ab444b
Modernize NiTriStripsData
1 year ago
Alexei Kotov
5b07a78f2c
Modernize skin instance records
1 year ago
Alexei Kotov
2edf3399e2
Modernize extra data records
1 year ago
Petr Mikheev
32f3a16db3
Change FormId::toString to be consistent with RefId. Remove FormIdRefId.
1 year ago
psi29a
5b3e2fbf1c
Merge branch 'clickbait' into 'master'
...
Assign StringRefIds to attributes
See merge request OpenMW/openmw!3256
1 year ago
Petr Mikheev
87eacf774a
Control GUI modes from Lua
1 year ago
Evil Eye
e660a9ca16
Assign StringRefIds to attributes
1 year ago
elsid
07c1177b0d
Optimize land lookup on blendmaps sampling
...
Minimize number of getLand calls by grouping samples per cell.
1 year ago
elsid
ce6ffba986
Move blendmap sampling logic into separate function
1 year ago
elsid
8e7fe44514
Support terrain sample size greater than cell size
1 year ago
Petr Mikheev
957880d515
Add to ESMStore the records that are needed to render ESM4 actors; cleanup usage of `records.hpp`
1 year ago
Petr Mikheev
5d54ca6fdb
Refactor components/esm4
1 year ago
psi29a
c290754077
Revert "Merge branch 'loadSSEAlchemyTable' into 'master'"
...
This reverts merge request !3267
1 year ago
psi29a
23671ced33
Merge branch 'fix_use_after_move' into 'master'
...
Fix use after move in InfoOrder::insertInfo
See merge request OpenMW/openmw!3296
1 year ago
psi29a
1d207ed318
Merge branch 'test_load_deleted_dialinfo' into 'master'
...
Add test to ensure deleted DialInfos are removed
See merge request OpenMW/openmw!3297
1 year ago
elsid
662991dda9
Add test to ensure deleted DialInfos are removed
1 year ago
elsid
66c5944ecf
Fix use after move in InfoOrder::insertInfo
...
When it->second.mPosition->mPrev != value.mPrev value is first moved into
*mPosition and then used to get mPrev. Since mPrev is RefId and it's copy-only
type there is no real problem but coverity complains about it.
Also enforce contract of insertInfo to support move-only types by adding a test
for a value type with deleted copy constructors.
1 year ago
elsid
dd54857610
Add missing array include
1 year ago
psi29a
81deb3796b
Merge branch 'loadSSEAlchemyTable' into 'master'
...
Load SSE alchemy table
See merge request OpenMW/openmw!3267
1 year ago
alekulyn
d2896945e8
Load SSE alchemy table
1 year ago
psi29a
e76ce6b696
Merge branch 'fix_find_path' into 'master'
...
Remove stepping from findSmoothPath and other tweaks (#7241 , #7485 )
Closes #7485 and #7241
See merge request OpenMW/openmw!3264
1 year ago
Petr Mikheev
9b511fdf7a
Load ESM4 actors
1 year ago
elsid
e00eb50587
Remove stepping from findSmoothPath
...
This is not used anyway. There are features like smooth movement which remove
all redundant points.
Use single findStraightPath call instead of multiple.
1 year ago
psi29a
9410eed9e5
Merge branch 'bump-cmake-version' into 'master'
...
Bump required CMake version to 3.16
See merge request OpenMW/openmw!3242
1 year ago
psi29a
ec9b4c4563
Merge branch 'caius4friends' into 'master'
...
Fix dialogue insertion again
See merge request OpenMW/openmw!3212
1 year ago
psi29a
03dbe1c9f3
Merge branch 'stringrefidskills' into 'master'
...
Assign StringRefIds to skills
See merge request OpenMW/openmw!3146
1 year ago
AnyOldName3
34fcfb63cf
Eliminate redundant version checks
1 year ago
Evil Eye
ac9378fa08
Replace Skill::mIndex with Skill::refIdToIndex
2 years ago
Evil Eye
c59032fd66
Make RefId::deserializeText return an empty RefId if no pre-existing StringRefId can be found
2 years ago
Evil Eye
974b4739fa
Add a test for three way merges
2 years ago
Alexei Dobrohotov
2de8c6b3c0
Don't discard collision for the entire tree if BSXFlags marker flag is set
2 years ago
unknown
09147934fb
Adjust unit tests
2 years ago
elsid
a6dbd819a1
Fix writing IndexRefId to ESM3
...
Use correct enum value.
2 years ago
psi29a
6601b0cb15
Merge branch 'fastandloose' into 'master'
...
Drop support for --fs-strict
Closes #7394
See merge request OpenMW/openmw!3093
2 years ago
psi29a
68415a952e
Merge branch 'lua_quat' into 'master'
...
Breaking change in Lua API: change obj.rotation from Euler angles to Quaternion
See merge request OpenMW/openmw!3123
2 years ago
elsid
04215ca9ec
Use settings values for Fog settings
2 years ago
psi29a
807893eb45
Merge branch 'clickbait' into 'master'
...
Mostly dehardcode skills
See merge request OpenMW/openmw!3112
2 years ago
Petr Mikheev
3b43cc2aea
Lua: change obj.rotation from Euler angles to Quaternion
2 years ago
elsid
e6e6b65ab3
Remove redundant manipulators
2 years ago
Evil Eye
e791d2b498
Fix unit tests
2 years ago
Evil Eye
eeda48ec50
Drop support for --fs-strict
2 years ago
Evil Eye
da4e04522b
More closely replicate Morrowind.exe's locks
2 years ago
Evil Eye
65b22975c9
Remove SkillEnum
2 years ago
psi29a
55cd30ea3b
Merge branch 'string_ref_id_utf8' into 'master'
...
Support UTF-8 by StringRefId::toDebugString (#7407 )
Closes #7407
See merge request OpenMW/openmw!3096
2 years ago
elsid
78b3f7288a
Support UTF-8 by StringRefId::toDebugString
2 years ago
Petr Mikheev
420916327d
Fix the bug "ESMStore::setUp() is called twice" that causes duplicated objects in ESM4 cells
2 years ago
Petr Mikheev
bf49855d9f
Test handling of BSXFlags in bulletnifloader
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
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
43e247d458
fixes tests
...
fix linux build + clang-tidy
2 years ago
Evil Eye
3cf0977c0b
Remove dialogue related instances of getRefIdString
2 years ago
elsid
258ae9d98e
Add settings index to provide lookup by category and name
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
61578ca39b
Add function LuaUtil::cast
2 years ago
psi29a
406eb1f9cc
Merge branch 'replace_boost' into 'master'
...
replace boost where not needed
See merge request OpenMW/openmw!2962
2 years ago
psi29a
71aaa56ae3
replace boost where not needed
2 years ago
elsid
499d086cc1
Add tests for Settings::Values
2 years ago
elsid
1fbf50fb13
Use PROJECT_SOURCE_DIR in tests
2 years ago
florent.teppe
fc3d113d29
fix tests
2 years ago
florent.teppe
3bbf60373a
Keep things coherent between references and and cell table
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
f09a689a4f
Merge ESM::RefNum and ESM4::FormId
2 years ago
psi29a
edfc6b78c8
Merge branch 'fix_esm3_exterior_cell_ref_id' into 'master'
...
Use lexicographical comparison in ESM3ExteriorCellRefId::operator< (#7316 )
Closes #7316
See merge request OpenMW/openmw!2909
2 years ago
elsid
bd10becb65
Use lexicographical comparison in ESM3ExteriorCellRefId::operator<
2 years ago
elsid
aa77e727b8
Fix build with clang and libc++
...
libc++ does not have such function:
apps/openmw_test_suite/esm3/testesmwriter.cpp:73:30: error: no member named 'view' in 'std::ostringstream'
EXPECT_EQ(stream.view().size(), size);
~~~~~~ ^
2 years ago
elsid
794050df63
Fix and add tests for ESM3ExteriorCellRefId serialization and text representation
2 years ago
elsid
5b14ff4470
Add tests to verify RefId size written to ESM file
2 years ago
elsid
fd9f652f43
Add CurrentContentFormatVersion to Esm3SaveLoadRecordTest parameters
2 years ago
elsid
e3944f741e
Test save/load for all ESM::CellRef fields
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
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
6c6dbccd0a
fix crash on reset
...
fix tests
2 years ago