Sergey Fukanchik
f3271cb66b
Add unit test for swapEndiannessInplace(). Part of Bug #5837
2021-02-09 13:09:36 -05:00
Petr Mikheev
31b5150e0d
Fix implementation of Misc::swapEndiannessInplace
2021-02-07 09:12:38 +01:00
psi29a
dc31e1c680
Merge branch 'refraction_shadow_fix_2' into 'master'
...
Fix shadows missing in the refraction RTT on the first and second frame
See merge request OpenMW/openmw!590
2021-02-06 20:26:46 +00:00
AnyOldName3
3e273a759a
Clarify method name now we're using it differently
2021-02-06 16:41:46 +00:00
Alexei Dobrohotov
ab28847eaf
Merge branch 'collisionextentsandcenter' into 'master'
...
Get collision box extents and center from btBvhTriangleMeshShape
See merge request OpenMW/openmw!579
2021-02-04 23:03:43 +00:00
elsid
68fe6b9114
Use only item size to check whether item fits cache
...
Item size has to be counted anyway and there is no reason to check only navmesh
data first.
2021-02-04 01:12:59 +01:00
elsid
3a2cea5271
Use raw recast mesh data and off mesh connections for navmesh key
...
Serialization into a vector of chars produces inconsistent results that leads
to reduced cache hit rate. Using a structured object is a more clear solution
and allows to remove serialization and nontrivial key compare logic with more
straigt forward structured object comparison.
2021-02-04 01:01:15 +01:00
elsid
ad1f8c1e84
Sort water and off mesh connections for recast mesh
...
Inconsisten order of these objects in navmesh cache key leads to cache misses
due to key inequality.
2021-02-04 01:00:41 +01:00
elsid
489107c5ee
Count navmesh cache key once in item size
...
Key is stored only in NavMeshTilesCache::Item, TileMap uses KeyView with
a pointer to a vector.
2021-02-04 00:44:23 +01:00
elsid
88ca4a1db6
Count navmesh cache hit rate
2021-02-04 00:35:24 +01:00
madsbuvi
7edaa50195
another approach
2021-01-31 18:02:05 +01:00
Nelsson Huotari
f87c45c92a
Get collision box extents and center from btBvhTriangleMeshShape
2021-01-30 16:03:02 +02:00
Bret Curtis
b164f1aa17
Merge pull request #3023 from akortunov/grass_intsancing
...
Grass instancing
2021-01-27 12:21:24 +01:00
Frederic Chardon
7cd7fa2f08
Collect all available stats if OPENMW_OSG_STATS_FILE is set and point to
...
a valid file.
2021-01-27 08:04:33 +00:00
Andrei Kortunov
24e1dfcddc
Use default argument
2021-01-26 22:29:41 +04:00
Andrei Kortunov
f40e227686
Remove redundant formatting changes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
d12a0fdcb3
Mark only instances from groundcover files as groundcover objects
2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc
Implement instanced groundcover
2021-01-26 22:29:41 +04:00
psi29a
49c828c138
Merge branch 'threadsafe-createchunk' into 'master'
...
Avoid OSG setting array binding from multiple threads
Closes #4765
See merge request OpenMW/openmw!557
2021-01-23 22:19:31 +00:00
Gleb Mazovetskiy
1e113710ef
Clean-up FontLoader::loadFontFromXml fix
...
Follow-up to !559
2021-01-23 17:14:56 +00:00
Gleb Mazovetskiy
bd7d5a8f92
Fix memory leak in FontLoader::loadFontFromXml
...
Tried building with -DCMAKE_CXX_FLAGS='-fsanitize=address -fsanitize-recover=address'
and this was one of the reported leaks.
2021-01-23 04:08:39 +00:00
AnyOldName3
eb80c997b8
Avoid OSG setting array binding from multiple threads
2021-01-22 19:44:22 +00:00
Gleb Mazovetskiy
cd5e31dc4b
Revert "Merge branch 'windowing-system' into 'master'"
...
This reverts merge request !541
2021-01-22 19:04:07 +00:00
AnyOldName3
b6e92c9c6d
Use ShaderVisitor to skip translucent framebuffer specific stuff
2021-01-20 23:37:19 +00:00
psi29a
7455dfb3a1
Merge branch 'windowing-system' into 'master'
...
Fix OSG USE_GRAPHICSWINDOW check
See merge request OpenMW/openmw!541
2021-01-14 15:00:34 +00:00
Gleb Mazovetskiy
d24a5f7b89
Fix OSG USE_GRAPHICSWINDOW check
...
When OSG is built with `-DOSG_WINDOWING_SYSTEM=None`, this macro does not exist.
Replaces the Android-specific check with a general one.
2021-01-13 20:45:34 +00:00
Andrei Kortunov
89f3f860ed
Allow to get a rotation vector from ESM::Position
2021-01-13 14:25:25 +04:00
Andrei Kortunov
f175beb304
Define template ref classes in components
2021-01-13 14:25:21 +04:00
psi29a
654238fd18
Merge branch 'no_bonus_points' into 'master'
...
Show mesh origin
Closes #5771
See merge request OpenMW/openmw!507
2021-01-11 21:21:47 +00:00
Petr Mikheev
eaaa2f4a1c
Use misc/endianness.hpp in components/nif/nifstream
2021-01-10 16:34:47 +01:00
Petr Mikheev
14dd11372f
Utility functions for little-endian <-> big-endian conversion.
2021-01-10 16:34:47 +01:00
Bret Curtis
a735bbe9a5
Merge pull request #3040 from akortunov/pvs
...
Fix some issues, found by PVS Studio
2021-01-10 12:58:17 +01:00
elsid
d2d8a7a940
Fix passing null to memcpy
...
/home/elsid/dev/openmw/components/detournavigator/navmeshtilescache.cpp:36:24: runtime error: null pointer passed as argument 2, which is declared to never be null
#0 0x55e37ba4cda5 in makeNavMeshKey /home/elsid/dev/openmw/components/detournavigator/navmeshtilescache.cpp:36
#1 0x55e37ba4cda5 in DetourNavigator::NavMeshTilesCache::set(osg::Vec3f const&, osg::Vec2i const&, DetourNavigator::RecastMesh const&, std::vector<DetourNavigator::OffMeshConnection, std::allocator<DetourNavigator::OffMeshConnection> > const&, DetourNavigator::NavMeshData&&) /home/elsid/dev/openmw/components/detournavigator/navmeshtilescache.cpp:81
#2 0x55e37fe3c861 in DetourNavigator::updateNavMesh(osg::Vec3f const&, DetourNavigator::RecastMesh const*, osg::Vec2i const&, osg::Vec2i const&, std::vector<DetourNavigator::OffMeshConnection, std::allocator<DetourNavigator::OffMeshConnection> > const&, DetourNavigator::Settings const&, std::shared_ptr<Misc::ScopeGuarded<DetourNavigator::NavMeshCacheItem> > const&, DetourNavigator::NavMeshTilesCache&) /home/elsid/dev/openmw/components/detournavigator/makenavmesh.cpp:582
#3 0x55e37fb796ce in DetourNavigator::AsyncNavMeshUpdater::processJob(DetourNavigator::AsyncNavMeshUpdater::Job const&) /home/elsid/dev/openmw/components/detournavigator/asyncnavmeshupdater.cpp:178
#4 0x55e37fb9a125 in DetourNavigator::AsyncNavMeshUpdater::process() /home/elsid/dev/openmw/components/detournavigator/asyncnavmeshupdater.cpp:144
#5 0x7f013f585c23 in execute_native_thread_routine /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:80
#6 0x7f013f8c63e8 in start_thread (/usr/lib/libpthread.so.0+0x93e8)
#7 0x7f013e91d292 in __GI___clone (/usr/lib/libc.so.6+0x100292)
2021-01-09 22:59:24 +01:00
elsid
7b54415c40
Fix reference binding to null
...
/usr/include/c++/10.2.0/bits/stl_vector.h:1046:34: runtime error: reference binding to null pointer of type 'value_type'
#0 0x55e37f50008a in std::vector<char, std::allocator<char> >::operator[](unsigned long) /usr/include/c++/10.2.0/bits/stl_vector.h:1046
#1 0x55e37f50008a in ESM::SavedGame::load(ESM::ESMReader&) /home/elsid/dev/openmw/components/esm/savedgame.cpp:28
#2 0x55e37e726139 in MWState::Character::addSlot(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:31
#3 0x55e37e742b39 in MWState::Character::Character(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:88
#4 0x55e37e7006e1 in MWState::CharacterManager::CharacterManager(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/charactermanager.cpp:25
#5 0x55e37e6d4140 in MWState::StateManager::StateManager(boost::filesystem::path const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:90
#6 0x55e37e82595a in OMW::Engine::prepareEngine(Settings::Manager&) /home/elsid/dev/openmw/apps/openmw/engine.cpp:641
#7 0x55e37e8439fd in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:867
#8 0x55e37e782760 in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:289
#9 0x55e37f6483c3 in wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/components/debug/debugging.cpp:200
#10 0x55e37ba8e3fe in main /home/elsid/dev/openmw/apps/openmw/main.cpp:301
#11 0x7f013e845151 in __libc_start_main (/usr/lib/libc.so.6+0x28151)
#12 0x55e37baa0e3d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw+0x6c11e3d)
2021-01-09 22:59:24 +01:00
Andrei Kortunov
8e5f26c109
Code cleanup
2021-01-09 14:41:10 +04:00
Andrei Kortunov
33648313a6
Initialize variables
2021-01-09 14:21:57 +04:00
Andrei Kortunov
7fc4c9f3f6
Avoid dead code
2021-01-09 13:52:01 +04:00
Andrei Kortunov
801e2d6ad0
Avoid to use uninitialized variables
2021-01-09 13:36:40 +04:00
Alexei Dobrohotov
c17e498465
Merge branch 'launchercleanup' into 'master'
...
Remove deadcode from the launcher.
See merge request OpenMW/openmw!511
2021-01-03 08:48:52 +00:00
fredzio
dbdd397716
Remove deadcode.
2021-01-01 16:54:45 +01:00
Evil Eye
630ec36d1f
iterate in reverse order
2020-12-30 10:35:51 +01:00
unknown
3bf641d3ce
Show mesh origin
2020-12-29 21:45:59 +01:00
Andrei Kortunov
ee2416017e
Fix tag mismatch
2020-12-28 12:19:22 +04:00
wareya
18ef32ca82
values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset
2020-12-27 22:16:11 +00:00
AnyOldName3
264539cd63
Merge branch 'WindowCrashCatcher' into 'master'
...
Handle Crashes on Windows
See merge request OpenMW/openmw!455
2020-12-18 13:41:18 +00:00
Alexei Dobrohotov
46ec40fa92
Make sure NIFLoader avoids working further with empty geometry
2020-12-18 01:22:34 +03:00
Alexei Dobrohotov
1e6156e04a
Turn all NIF records into structs
2020-12-16 01:54:31 +03:00
psi29a
78e85fe011
Merge branch 'this_is_nife' into 'master'
...
More NIF stuff
See merge request OpenMW/openmw!461
2020-12-15 15:43:12 +00:00
Nelsson Huotari
8b2bf12e8f
Use bip01 for root bone name
2020-12-15 13:51:49 +02:00
Nelsson Huotari
6c1f6169c0
Fix root movement glitch
2020-12-15 13:50:19 +02:00