elsid
2dc6e755b2
Remove redundant update virtual functions
2022-05-06 23:44:04 +02:00
elsid
79676aee15
Make Environment a storage of referencing pointers instead of owned
...
Engine controls lifetime of managers therefore it should own them. Environment
is only access provider.
This allows to avoid redundant virtual calls and also some functions from
managers base classes can be removed if they are used only by Engine.
2022-05-06 23:44:01 +02:00
Alexei Kotov
6aaf2c33bf
Merge branch 'refactor/5336-1' into 'master'
...
#5336 (1): Refactor World::updatePlayer in to Player::update
See merge request OpenMW/openmw!1828
2022-05-05 06:46:28 +00:00
ζeh Matt
2bbd0ba976
#5336 : Refactor World::updatePlayer in to Player::update
2022-05-05 00:57:15 +03:00
Evil Eye
a64979e25d
Replace empty std::string assignments
2022-05-04 22:33:39 +02:00
ζeh Matt
51a84aaef8
Include random state record in count of saved records
2022-04-21 11:51:10 +03:00
Evil Eye
61ea678a96
Implement ignored records
2022-04-16 16:28:39 +02:00
elsid
b09570692e
Use ifstream for ESMReader
...
ESMReader reads the whole file, there is no need in the ConstrainedFileStream.
2022-04-15 02:58:57 +02:00
uramer
5aa8e475a4
Merge branch 'rendering_raycast' into 'master'
...
Rendering raycasts in Lua
See merge request OpenMW/openmw!1768
2022-04-12 19:15:28 +00:00
Petr Mikheev
51845e9553
Rendering raycasts in Lua
2022-04-11 23:36:54 +02:00
elsid
39da3bfef8
Ignore player when checking whether AiTravel destination is occupied by other actor
2022-04-11 19:30:54 +02:00
elsid
db44f91fd5
Remove redundant include from esm3/esmreader.hpp
2022-04-10 22:16:32 +02:00
psi29a
9275b3c08f
Merge branch 'make_shared' into 'master'
...
Use std::make_shared instead of new
See merge request OpenMW/openmw!1753
2022-04-08 21:35:55 +00:00
elsid
4509b05bc8
Use std::make_shared instead of new
...
make_shared allocates single storage for ref counter and the object.
std::shared_ptr<T>(new T) allocates 2 storages.
2022-04-08 22:50:09 +02:00
elsid
df092b558b
Replace shared_ptr by unique_ptr
2022-04-08 22:42:22 +02:00
elsid
bbfdb347bd
Skip load cell ref when there is no need
...
Primarily to avoid temporary allocations by ESMReader::getHString.
2022-04-08 19:16:38 +02:00
elsid
ec3674b40a
Use unique_ptr instead of shared_ptr
...
for MWWorld::Action, ProjectileManager and ESSImport::Converter.
shared_ptr has additional cost of reference counter and requires additional
allocation when constructed as shared_ptr<T>(new T).
2022-04-08 16:12:36 +02:00
psi29a
320e86156e
Merge branch 'registered_class' into 'master'
...
Use static object to register classes
See merge request OpenMW/openmw!1746
2022-04-08 08:36:24 +00:00
elsid
5156ee94be
Store static id key in lower case
2022-04-08 01:22:48 +02:00
Petr Mikheev
3af8ea5dfc
Update Lua bindings for the camera
2022-04-06 21:55:05 +02:00
elsid
dc20e799e1
Use static object to register classes
2022-04-06 16:49:25 +02:00
Matt
49e21e121a
Revert "Merge branch 'refactor/6677-2' into 'master'"
...
This reverts merge request !1733
2022-04-04 17:09:52 +00:00
psi29a
ca77ae336f
Merge branch 'refactor/6677-2' into 'master'
...
Introduce IndexedVector
See merge request OpenMW/openmw!1733
2022-04-04 13:56:20 +00:00
Matt
21e4c10fa9
Introduce IndexedVector
2022-04-04 13:56:19 +00:00
elsid
6e0d660dd5
Check whether model is empty before trying to insert object
2022-04-03 17:38:33 +00:00
elsid
3878a12ed3
Delay cell grid change until scene update
...
This allows proper profiling. Changing cell grid is not a part of physics
system, it's a part of world system.
2022-04-01 21:46:20 +02:00
psi29a
6d55317d57
Merge branch 'refactor/prng-2' into 'master'
...
Save random state and refactor usage of generators
See merge request OpenMW/openmw!1715
2022-03-23 09:50:54 +00:00
ζeh Matt
f8f3bb2421
Use std::minstd_rand and split serialization from save/load
2022-03-21 17:49:42 +02:00
ζeh Matt
0611a8c3a7
Start new game with specified seed in options
2022-03-21 17:49:42 +02:00
ζeh Matt
151770ccf1
Separate global vs world rng functions and use custom prng
2022-03-21 17:49:42 +02:00
ζeh Matt
08fae7be6e
Pass the prng from world where appropriate
2022-03-21 17:49:42 +02:00
ζeh Matt
b502dc12f0
Add prng to World instance and serialize state in Save
2022-03-21 17:49:42 +02:00
Petr Mikheev
1b1e81b90e
Lua bindings for ESM::Door and ESM::Weapon records
2022-03-20 15:39:48 +00:00
Evil Eye
d7d1a85143
Restore dialogue autocompletion in the console
2022-03-19 12:02:26 +01:00
Petr Mikheev
d251c4e2a1
[Lua] Change behavior of obj.type
2022-03-15 23:35:36 +01:00
ζeh Matt
d83a381f79
Refactor and rename some things around Misc::Rng
2022-03-06 17:28:28 +02:00
Evil Eye
f9da792386
Force a scale update when changing view modes
2022-02-15 17:25:07 +01:00
Evil Eye
649c2f8286
Fix stats not working right for saves started before version 17
2022-02-14 18:38:37 +01:00
Evil Eye
fdfde836fe
Expect recent saves to store the modified value
2022-02-12 01:03:12 +01:00
Evil Eye
dc495a685a
Remove a member variable that doesn't get saved and remove fortify maximum health code
2022-02-10 20:32:59 +01:00
elsid
832ab103cb
Filter out unchanged animated objects for navigator update
2022-02-03 22:09:52 +01:00
elsid
05b54cbfb8
Cull navmesh objects by scene bounds
...
If object is too big iteration over all tiles covering it can take too much
time. Limit bounds to a square around a player position to cover only tiles
that will be present in navmesh based on max tiles number option.
Each object is associated with a set of tiles its present in. Culling can
reduce this set but it has to be update when bounds change position. Do this
in TileCachedRecastMeshManager::setBounds updating the set and adding/removing
objects to the corresponding CachedRecastMeshManagers.
2022-02-03 22:09:37 +01:00
elsid
783411fa1f
Use new player position when updating navigator on cell loading
2022-02-03 02:44:04 +01:00
Petr Mikheev
47c37e5849
Lua command object:activateBy(actor)
and handler onActivate
2022-02-01 23:42:56 +00:00
uramer
c31dedb89c
Implement Yaw, Pitch and Use (attack / cast spell) in Lua self.controls
2022-02-01 18:47:20 +00:00
elsid
7ea5aa250b
Revert "Cull navmesh objects by scene bounds"
...
This reverts commit b0ef20c30348e52c38464777db9a33ecf693f877.
2022-01-30 21:43:23 +01:00
psi29a
6f7a067e0c
Merge branch 'esmrename' into 'master'
...
esm refactor work
See merge request OpenMW/openmw!1575
2022-01-27 17:52:42 +00:00
jvoisin
4ae1ea1ee3
Merge branch 'refidref' into 'master'
...
Remove `getRefIdRef` because it is the same as `getRefId`.
See merge request OpenMW/openmw!1585
2022-01-25 16:23:51 +00:00
Evil Eye
783505011c
Merge branch 'fix_deprecated_warning' into 'master'
...
Remove usage of deprecated std::iterator
See merge request OpenMW/openmw!1589
2022-01-25 15:32:22 +00:00
elsid
ecc654a369
Limit and filter navmesh input ( #5858 )
2022-01-25 14:06:53 +00:00