David Cernat
da3316daf8
Add OpenMW commits up to 4 Jan 2021
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/main.cpp
# apps/openmw/mwmechanics/npcstats.hpp
# apps/openmw/mwphysics/actor.cpp
# apps/openmw/mwphysics/mtphysics.hpp
# components/CMakeLists.txt
2021-01-05 07:25:31 +02:00
Alexei Dobrohotov
22476281da
Fix paralyze for swimming actors
2020-12-22 08:03:51 +03:00
fredzio
7bae6691b6
Introduce World::moveObjectBy() function to translate an object relatively to
...
its current position.
Use it in relevant MWScripts opcode (move and moveworld).
Remove the fragile detection of scripted translation from PhysicsTaskScheduler.
No user visible change, just a more robust mechanism.
2020-12-18 08:40:38 +01:00
David Cernat
4620adc662
Add OpenMW commits up to 30 Nov 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwphysics/actor.cpp
2020-12-01 01:15:39 +02:00
Andrei Kortunov
8084a336b5
Replace zeroes and nulls by nullptrs
2020-11-29 11:14:07 +04:00
Frederic Chardon
9aba55a21a
Add the async physics worker to the profiler overlay.
2020-11-20 21:17:47 +01:00
David Cernat
7f435ceeac
Add OpenMW commits up to 1 Nov 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/main.cpp
# apps/openmw/mwclass/container.hpp
# apps/openmw/mwclass/creature.hpp
# apps/openmw/mwclass/npc.hpp
# apps/openmw/mwdialogue/dialoguemanagerimp.hpp
# apps/openmw/mwdialogue/journalimp.hpp
# apps/openmw/mwgui/container.cpp
# apps/openmw/mwgui/dialogue.hpp
# apps/openmw/mwgui/mainmenu.cpp
# apps/openmw/mwgui/windowmanagerimp.hpp
# apps/openmw/mwmechanics/aiactivate.hpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
# apps/openmw/mwscript/containerextensions.cpp
# apps/openmw/mwscript/interpretercontext.hpp
# components/CMakeLists.txt
2020-11-01 23:17:59 +02:00
psi29a
09373a757d
Merge branch 'radioactive' into 'master'
...
Container base record mutations
See merge request OpenMW/openmw!353
(cherry picked from commit 8b33765dd414680f0074b3e115b52b291b4cb7cb)
275908a0 mutate container base records
16fca11d add changelog entry
2020-10-20 16:56:22 +00:00
David Cernat
68837aaf4a
Add OpenMW commits up to 15 Oct 2020
...
# Conflicts:
# .travis.yml
# CI/before_script.linux.sh
# CMakeLists.txt
# apps/openmw/mwgui/containeritemmodel.cpp
# apps/openmw/mwgui/tradewindow.cpp
# apps/openmw/mwphysics/actor.cpp
# apps/openmw/mwworld/actionteleport.cpp
# apps/openmw/mwworld/containerstore.cpp
2020-10-15 19:51:39 +02:00
fredzio
3c2504b442
Process movement queue in one or several background threads
...
Before movement calculation, the main thread prepare a
vector of ActorFrameData, which contains all data necessary to perform
the simulation, and feed it to the solver. At the same time it fetches
the result from the previous background simulation, which in turn is
used by the game mechanics.
Other functions of the physics system (weapon hit for instance)
interrupt the background simulation, with some exceptions described
below.
The number of threads is controlled by the numeric setting
[Physics]
async num threads
In case 'async num threads' > 1 and Bullet doesn't support multiple threads,
1 async thread will be used. 0 means synchronous solver.
Additional settings (will be silently switched off if async num threads = 0)
[Physics]
defer aabb update
Update AABBs of actors and objects in the background thread(s). It is not an especially
costly operation, but it needs exclusive access to the collision world, which blocks
other operations. Since AABB needs to be updated for collision detection, one can queue
them to defer update before start of the movement solver. Extensive tests on as much
as one installation (mine) show no drawback having that switched on.
[Physics]
lineofsight keep inactive cache
Control for how long (how many frames) the line of sight (LOS) request will be kept updated.
When a request for LOS is made for the first time, the background threads are stopped to
service it. From now on, the LOS will be refreshed preemptively as part of the background
routine until it is not required for lineofsight keep inactive cache frames. This mean
that subsequent request will not interrupt the background computation.
2020-10-15 06:41:35 +02:00
David Cernat
0eedf8fd9f
Add OpenMW commits up to 30 Sep 2020
...
# Conflicts:
# apps/openmw/mwmechanics/aicombat.cpp
# apps/openmw/mwmechanics/character.cpp
# apps/openmw/mwmechanics/summoning.cpp
# components/CMakeLists.txt
2020-09-30 13:32:15 +02:00
Evil Eye
fe82cd9f92
Don't search containers
2020-09-15 21:13:18 +02:00
David Cernat
80af0ce6a7
Add OpenMW commits up to 29 Aug 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwmechanics/character.cpp
2020-08-29 16:15:22 +02:00
David Cernat
89da1f39fb
[Client] Implement stable cell resets
2020-08-16 23:56:01 +02:00
David Cernat
fc26e9bbc1
[Client] Remove urm's broken (by his own admission) cell reset attempt
2020-08-11 16:12:49 +02:00
Petr Mikheev
0de6650add
Add RayCastingInterface
2020-08-06 22:03:33 +02:00
Petr Mikheev
694e0b5906
Refactoring. Simplification of camera interface.
2020-08-06 00:43:33 +02:00
Petr Mikheev
ed3426cf2f
Move third person camera collision check from World::updatePlayer() to Camera::updatePosition()
2020-08-06 00:43:33 +02:00
David Cernat
baa9446cd1
Add OpenMW commits up to 4 Aug 2020
2020-08-04 17:41:01 +02:00
Perry Hugh
4bf24a955e
Restore Gamepad Zooming
2020-08-04 06:04:59 +00:00
David Cernat
ff10aa816b
Add OpenMW commits up to 25 Jul 2020
...
# Conflicts:
# .travis.yml
2020-07-25 19:44:01 +02:00
Petr Mikheev
4d206d2c67
Improved preview mode
2020-07-17 20:35:52 +02:00
David Cernat
e5b1843089
Add OpenMW commits up to 11 Jun 2020
...
# Conflicts:
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwmechanics/activespells.cpp
# apps/openmw/mwmechanics/aiactivate.cpp
# apps/openmw/mwmechanics/aiactivate.hpp
# apps/openmw/mwmechanics/creaturestats.cpp
# apps/openmw/mwscript/aiextensions.cpp
# apps/openmw/mwscript/statsextensions.cpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
2020-06-11 13:21:58 +03:00
David Cernat
36a2308acd
Add OpenMW commits up to 30 May 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwbase/windowmanager.hpp
# apps/openmw/mwgui/windowmanagerimp.hpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/actors.hpp
# apps/openmw/mwscript/interpretercontext.cpp
2020-06-09 17:50:26 +03:00
David Cernat
62df188fd4
Add OpenMW commits up to 16 May 2020
...
# Conflicts:
# CI/before_script.linux.sh
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwinput/inputmanagerimp.cpp
# apps/openmw/mwscript/globalscripts.cpp
# apps/openmw/mwscript/interpretercontext.cpp
# apps/openmw/mwworld/cellstore.cpp
# apps/openmw/mwworld/cellstore.hpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
# components/interpreter/context.hpp
2020-06-06 22:38:28 +03:00
Andrei Kortunov
81805b7263
Introduce a separate class to control world date and time
2020-06-05 12:07:32 +04:00
Bret Curtis
2eb9d4ad4e
Merge pull request #2878 from Assumeru/mutate-ai
...
Mutate base records when editing AI settings (#2798 )
2020-06-03 15:09:40 +02:00
Andrei Kortunov
c0e62e9529
Refactor list of variables in the WorldManager
2020-06-03 11:21:34 +04:00
Evil Eye
4d7947d27c
Mutate base records when editing AI settings ( #2798 )
2020-06-02 21:59:37 +02:00
elsid
69df6098e5
Report frame number, number of actors and objects to stats
2020-05-22 17:39:18 +02:00
unknown
3b4782959e
Allow targeting non-unique actors with StartScript (bug #2311 )
2020-05-10 14:57:06 +02:00
David Cernat
43e7df6df8
Add OpenMW commits up to 11 Mar 2020
2020-03-11 22:17:17 +02:00
David Cernat
a13cef9913
Merge branch '0.7.0reset' of https://github.com/uramer/openmw into 0.7.1
...
# Conflicts:
# apps/openmw-mp/Script/Functions/Worldstate.cpp
# apps/openmw-mp/Script/Functions/Worldstate.hpp
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwmp/CellController.cpp
# apps/openmw/mwworld/cellstore.cpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
2020-02-11 15:41:38 +02:00
elsid
4a0c056489
Do not wander to occupied area by other actor
2020-02-10 22:29:54 +01:00
elsid
85414e2353
Check for line of sight for wander destination
2020-02-10 22:29:54 +01:00
David Cernat
a58f09fd6c
Add OpenMW commits up to 2 Jan 2020
...
# Conflicts:
# apps/openmw/mwmechanics/enchanting.cpp
# apps/openmw/mwworld/scene.cpp
2020-01-02 22:09:54 +02:00
Andrei Kortunov
24ce242941
Implement TestCells (feature #5219 )
2019-12-22 11:13:42 +04:00
David Cernat
9d6f3fdd09
Add OpenMW commits up to 1 Dec 2019
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwscript/aiextensions.cpp
# apps/openmw/mwscript/statsextensions.cpp
2019-12-01 23:52:42 +02:00
elsid
3cfd5fca4e
Rotate door object using direct rotation order once
...
Instead of rotating using inverse and then applying the direct rotation.
To properly update object in navigator.
2019-11-30 14:09:00 +01:00
David Cernat
0c98c5d09e
Add OpenMW commits up to 19 Nov 2019
...
# Conflicts:
# apps/openmw/mwmechanics/aipursue.cpp
# apps/openmw/mwmechanics/summoning.cpp
2019-11-19 17:16:48 +02:00
Andrei Kortunov
6861d9d5e5
Merge pull request #2510 from elsid/ai_open_door
...
Open door when it is on the way to a next path point (bug #5073 )
2019-11-17 21:21:22 +04:00
David Cernat
bde9f7b817
Add OpenMW commits up to 20 Oct 2019
...
# Conflicts:
# apps/openmw/mwgui/recharge.cpp
# apps/openmw/mwrender/globalmap.cpp
# apps/openmw/mwrender/globalmap.hpp
# apps/openmw/mwworld/inventorystore.cpp
2019-10-29 22:26:35 +02:00
Andrei Kortunov
c51aba0b13
Recharge items outside of player's inventory (bug #4077 )
2019-10-07 22:59:43 +04:00
David Cernat
4a34666c59
Add OpenMW commits up to 7 Oct 2019
...
# Conflicts:
# apps/openmw/mwmechanics/aiactivate.cpp
2019-10-07 08:19:21 +03:00
David Cernat
0b85829e38
[Client] Make it possible to unload Cells & clear CellStores from World
2019-09-28 13:09:03 +03:00
David Cernat
339428872e
[Client] Fix infinite loop in CellController
...
Previously, using CellController::getCellStore() to get an unloaded CellStore would make its references get loaded in the process, with the CellStore's loadRefs() then running updateMergedRefs(), which in turn – before getting as far as setting the CellStore's state to State_Loaded – would call CellController::hasLocalAuthority() on its accompanying ESM::Cell, which would then run CellController::isActiveWorldCell(), which would then run CellController::getCellStore() to get the CellStore again, which – still being marked as unloaded – would run the whole loop again... and again.
2019-09-23 21:18:38 +03:00
Andrei Kortunov
a4d196f33f
Force view change when using Force1stPerson and Force3rdPerson commands (bug #5168 )
2019-09-19 21:48:43 +04:00
elsid
209e33f5ce
Open door when it is on the way to a next path point
2019-09-15 21:16:00 +02:00
David Cernat
ca67587b89
Add OpenMW commits up to 5 Sep 2019
...
# Conflicts:
# apps/openmw/mwgui/container.cpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwworld/worldimp.hpp
2019-09-05 21:41:50 +03:00
Roman Siromakha
41ad23ebdc
Revert "[WIP] Open door when it is on the way to a next path point (bug #5073 )"
2019-08-27 20:55:03 +02:00