Bo Svensson
a854a6e04a
removes UnrefQueue ( #3181 )
...
Currently, we use an `UnrefQueue` which supposedly aims to transfer destruction costs to another thread. The implications of this unusual pattern can not be well understood because some allocators might free resources more efficiently if they are freed by the same thread that allocated them. In addition, `UnrefQueue` complicates the validation of thread safety in our engine. Lastly, our current usage of `UnrefQueue` triggers `ref()`, `unref()` atomic operations as objects are passed into the queue. These operations could be more expensive than the actual destruction.
With this PR we thus remove `UnrefQueue`. We can expect these changes to have a minor impact at most because we free most resources elsewhere in `ResourceSystem::updateCache`.
3 years ago
elsid
a3b6bc7263
Fix logic expression for not found value
3 years ago
Evil Eye
dd4d8b2649
Prevent floating point issues accumulating
3 years ago
psi29a
a5b9c9160d
Merge branch 'compression' into 'master'
...
Add functions to compress/decompress vector of bytes
See merge request OpenMW/openmw!1305
3 years ago
elsid
1da9c75692
Add missing initialization for Enchanting::mObjectType
3 years ago
elsid
e5413c0664
Add functions to compress/decompress vector of bytes
3 years ago
Petr Mikheev
17f7a1a2ea
Merge branch 'fix_lua_test' into 'master'
...
Fix LuaUtilPackageTest.Transform
See merge request OpenMW/openmw!1302
3 years ago
elsid
bb26ba30b6
Add progress reporter type
...
To log/report progress of long duration operations using given time period.
3 years ago
elsid
23026caacc
Fix LuaUtilPackageTest.Transform
...
It can fail due to float arithmetic precision with error:
Expected equality of these values:
getAsString(lua, "moveAndScale")
Which is: "TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) rotation(angle=8.53284e-17, axis=(1, 0, 0)) }"
"TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) }"
3 years ago
psi29a
d8d16a52e1
Merge branch 'esm_loader' into 'master'
...
Add ESM data loader
See merge request OpenMW/openmw!1301
3 years ago
elsid
046b5f83ee
Add ESM data loader
...
A component to load ESM content files with limited support for record types and
selection which of them to load. Supported record types are:
ACTI, CELL, CONT, DOOR, GMST, LAND, STAT.
3 years ago
elsid
18d3102148
Do not use union to access FIXED_STRING<4> as int
...
https://en.cppreference.com/w/cpp/language/union :
> It's undefined behavior to read from the member of the union that wasn't most recently written.
3 years ago
Andrei Kortunov
362c124e8f
Allow to place levelled creatures to the game world (bug 6347)
3 years ago
psi29a
00b28d2665
Merge branch 'over_time' into 'master'
...
Fix particles and magnitudes for (damage) over time effects
See merge request OpenMW/openmw!1298
3 years ago
psi29a
2f0484f4fc
Merge branch 'clear_me_not' into 'master'
...
Do not clear depth buffer in first person (#6078 )
Closes #6078
See merge request OpenMW/openmw!1119
3 years ago
glassmancody.info
cc009d246f
do not clear depth buffer in first person
3 years ago
unknown
add6eb9c95
Fix particles and magnitudes for (damage) over time effects
3 years ago
psi29a
c051298848
Merge branch 'sqlite3_helpers' into 'master'
...
Add sqlite3 helpers
See merge request OpenMW/openmw!1299
3 years ago
elsid
c88367b6a6
Add sqlite3 helpers
3 years ago
elsid
501316a9f7
Add missing initialization in MWPhysics::Object
...
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC27: MWPhysics::Object::commitPositionChange() (object.cpp:68)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC30: MWPhysics::Object::commitPositionChange() (object.cpp:73)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
3 years ago
elsid
d06e697356
Initialize RenderingManager fields before use
...
PostProcessor is constructed before mNearClip, mViewDistance, mFieldOfView are
initialized and the constructor calls updateProjectionMatrix that uses these
fields.
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0x722EBE: min<float> (stl_algobase.h:235)
==16218== by 0x722EBE: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1183)
==16218== by 0x7D022F: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==16218== by 0x728B41: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:452)
==16218== by 0xBB5E65: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==16218== by 0xDEEA6F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==16218== by 0xDF2068: OMW::Engine::go() (engine.cpp:959)
==16218== by 0xDE7B8F: runApplication(int, char**) (main.cpp:220)
==16218== by 0x1006593: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==16218== by 0x7152C3: main (main.cpp:232)
==16218==
==17455== Conditional jump or move depends on uninitialised value(s)
==17455== at 0x4F8613F: osg::Matrixd::makeFrustum(double, double, double, double, double, double) (Matrix_implementation.cpp:916)
==17455== by 0x4EC0E11: osg::Camera::setProjectionMatrixAsPerspective(double, double, double, double) (Matrixd:580)
==17455== by 0x722DDA: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1167)
==17455== by 0x7D01EF: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==17455== by 0x728BA1: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:453)
==17455== by 0xBB5E25: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==17455== by 0xDEEA3F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==17455== by 0xDF2038: OMW::Engine::go() (engine.cpp:959)
==17455== by 0xDE7B5F: runApplication(int, char**) (main.cpp:220)
==17455== by 0x1006563: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==17455== by 0x7152C3: main (main.cpp:232)
==17455==
3 years ago
psi29a
ac3c02496c
Merge branch 'terrainselectionoptimize' into 'master'
...
Terrain selection optimizations
See merge request OpenMW/openmw!1261
3 years ago
Chris Djali
9c040d1ff7
Merge pull request #3175 from bosvensson1/patch-52
...
removes sky bounds
3 years ago
unelsson
14c4bba4a3
Remove unused include
3 years ago
unelsson
28278e9a82
Drawing duplicate lines is faster than iterating through big containers
3 years ago
unelsson
55456a19fc
Only iterate through temporary selection when using toggle
3 years ago
unelsson
46960825ef
Various terrain selection and editmode dragging fixes
3 years ago
unelsson
89a20b6ea5
Call dragEnded instead of pressed also after aborted operation
3 years ago
unelsson
3df9ceda03
Remove measurement code
3 years ago
unelsson
7602d677fa
Terrain selection optimizations, measurements, renderBin change
3 years ago
psi29a
ed1953b811
Merge branch 'actor_souls_only' into 'master'
...
Don't hit the ground
Closes #6339
See merge request OpenMW/openmw!1295
3 years ago
Evil Eye
5805c0114a
Don't hit the ground
3 years ago
psi29a
29082ff658
Merge branch 'morrowland_the_musical' into 'master'
...
Stop trying to play non-existent music files started by scripts
See merge request OpenMW/openmw!1293
3 years ago
psi29a
787da4891c
Merge branch 'actor_souls_only' into 'master'
...
Check if the target is an actor before updating magic effects
Closes #6339
See merge request OpenMW/openmw!1294
3 years ago
psi29a
89077af3ff
Merge branch 'getters' into 'master'
...
Move getters to header in order to allow inlining (performance optimization)
See merge request OpenMW/openmw!1289
3 years ago
Evil Eye
bba80b07a2
Check if the target is an actor
3 years ago
Bo Svensson
db3d938ee9
cleans up BSAFile ( #3177 )
...
We currently build a large map of a BSAFile's contents unused by Open MW. We already map archive contents in VFS. With this PR we remove the map from BSAFile and reimplement its only current use in BSATool.
3 years ago
psi29a
e86b9a7b89
Merge branch 'add_comment' into 'master'
...
Add comment for MWWorld::Ptr::getType() because it is not obvious.
See merge request OpenMW/openmw!1291
3 years ago
Evil Eye
4a6464ea67
Stop trying to play non-existent music files started by scripts
3 years ago
Evil Eye
ec6451e93a
Merge branch 'recordtype' into 'master'
...
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
See merge request OpenMW/openmw!1290
3 years ago
Bo Svensson
fc9ab97950
sky.cpp
3 years ago
Petr Mikheev
4e9d691715
Add comment for MWWorld::Ptr::getType() because it is not obvious.
3 years ago
Evil Eye
6b482d0b52
Merge branch 'openmw-tradeglitch' into master
3 years ago
psi29a
6ec66edb7c
Merge branch 'soulful' into 'master'
...
Fix soul trapping for one shot kills
Closes #6337
See merge request OpenMW/openmw!1288
3 years ago
psi29a
67fa8413f3
Merge branch 'physics_heightfield' into 'master'
...
Replace float type for arguments to create heightfield with int
See merge request OpenMW/openmw!1285
3 years ago
psi29a
207a7245bc
Merge branch 'navigator_settings' into 'master'
...
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
See merge request OpenMW/openmw!1283
3 years ago
psi29a
444765e304
Merge branch 'navmesh_agent_half_extents' into 'master'
...
Define default actor half extents in settings
See merge request OpenMW/openmw!1282
3 years ago
Petr Mikheev
a8acc19988
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
3 years ago
elsid
405e814190
Move btCollisionObject creation for MWPhysics::Object into components
3 years ago
Evil Eye
ae4578f566
Fix soul trapping for one shot kills
3 years ago
Petr Mikheev
fec65acd18
Move getters to header in order to allow inlining
3 years ago
elsid
144862aa35
Define default actor half extents in settings
...
Player's half extents may change over time when wolfskin model is used for
example. Having it in settings is a more presistent approach.
3 years ago
elsid
7c5a590890
Replace float type for arguments to create heightfield with int
...
To reduce amount of computations on the caller side and restrict possible
values.
* verts can't be non-int because it's a number of things.
* worldsize is initially defined as int by ESM::Land::REAL_SIZE.
* Put function to calculate heightfied shift into components to be able to
reuse by other binaries.
3 years ago
elsid
6986feb81b
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
...
To avoid having multiple places to initialize them when they will be required
by multiple binaries.
3 years ago
Bo Svensson
d6613d3677
mostly reverts MWLua changes ( #3170 )
...
We just can no longer use the former ptr.getTypeName() as a fallback, but I do not suppose it matters. This value was an implementation defined string that usually contained a garbled mess.
Probably we should additionally refactor Lua types completely now that we have Ptr::getType(). I will leave this up to MWLua developers.
3 years ago
Bo Svensson
5cf9995a31
fixes windows build
3 years ago
Bo Svensson
ef906cbfa8
improves MWClass mapping ( #3166 )
...
Currently, we use a peculiar mapping of ESM classes by their std::type_info::name. This mapping is an undefined behaviour because std::type_info::name is strictly implementation defined. It could return a non-unique value on some platforms. With this PR we use the unsigned int sRecordId of the ESM class as a more efficient lookup type that does not build on undefined behaviour. We can expect marginally faster save-game loading with these changes as well.
3 years ago
Bo Svensson
98f8295765
allows to skip ComputeLightSpaceBounds traversal ( #3152 )
...
Currently, we always traverse the scene graph an additional time with a ComputeLightSpaceBounds visitor during shadow casting. ComputeLightSpaceBounds is only useful when the shadow casting mask allows us to shrink the bounds of the rendered scene, so we guard its traversal with a check against getCastsShadowTraversalMask. In practice, this guard never works because we build the traversal mask inclusively.
With this PR we limit the getCastsShadowTraversalMask check to relevant masks. This new check allows us to skip a superfluous ComputeLightSpaceBounds traversal with most settings.
3 years ago
psi29a
66a6b80df9
Merge branch 'thrust_into_the_light' into 'master'
...
Detect keys and enchanted items in containers without custom data
Closes #6326
See merge request OpenMW/openmw!1265
3 years ago
psi29a
f9124ccea6
Merge branch 'recast_mesh_slope' into 'master'
...
Use different colors for walkable and non-walkable recast mesh triangles
See merge request OpenMW/openmw!1277
3 years ago
psi29a
3e2694dde9
Merge branch 'catch_me' into 'master'
...
Remove active effects from spells that no longer exist
See merge request OpenMW/openmw!1273
3 years ago
psi29a
d3bad2dba2
Merge branch 'stripperiffic_werewolves' into 'master'
...
Remove magic effects before saving stats when turning into a werewolf
Closes #6330
See merge request OpenMW/openmw!1270
3 years ago
psi29a
21c4504d35
Merge branch 'max_slope' into 'master'
...
Change max walkable slope angle to 46 degrees
See merge request OpenMW/openmw!1280
3 years ago
Bo Svensson
cbcdd705ee
minor objectpaging.cpp scene graph optimisations ( #3155 )
...
We now use PositionAttitudeTransform for unmerged nodes because I have been informed PositionAttitudeTransform's scene graph performance is measurably faster than MatrixTransform's. We still need to use MatrixTransform for merged nodes because the Optimizer has limited support for non-MatrixTransform nodes. These MatrixTransforms will be removed in the merging process anyway.
3 years ago
elsid
ff9aabafd1
Change max walkable slope angle to 46 degrees
...
This is the value used by vanilla Morrowind engine. At this angle player
character starts sliding down the slope.
This fixes navigation and movement issue in Mournhold, Godsreach.
3 years ago
Bo Svensson
af759683b8
enables std::move in keywordsearch.hpp ( #3163 )
...
For some reason we have commented std::move keywords in keywordsearch.hpp while they are quite beneficial. openmw_test_suite for keywordsearch.hpp takes 30% less time with these changes.
3 years ago
elsid
0c8a811ad5
Render only cached recast mesh
...
To avoid waiting while recast mesh is generating.
Remove redundant continue.
3 years ago
Evil Eye
3d5950f790
Remove active effects from spells that no longer exist
3 years ago
Evil Eye
ec735529da
Remove active effects from the player when transforming
3 years ago
Evil Eye
f6eeee3ad5
Detect keys and enchanted items in containers without custom data
3 years ago
psi29a
7af245d205
Merge branch 'sync_sync_with_async' into 'master'
...
Merge logic of sync and async physics simulation
See merge request OpenMW/openmw!1250
3 years ago
psi29a
ae31138686
Merge branch 'options_tests' into 'master'
...
Add tests for openmw options
See merge request OpenMW/openmw!1253
3 years ago
psi29a
9c47fdcf7e
Merge branch 'flip_sign' into 'master'
...
Fix regression #6328
Closes #6328
See merge request OpenMW/openmw!1267
3 years ago
psi29a
1332e57195
Merge branch 'outside_means_outside' into 'master'
...
Make StayOutside only block teleportation from exteriors to interiors
Closes #6323
See merge request OpenMW/openmw!1268
3 years ago
psi29a
fc7e13d76a
Merge branch 'omwaddon_dep' into 'master'
...
Allow creating omwaddons without a dependency on an omwgame
See merge request OpenMW/openmw!1243
3 years ago
Evil Eye
caafd0c667
Remove CE enchantments before saving stats when turning into a werewolf
3 years ago
psi29a
1f62fd3b56
Merge branch 'Fix_Keyword_Report_to_caius' into 'master'
...
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
Closes #6308
See merge request OpenMW/openmw!1266
3 years ago
florent teppe
e5abadc234
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
3 years ago
psi29a
555224a0fb
Merge branch 'fixes' into 'master'
...
Make compilers happy and fix the changelog
See merge request OpenMW/openmw!1260
3 years ago
Evil Eye
dfc72e9b7e
Make StayOutside only block teleportation from exteriors to interiors
3 years ago
Evil Eye
7540265432
Fix regression #6328
3 years ago
Bo Svensson
787f91211d
resets state updater to apply light settings ( #3141 )
...
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
3 years ago
psi29a
c3f5e8f968
Merge branch 'lua_transform' into 'master'
...
3D transforms in Lua
See merge request OpenMW/openmw!1235
3 years ago
elsid
035307b012
Add tests for openmw options
...
In attempt to document current behaviour. Add commented out checks as desired
behaviour.
3 years ago
Kindi
ce54edf011
Update tradewindow.cpp
...
Additional check
3 years ago
Bo Svensson
442a0e8434
avoids two transforms in sky.cpp ( #3150 )
...
As we discovered in #3148 , `Transform` nodes and their low level equivalence `pushModelViewMatrix` are somewhat costly involving a `Matrix::invert` operation per frame.
With this PR we avoid one `Transform` node for sun flashes and avoid another `pushModelViewMatrix` call in case the sun is fully visible.
3 years ago
fredzio
3b174d72d8
Introduce 3 scoped mutex wrappers to allow to conditionally skip taking
...
mutexes in synchronous case.
3 years ago
fredzio
21dbe314bf
Use common function for sync and async case. Now both cases follow the
...
same flow, synchronous simulation is just a special case.
3 years ago
Frederic Chardon
499b161e7b
Merge handleFall() and updateMechanics() into updateActor(). It remove gratuitious differences between sync and async cases. Also, it will make the after simulation update logic easier to follow when projectiles move into the simulation thread.
3 years ago
Bret Curtis
0d1d3e67bc
Merge pull request #3149 from bosvensson1/patch-24
...
With this PR we fix a -Wreorder warning.
3 years ago
Bo Svensson
4b1c009ffd
use StateSet define for translucentFramebuffer ( #3138 )
...
With this PR we test out osg's shader define system for a somewhat harmless feature. As we can see, our code becomes more concise and efficient in this case. Most importantly, we no longer create unneeded vertex shader objects.
3 years ago
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback ( #3147 )
...
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
3 years ago
Bo Svensson
9f58616aa0
fixes -Wreorder warning
3 years ago
Bo Svensson
8e9851c97c
npcanimation.cpp ( #3148 )
3 years ago
Kindi
d9b254178f
Update tradewindow.hpp
...
remover redundant
3 years ago
Kindi
f28d6738bf
Update tradewindow.cpp
3 years ago
Bo Svensson
e4a9eefc2a
uses a bitfield in refdata.hpp ( #3143 )
...
* uses a bitfield in refdata.hpp
With this simple change we pack boolean values to reduce the memory requirements of game objects.
* refdata.hpp [ci skip]
* refdata.cpp
3 years ago
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback ( #3144 )
...
* nodecallback.hpp
* lightmanager.hpp
* lightmanager.cpp
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* [ci skip]
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* lightmanager.cpp
* lightmanager.cpp
* nodecallback.hpp
* [ci skip]
* [ci skip]
* controller.cpp
* [ci skip]
* osgacontroller.cpp
* keyframe.hpp
* controller.hpp
* keyframe.hpp
* [ci skip]
* keyframe.hpp
* animation.hpp
* [ci skip]
* weaponanimation.cpp
* nodecallback.hpp
3 years ago
Kindi
0c1b78c42a
Update tradewindow.cpp curly
3 years ago
kuyondo
071793eeb3
Merge branch 'master' of https://gitlab.com/Kuyondo/openmw
3 years ago
kuyondo
49da33a129
comiit
3 years ago
Evil Eye
d680aa26e9
Disallow switch fallthrough
3 years ago
psi29a
0e07fc38e5
Merge branch 'opencs-ui-tweaks' into 'master'
...
Minor UI tweaks all around OpenMW-CS
See merge request OpenMW/openmw!1212
3 years ago
Matjaž Lamut
1c9f06f742
Minor UI tweaks all around OpenMW-CS
3 years ago
psi29a
2c8c36fe5d
Merge branch 'master' into 'effective_magic'
...
# Conflicts:
# CHANGELOG.md
3 years ago
psi29a
bd866cf210
Merge branch 'fix_infidelities' into 'master'
...
Fix Infidelities quest from Tribunal (#6307 )
Closes #6307
See merge request OpenMW/openmw!1248
3 years ago
psi29a
1d342f80ed
Merge branch 'cursorspeedmerge' into 'master'
...
Updated: Change cursor speed with settings.cfg (#6312 )
Closes #6312
See merge request OpenMW/openmw!1255
3 years ago
psi29a
f6b27f610d
Merge branch 'revert_and_twist' into 'master'
...
Revert and restore the cell grid size with alternate fix
See merge request OpenMW/openmw!1259
3 years ago
Bret Curtis
52a10a4bc0
remove one last assert
3 years ago
Bo Svensson
2568f119a4
reapplies PR without npe ( #3137 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
* nifloader.cpp
* shadervisitor.cpp
3 years ago
psi29a
9cf9da9cbd
Merge branch 'fix' into 'master'
...
Resolve warning: lambda capture 'defaultCollisionType' is not required to be captured for this use
See merge request OpenMW/openmw!1247
3 years ago
andrewapp
b5af192888
gamepad cursor speed fix
3 years ago
Bret Curtis
8309910d9d
Restore the cell grid to its former non-exorbitant size, reducing stutter and also threw in a simple alternative fix for the actor position adjustment issue.
3 years ago
Evil Eye
2de7b8e2fb
Allow non-biped creatures using weapons to open doors
3 years ago
Evil Eye
4abcb0d7b9
Remove applied magnitude instead of min magnitude
3 years ago
Evil Eye
63a9203dde
Fix icon magnitude
3 years ago
Evil Eye
43074347e8
Prevent spell duplication
3 years ago
Evil Eye
b8e4f18751
Clear temporary effects before unloading actors to prevent absorb effects becoming permanent
3 years ago
Evil Eye
161e042e2a
Prevent iterator invalidation when cleaning up summons
3 years ago
Evil Eye
dc1fe62dde
Overhaul magic effects to work with onApply and onEnd events
3 years ago
Andrei Kortunov
e109d86489
Revert "avoids creating empty statesets on drawables ( #3132 )"
...
This reverts commit 957c25a491
.
3 years ago
Bo Svensson
d8707a763f
fixes build ( #3134 )
...
* quadtreeworld.cpp
* renderingmanager.cpp [ci skip]
* quadtreeworld.hpp
* cellborder.hpp
* cellborder.cpp
3 years ago
Bret Curtis
803195a05f
add back some explicit includes
3 years ago
Bo Svensson
8358418555
set the correct program link parameters ( #3110 )
...
* shadermanager.hpp setProgramTemplate
* shadermanager.hpp
* shadermanager.cpp setProgramTemplate
* shadervisitor.hpp setProgramTemplate
* shadervisitor.cpp setProgramTemplate
* scenemanager.cpp setProgramTemplate
* scenemanager.hpp setProgramTemplate
* renderingmanager.cpp
* groundcover.cpp setProgramTemplate
* groundcover.hpp
* groundcover.cpp
* shadervisitor.cpp
* util.cpp
* lightmanager.cpp
* scenemanager.cpp
* scenemanager.hpp
* lightmanager.cpp
* lightmanager.cpp
* lightmanager.cpp
* scenemanager.hpp [ci skip]
* water.cpp
* groundcover.cpp
* shadermanager.hpp
3 years ago
Andrei Kortunov
1109cc3ac7
Remove unused data field ( #3133 )
3 years ago
Bo Svensson
957c25a491
avoids creating empty statesets on drawables ( #3132 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
3 years ago
Andrei Kortunov
fc2076db1a
Fix MSVC warnings about local variables redeclaration ( #3130 )
3 years ago
elsid
c0ef4417c3
Check AiTravel destination for other actors presence
...
Use faster aabbTest but without destance filter. To avoid dependency on a
specific constant and correctly handle situations when there is a big
difference between actors sizes.
3 years ago
elsid
9950132a5f
Allow travelling actors find path over pathgrid navmesh area type
...
In addition to other navmesh areas. This makes actors behaviour closer to
vanilla when pathgrid is correct.
3 years ago
elsid
163968f578
Normalize area cost factor
...
Recastnavigation uses path cost and heuristic based on distance to find
shortest path by A* algorithm. Using raw speed values makes cost much lower
value than heuristic (1000 times less at maximum). Heuristic is defined as
distance from node to target * 0.999 that means area cost should never be less
than 0.999 or 1 for simplicity.
Use max speed to make lowest possible cost factor equal to 1.
3 years ago
Petr Mikheev
48538d5cef
3D transforms in Lua
3 years ago
Petr Mikheev
eb2f863b7d
Resolve `unused-lambda-capture` warnings
3 years ago
Petr Mikheev
fb3917fc1a
Lua callbacks
3 years ago
Petr Mikheev
0bd1c22e24
Raycasting in Lua
3 years ago
Bret Curtis
fd251dfe55
remove unused member variable
3 years ago
Bo Svensson
5fde6867a2
removes unused code ( #3129 )
...
* scenemanager.cpp
* scenemanager.hpp
* scenemanager.cpp
* stats.cpp
* renderingmanager.cpp
3 years ago
Evil Eye
77a23dab09
Only add enabled objects to the scene
3 years ago
Petr Mikheev
e760a6c7e6
Merge branch 'forlua' into 'master'
...
Simple Physics API modification for Lua
See merge request OpenMW/openmw!1216
(cherry picked from commit d88494c90b501d0832ae0330a0ca81d8b8e5aa50)
02dd055a Save hitObject in castSphere() just like in castRay()
0793d0bf Allow to override collision mask and group for castSphere() as for castRay()
3 years ago
Bo Svensson
01cc61087b
improves paging preloader ( #3126 )
...
* Return check for distance when we try to reuse data
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* cellpreloader.cpp
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* quadtreeworld.cpp
* chunkmanager.cpp
* chunkmanager.cpp
* cellpreloader.cpp
* jvoisin
* whitespace
* whitespace
3 years ago
psi29a
782e0710af
Merge branch 'OpenCS-preserve-blocked' into 'master'
...
OpenCS - Preserve "blocked" record flags when saving. #6288
Closes #6288
See merge request OpenMW/openmw!1052
3 years ago
psi29a
908d196fee
Merge branch 'master' into 'undead_intelligence'
...
# Conflicts:
# CHANGELOG.md
3 years ago
psi29a
ade6cd0127
Merge branch 'editor_columns_filtering' into 'master'
...
Toggling table columns visibility. Partially implements #890
Closes #890
See merge request OpenMW/openmw!1232
3 years ago
psi29a
2cee222e73
Merge branch 'explosion_at_impact' into 'master'
...
Bring arrow behaviour in line with vanilla (#6233 and other change)
See merge request OpenMW/openmw!1188
3 years ago
Bo Svensson
c6f7137ee1
fixes bugs with share state ( #3111 )
...
* optimizer.cpp merge fix
* objectpaging.cpp
* optimizer.hpp setSharedStateManager
* optimizer.cpp shareState
* scenemanager.cpp shareState
* scenemanager.cpp
* optimizer.cpp
* optimizer.cpp
* scenemanager.cpp
* optimizer.cpp
3 years ago
Evil Eye
233bb287e1
Merge branch 'refactoring2' into 'master'
...
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
See merge request OpenMW/openmw!1242
3 years ago
Evil Eye
30c998f34e
Merge branch 'test_cells' into 'master'
...
Use same logic for testing cell as for loading cell
See merge request OpenMW/openmw!1240
3 years ago
Evil Eye
34cf66139a
Make GetCurrentAIPackage return -1 for non-actors and dead actors
3 years ago
Evil Eye
2f4df12b2e
Merge branch 'Fix_ASCII' into 'master'
...
Fixed an issue where keyword search expected the text to be all ASCII characters
See merge request OpenMW/openmw!1227
3 years ago
Petr Mikheev
413ac067ec
Allow creating omwaddons without a dependency on an omwgame
3 years ago
Petr Mikheev
83e0d9aeef
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
3 years ago
psi29a
e2e5161d81
Merge branch 'optimizebrushdraw' into 'master'
...
Optimize terrain editing brush drawing performance
Closes #6285
See merge request OpenMW/openmw!1226
3 years ago
elsid
5878b1fce6
Use same logic for testing cell as for loading cell
...
Having different branches makes testing less useful. If something fails in
regular executing it should fail in testing. To make it possible there should
be none differences in the execution paths.
3 years ago
elsid
d36595e09e
Make sure PathFinder::getClosestPoint is not called with failing precondition
...
Pathgrid should be not nullptr and points should be not empty.
3 years ago
Pi03k
e641bea606
Toggling table columns visibility
3 years ago
Petr Mikheev
5893b88409
Ignore time to destination when giving way ( #6296 )
3 years ago
Bo Svensson
b22fb7a7bf
consolidate node mask checks ( #3125 )
...
* consolidate node mask checks
This PR simplifies a few checks against node masks in object paging by using the osg provided `setTraversalMask`.
* objectpaging.cpp
3 years ago
Evil Eye
786b6b7c9a
Merge branch 'lua_util' into 'master'
...
Move LuaState::makeReadOnly(sol::table) out of the class
See merge request OpenMW/openmw!1229
3 years ago
florent.teppe
d9c3ba03f4
Uses limits instead of climits
3 years ago
Bo Svensson
99df1c695c
fixes wireframe is broken ( #3123 )
...
* renderingmanager.cpp [ci skip]
* groundcover.hpp [ci skip]
* groundcover.cpp
* renderingmanager.cpp [ci skip]
* renderingmanager.hpp
3 years ago
florent.teppe
2d32954888
Replaced Assert_true with expect_eq
3 years ago
psi29a
15bcbb5844
Merge branch 'getsquareroot' into 'master'
...
Remove duplicate GetSquareRoot implementation
See merge request OpenMW/openmw!1231
3 years ago
Evil Eye
831055f878
Merge branch 'OpenCS-fix-modify' into 'master'
...
OpenCS - Re-implement the fix for Issue #6067 .
See merge request OpenMW/openmw!1173
3 years ago
florent.teppe
0e06e9b221
Removed useless comment and converted the file to UTF8 to keep special characters
3 years ago
Evil Eye
6d7cb38834
Remove duplicate GetSquareRoot implementation
3 years ago
florent.teppe
c1c501ca35
Added test to make sure keyword search works even with non ascii characters
3 years ago
florent.teppe
bcb0526268
Added climits, it compiled on VS2019, but not with g++
3 years ago
Petr Mikheev
2f25257a3e
Move LuaState::makeReadOnly(sol::table) out of the class because it doesn't need to access LuaState internals.
3 years ago
Petr Mikheev
f1e3c55ea3
Fix deadlock in Lua worker thread ( #6286 )
3 years ago
florent.teppe
76be2e91e5
Fixed an issue where keyword search expected the text to be all ASCII characters
3 years ago
psi29a
68db9869f5
Merge branch 'DistantTerrainDebugChunks' into 'master'
...
Debug terrain chunks
See merge request OpenMW/openmw!1169
3 years ago
psi29a
18f5762a76
Merge branch 'master' into 'OpenCS-preserve-blocked'
...
# Conflicts:
# CHANGELOG.md
3 years ago
unelsson
70e210735a
Optimize terrain editing brush drawing performance
3 years ago
Pi03k
4ff5a04e9b
Remove redundant qt-related cmake macros
3 years ago
Bo Svensson
f62adab43a
Avoid the terrain sync completely in most cases ( #3103 )
...
We can take elsid's commit 605cb8d
further by avoiding the terrain sync completely in most cases. Currently in changeCellGrid we wait for a new preloading task to ensure the getPagedRefnums for the new active cells have been filled in by object paging. This is usually not necessary because we have already completed a preload in the past containing these active cells. With this PR we remember what we preloaded and skip the terrain sync if it is not needed.
3 years ago
psi29a
2be3a76b6a
Merge branch 'spin_me_right_round' into 'master'
...
Reset rotation when respawning actors
Closes #6273
See merge request OpenMW/openmw!1219
3 years ago
psi29a
24d1c2b5fa
Merge branch 'recurse_directory_iterator' into 'master'
...
VFS manager refactoring
See merge request OpenMW/openmw!1218
3 years ago
Cédric Mocquillon
6817282097
Move getFileExtension to common header and use instead of repeating same code
3 years ago
Cédric Mocquillon
c2df0949e2
Change normalizeFilename signature
3 years ago
Cédric Mocquillon
d4e26746a3
Use recurse subdirectory iterator to iterate over the VFS without exposing internal details
3 years ago
Evil Eye
60298cd66d
Reset rotation when respawning actors
3 years ago
pi03k
e4eeb9cce9
Remove 'no relevant classes' moc warning
3 years ago
Bo Svensson
b6f572578e
Groundcover optimisation ( #3101 )
...
* groundcover.cpp share state
* groundcover.hpp share state
3 years ago
psi29a
0ab8a7ddd7
Merge branch 'create-objects-menu' into 'master'
...
OpenMW-CS: Usability changes to the drop-down menu when creating a new object.
See merge request OpenMW/openmw!1210
3 years ago
psi29a
c40f921396
Revert "actoranimation.cpp faster getbonebyname ( #3099 )"
...
This reverts commit c284d0cf5c
3 years ago
Cédric Mocquillon
080c909c28
Merge the 'debug chunks' and 'object paging debug batches' settings into a single one
3 years ago
Bo Svensson
e2d0e86020
cellpreloader.cpp unused variable ( #3102 )
3 years ago
psi29a
f8c7664234
Merge branch 'copy_before_move' into 'master'
...
Maybe fix #6259
Closes #6259
See merge request OpenMW/openmw!1197
3 years ago
Bo Svensson
ac72f3d636
reduces virtual function calls in a hotspot of cache retrieval ( #3100 )
...
* chunkmanager.cpp static_cast [ci skip]
* groundcover.cpp static_cast [ci skip]
* Update objectpaging.cpp
objectpaging.cpp static_cast [ci skip]
3 years ago
Bret Curtis
1edeffbafc
constify getBoneByName
3 years ago
Bo Svensson
9d661359a1
Groundcover consolidation ( #3096 )
...
* chunkmanager.hpp viewdistance
* chunkmanager.cpp viewdistance
* chunkmanager.hpp viewdistance
* quadtreeworld.cpp viewdistance
* quadtreeworld.cpp consolidate
* quadtreeworld.hpp consolidate
* renderingmanager.cpp groundcover consolidate
* renderingmanager.hpp groundcover consolidate
* renderingmanager.cpp updater move
* renderingmanager.hpp updater move
* groundcover.hpp activegrid consolidation
* groundcover.cpp activegrid consolidation
* settings-default.cfg dead settings remove
* viewdata.cpp revert
* wrong file paste mistake
* wrong file paste mistake
* wrong file paste mistake
* renderingmanager.cpp updatecallback fix
* renderingmanager.cpp namespace fix
* groundcover.hpp redefinition fix
* groundcover.cpp redefinition fix
* renderingmanager.cpp crash fix
* renderingmanager.cpp euclidean groundcover distance
* viewdata.hpp getreusedistance
* quadtreeworld.cpp reusedistance
* groundcover.rst [ci skip]
3 years ago
Bo Svensson
c284d0cf5c
actoranimation.cpp faster getbonebyname ( #3099 )
3 years ago
Bo Svensson
147ed39900
This PR solves a crash with Robert's bodies logged on your bugtracker. ( #3095 )
...
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* npcanimation.cpp [ci skip]
* attach.hpp [ci skip]
* attach.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* cellpreloader.cpp
* npcanimation.cpp
* attach.cpp
* make android adk happy
* make android adk happy
* changelog.md [ci skip]
* authors.md [ci skip]
3 years ago
Lamoot
6e6214bc43
In OpenMW-CS, when creating a new object, sort the entries in the drop-down menu alphabetically. Also have the menu be tall enough to show all of them at once (without scroll bars).
3 years ago
elsid
6b7434ca69
Pass std::string_view instead of const std::string&
...
* Starting with Actor::getBodyPartMesh and ending with
Misc::StringUtils::ciEqual.
* Add tests for Misc::StringUtils::ciEqual.
3 years ago
psi29a
149241daae
Merge branch 'dead_animation_code_removal' into 'master'
...
Dead animation code removal
Closes #6264
See merge request OpenMW/openmw!1198
3 years ago
JanuarySnow
bdbc6c0cba
Dead animation code removal
3 years ago
psi29a
4bf22f3ca0
Merge branch 'fix_pathgrid_path' into 'master'
...
Use pathgrid path when destination is closer to different graph component node
See merge request OpenMW/openmw!1155
3 years ago
elsid
605cb8db7c
Make sync terrain preloading sleep free
...
This reduces average time spent on in. 5 milliseconds as a base precision is
quite a lot considering that for 60 FPS frame time is 1000/16 = ~16.67 ms
when it's a cell loading frame and there is more important work to do rather
than sleeping.
3 years ago
psi29a
aef6ec464c
Merge branch 'optimize_add_item' into 'master'
...
Optimize ContainerStore::stacks (attempt #2 )
See merge request OpenMW/openmw!1200
3 years ago
elsid
403f0a72f0
Do not copy RefId when need to compare
...
Makes ContainerStore::stacks ~4x times faster when adding 4k different items
in a single frame.
3 years ago
elsid
e910dd7a25
Rename CellRef::getRefIdPtr -> getRefIdRef and return reference
...
Return value can't be nullptr. Pointer complicates the code because has to be
dereferenced.
Also move function definition to hpp to make it easier for compiler to optimize
calls.
3 years ago
elsid
b0f772af40
Define dependency to OSG plugins in one place
...
Each binary depending on components library requires OSG plugins to be linked.
Duplicating dependecies for each binary does not give benefits and brings
problems when new binary is added.
3 years ago
Frederic Chardon
7b26058fa5
moveObject() has side effects that might invalidate iterators from mActors. Instead of iterating over mActors, make a copy of needed data and iterate over the copies.
3 years ago
psi29a
6170971ea3
Merge branch 'bettermoveinstance' into 'master'
...
Set instance movement based on camera zoom
See merge request OpenMW/openmw!1186
3 years ago
elsid
a8c16071dc
Fix -Wreturn-local-addr warning
...
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp: In member function ‘const string& CSMWorld::ActorAdapter::ActorData::getPart(ESM::PartReferenceType) const’:
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp:142:20: error: returning reference to temporary [-Werror=return-local-addr]
142 | return "";
| ^~
3 years ago
Petr Mikheev
76320aae45
Merge branch 'const_ret_val' into 'master'
...
Don't use `const` for objects returned by value.
See merge request OpenMW/openmw!1183
3 years ago
psi29a
a57b5674e5
Merge branch 'hash_actors' into 'master'
...
Replace std::map with std::unordered_map and use constant Ptr.mRef as a key
See merge request OpenMW/openmw!1129
3 years ago
psi29a
a0201feb97
Merge branch 'lua_tostring' into 'master'
...
Function LuaUtil::toString
See merge request OpenMW/openmw!1187
3 years ago
fredzio
d20730458d
Replace std::map with std::unordered_map for mActors and mObjects.
...
Use Ptr.mRef as a key instead of Ptr: it is constant for the lifetime of
the object.
3 years ago
fredzio
0bce6c09e1
Change projectile behaviour to be like in vanilla wrt. water plane:
...
- enchanted arrow explode upon hit the water plane
- non enchanted arrow disappear (or more accurately, they hit nothingness)
- enchanted arrow shot underwater explode immediately
- non enchanted arrow disappear immediately
Also, solve a bug that occured previously and could theoritically still happens where we use the last tested collision position for instead of the last registered hit:
Use the hit position as saved inside Projectile::hit() instead of the last position saved inside the callback.
If a projectile collides with several objects (bottom of the sea and water surface for instance), the last collision tested won't necessarily be the impact position as we have no control over the order in which the tests are performed.
3 years ago
jvoisin
d4e3575f1d
Don't use `const` for objects returned by value.
...
This prevents the usage of std::move semantics,
and makes clang-tidy sad.
3 years ago
unelsson
f876ff2c14
Clear temporary movement data at the end of the drag
3 years ago
unelsson
53d315c862
XYZ-locking, mouse wheel move fix
3 years ago
unelsson
23fe3d74ab
Use floats, not doubles
3 years ago
unelsson
840e7615f5
Store object origins and move difference
3 years ago
unelsson
0d511da615
Test of basic mouse-plane use
3 years ago
fredzio
d1a5bc207b
Iterate over mInactiveCells when unloading cells in TestCells / TestInteriorCells. Otherwise we dereference an invalid iterator after deactiveCell().
3 years ago
elsid
0daf6f5d0b
Merge branch 'comma' into 'master'
...
Don't use comma where there is no need to.
See merge request OpenMW/openmw!1179
3 years ago
Petr Mikheev
33d4d88447
Function LuaUtil::toString
3 years ago
Evil Eye
18f51e1026
Merge branch 'nonull' into 'master'
...
Don't pass a nullptr to a std::string constructor
See merge request OpenMW/openmw!1178
3 years ago
Evil Eye
06e1b17cc1
Merge branch 'unnecessary_copy' into 'master'
...
Dont copy-construct from a const-ref when used only as a const-ref
See merge request OpenMW/openmw!1184
3 years ago
jvoisin
db4fe11a44
Don't pass a nullptr to a std::string constructor
...
This is undefined behaviour.
3 years ago
jvoisin
deb2af6acc
Dont copy-construct from a const-ref when used only as a const-ref
...
This also makes clang-tiny a bit happier
3 years ago
jvoisin
a15cca5763
Use `reserve` on vectors for fixed loops
...
This is a bit useless, but has the merit of appeasing clang-tiday
3 years ago
jvoisin
a6b1e38eab
Don't use comma where there is no need to.
3 years ago
cc9cii
0a5571f19e
Disable editing for blocked records in both table and dialogue edit widget.
3 years ago
Evil Eye
b4486992f0
Allow Rieklings and Goblins to attack again
3 years ago
cc9cii
b0d5ca386d
Update original cell column and do not modify the refnum when moving a reference to another cell with 3D editing.
3 years ago
cc9cii
2eb210f31a
Partially undo commit 71be4cdd20
so that moved references retain the original refnum. This is consistent with vanilla CS's behaviour.
3 years ago
cc9cii
b2bd97f283
A different implementation to MR 1051 to fix Issue #6067 .
...
This MR doesn't delete the original record, but instead the original record is updated with the moved record when loading.
Issue #4752 is no longer addressed in this MR.
3 years ago
cc9cii
7264a10c07
Partially revert commit dab1a9e7fb
3 years ago
cc9cii
7227a83e60
Preserve "blocked" record flags when saving with OpenCS. This will help outputs of OpenCS to be used with vanilla Morrowind.
...
Sample use case: users are using the Morrowind Code Patch feature that allows modders to enable this flag to differentiate editor-made potions from player crafted potions for tooltips.
3 years ago
psi29a
66f028c4a1
Merge branch 'correctcommandimplementation' into 'master'
...
Don't do storage in constructors of the commands
See merge request OpenMW/openmw!1126
3 years ago
psi29a
d852b10227
Merge branch 'Map-door-markers-flicker-in-some-cells' into 'master'
...
Do not update doors markers at each frame, only when needed
Closes #6214
See merge request OpenMW/openmw!1168
3 years ago
psi29a
fff35dcb03
Merge branch 'Ignore-empty-pgrd' into 'master'
...
Do not store empty PGRD records. Should resolve Issue #6209 .
See merge request OpenMW/openmw!1121
3 years ago
psi29a
e8057d9fd1
Merge branch 'aipursue_path' into 'master'
...
Make AiPursue path destination to be as close as possible to target (#6211 )
Closes #6211
See merge request OpenMW/openmw!1154
3 years ago
psi29a
b585aad81e
Merge branch 'offset-bullet-debug' into 'master'
...
glPolygonOffset for Bullet debug geometry
See merge request OpenMW/openmw!684
3 years ago
Thunderforge
42ce22f568
Adding saveSettingInt() and loadSettingInt()
...
Convenience methods for saving and loading integer settings. Versions for QSpinBox and QComboBox are included. Right now, only simple settings are used for it; we have some additional settings that include validation that aren't using these new methods.
3 years ago
unelsson
de3497d291
Fix undo-redo crash
3 years ago
unelsson
890ce1eefb
Reverse action order for redo and undo
3 years ago
unelsson
0cfabd6f3b
Move mapToSource back to constructor
3 years ago
unelsson
b2fe591590
Don't do any storing in the constructor
3 years ago
unelsson
45549da0f5
For most commands, set mOld in redo, not in constructor
3 years ago
psi29a
716eebe616
Merge branch 'terrainselectioncrashfix' into 'openmw-47'
...
Fix terrain selection crash
See merge request OpenMW/openmw!1165
(cherry picked from commit ec4e3b04a7
)
b84e41bd
Avoid storing ref, dynamic cast worldspacewidget for safety
d62ddc00
Use QPointer to detect object existence, less verbose debug messages
cb42b528
Remove friend, make getEditMode public to allow editmode testing.
4b148180
Restucture code
08f7c73e
Fix text
3 years ago
psi29a
855f491196
Merge branch 'splintercell' into 'master'
...
Clean up text key extraction
See merge request OpenMW/openmw!1163
3 years ago
Alexei Dobrohotov
0922d0b105
Clean up text key extraction
3 years ago
Petr Mikheev
3771e523f1
More object bindings
3 years ago
Alexei Dobrohotov
31e70f2ecc
Merge branch 'minor_factorisation' into 'master'
...
Minor factorisation in apps/openmw/mwmechanics/actors.cpp
See merge request OpenMW/openmw!1143
3 years ago
cc9cii
28ad139464
Check if deleted, just in case.
3 years ago
psi29a
d09c807a40
Merge branch 'fixbadcast' into 'master'
...
Fix std::bad_cast
Closes #6217
See merge request OpenMW/openmw!1130
3 years ago