Andrei Kortunov
5382d38b9b
Merge branch 'hit_target_object' into 'master'
...
Unbreak targetted spell on objects (#5811 )
See merge request OpenMW/openmw!569
2021-01-28 14:09:45 +00:00
elsid
a3ab8dfbb4
Revert "Merge branch 'movement_fix2' into 'master'"
...
This reverts merge request !496
2021-01-28 12:48:19 +00:00
fredzio
23137d0c54
Revert a wrong change introduced in MR 546
...
A prerequisite to create physics objects for statics was to remove the
dependency on base node (since it doesn't yet exists) for object
position. It is still necessary for animation though.
Restore the basenode (and the associated FIXME) so that animated objects works properly.
2021-01-27 16:24:11 +01:00
Nelsson Huotari
83ee1cc582
fix xbase to baseanim
2021-01-27 13:41:05 +02:00
Nelsson Huotari
3194520dcd
Move base_anim settings to settings-default.cfg
2021-01-27 13:41:02 +02:00
Bret Curtis
b164f1aa17
Merge pull request #3023 from akortunov/grass_intsancing
...
Grass instancing
2021-01-27 12:21:24 +01:00
psi29a
699bd257ef
Merge branch 'camera_stats' into 'master'
...
Collect all available stats if OPENMW_OSG_STATS_FILE is set and point to a valid file.
See merge request OpenMW/openmw!526
2021-01-27 08:04:33 +00: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
fredzio
64475ebedb
Remove a brainfart from precise projectile handling: all non-actor
...
non-projectile objects were treated as ground.
2021-01-27 07:15:09 +01:00
Gleb Mazovetskiy
8737453498
cmake: Compiler-specific whole-archive macro
2021-01-26 19:00:55 +00:00
Gleb Mazovetskiy
99ba45a308
Optional static builds of OSG, MyGUI, Bullet
2021-01-26 19:00:55 +00:00
Andrei Kortunov
f40e227686
Remove redundant formatting changes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
b975f16e6b
Remove redundant check - groundcover is not present in the CellStore
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
8874e88ff1
Drop fading setting
2021-01-26 22:29:41 +04:00
Andrei Kortunov
1a6c06f7b5
Do not allow to set distance to non-positive values
2021-01-26 22:29:41 +04:00
Andrei Kortunov
859cd0fd0c
Do not use display lists for instanced meshes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
a09f03c850
Drop groundcover materials - they are not used
2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc
Implement instanced groundcover
2021-01-26 22:29:41 +04:00
madsbuvi
663e0a1055
Fix a race condition in loading screen.
2021-01-26 19:28:09 +01:00
Petr Mikheev
bc2cec86e9
Fix bug: NPCs doesn't move if the target is exactly above or exactly below.
2021-01-26 00:05:28 +01:00
psi29a
cadd1e7529
Merge branch 'daedric_fog' into 'master'
...
Don't nuke fog when bounds have changed
Closes #5469
See merge request OpenMW/openmw!522
2021-01-25 12:58:44 +00:00
psi29a
64b4472efa
Merge branch 'stand' into 'master'
...
Don't adjust actor position until all objects are loader (#5379 )
See merge request OpenMW/openmw!546
2021-01-25 12:12:43 +00:00
psi29a
c6f14cde20
Merge branch 'Show-level-multipliers-in-levelup-tooltip' into 'master'
...
Show level multipliers in levelup tooltip
Closes #5783
See merge request OpenMW/openmw!518
2021-01-25 10:01:39 +00:00
Cédric Mocquillon
3bb551a6f1
Show level multipliers in levelup tooltip
2021-01-25 10:01:39 +00:00
Evil Eye
59af819f97
Merge branch 'fix-mem-leak-2' into 'master'
...
Fix memory leak in MWInput
See merge request OpenMW/openmw!566
2021-01-24 16:05:30 +00:00
Gleb Mazovetskiy
fe815d3d8d
Fix memory leak in MWInput
...
mListener wasn't being cleaned up
2021-01-24 15:22:36 +00:00
Evil Eye
a2171875a0
Prevent nullptr access
2021-01-24 15:15:51 +01:00
fredzio
f031a191b8
Some actors are supposed to spawn on a static object that belong to an adjacent cell.
...
Since actors can be active in 3x3 grid around the player, we need to
first load all statics in a 5x5 grid around the player.
Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and physics objects of static
class.
2021-01-24 14:11:10 +01:00
fredzio
165c731492
Remove physics dependency on basenode
...
Necessary to be able to load physics objects from inactive cells.
2021-01-24 14:10:27 +01:00
psi29a
b28adafee4
Merge branch 'navcrash' into 'master'
...
Fix #5798
Closes #5798
See merge request OpenMW/openmw!554
2021-01-23 13:37:01 +00:00
Evil Eye
a401c517bf
Always unload height fields
...
loadCell always adds a height field, but unloadCell only removed it for
cells with height data. Reloading a cell overwrote the height field
added earlier (leading to its destruction) while the navigator retained
a reference to the now deleted collision shape, leading to a crash.
2021-01-23 00:56:46 +01:00
psi29a
0ec953380f
Merge branch 'opaque-character-preview-preprocessor' into 'master'
...
Always write opaque fragments instead of relying on blending being off for translucent RTT II: Daggerfall
Closes #5391
See merge request OpenMW/openmw!552
2021-01-22 10:33:16 +00:00
psi29a
d2c5de5211
Merge branch 'projectile_physics' into 'master'
...
Precise projectile physics (closes #4201 )
Closes #4201
See merge request OpenMW/openmw!550
2021-01-21 23:33:22 +00:00
fredzio
1f4c85520f
Use convexSweepTest for projectile movement to solve any
...
imprecision issue with projectile collision detection.
Simplify the mechanics: manage hits in one spot.
Give magic projectiles a collision shape similar in size to their visible
model.
Rename the 2 convex result callback to clearly state their purpose.
2021-01-21 20:36:33 +01:00
elsid
cc24f13b39
Remove duplicated sound_buffer entry
2021-01-21 13:08:50 +01:00
AnyOldName3
b6e92c9c6d
Use ShaderVisitor to skip translucent framebuffer specific stuff
2021-01-20 23:37:19 +00:00
AnyOldName3
8af8ad3840
Always write opaque fragments instead of relying on blending being off for translucent RTT
2021-01-20 01:17:16 +00:00
fredzio
e37e5d4d16
Don't run unstuck if there is no simulation running in async case.
...
In this case, the actor mPreviousPosition is not updated, so the actor
position is interpolated between an old (stucked) position and the new
(unstucked) position. The new position is most likely "stucked", so the
unstuck code strikes again, making the actor "vibrates".
That's exactly what the sync code path does, and it doesn't exhibit this
behavior.
2021-01-18 17:45:57 +01:00
psi29a
9eba086c34
Merge branch 'sound_buffer_pool_2' into 'master'
...
Separate sound buffer pool from sound manager
See merge request OpenMW/openmw!520
2021-01-17 12:11:11 +00:00
Bret Curtis
e68651e9a6
Merge pull request #3042 from akortunov/helpers
...
Refactoring pre-requisites for groundcover
2021-01-13 23:09:01 +01:00
Andrei Kortunov
0418e8e7a6
Add an API to get base wind speed (which is from openmw.cfg)
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
fd602e2c31
Merge branch 'viewdist' into 'master'
...
Downgrade FOV-dependent view distance factor to a recommendation
See merge request OpenMW/openmw!531
2021-01-12 19:51:21 +00:00
Bret Curtis
d944f703e8
Merge branch 'master' of gitlab.com:OpenMW/openmw
2021-01-12 19:58:56 +01:00
Bret Curtis
73740013a3
mResourceSystem initialization reorder
2021-01-12 19:58:46 +01:00
psi29a
abdc4cde95
Merge branch 'float' into 'master'
...
Allow all creatures to float to the water surface (#5790 , #5758 )
Closes #5758 and #5790
See merge request OpenMW/openmw!534
2021-01-12 18:45:10 +00:00
Alexei Dobrohotov
4638fc36b4
Allow all creatures to float to the water surface
2021-01-12 15:46:19 +03:00
psi29a
3903142152
Update apps/openmw/mwbase/environment.cpp
2021-01-12 12:05:17 +00: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
psi29a
29fdcb3fa1
Merge branch 'hardlanding' into 'master'
...
Init mJumpState based on saved fallheight (#5739 )
See merge request OpenMW/openmw!532
2021-01-11 20:46:42 +00:00
fredzio
3087ce9c70
Use saved fallheight to determine a character's jump state.
...
The jump state initial state is "none", and it is set after physics simulation.
If a save is done just above the ground, the character may land before
the first run of the simulation, effectively cancelling the effect of
falling.
2021-01-11 18:38:20 +01:00
Alexei Dobrohotov
7be7af13d7
Downgrade FOV-dependent view distance factor to a recommendation
2021-01-11 06:53:23 +03:00
psi29a
6863c5a68f
Merge branch 'raii' into 'master'
...
Make all physics object manage their own resources.
See merge request OpenMW/openmw!527
2021-01-10 20:50:55 +00:00
Evil Eye
1ab4683dce
Tweak follow distance to be more like the original
2021-01-10 16:29:32 +01:00
fredzio
d015f17a6c
Make all physics object manage their own resources
...
Use smart pointer for heightfields and their members.
Move collision object addition inside of Object's ctor, as for Actors and HeightFields
2021-01-10 14:56:35 +01:00
elsid
8b7f3fe908
Merge branch 'nodeadlock' into 'master'
...
Avoid a rare but possible deadlock around mCollisionWorldMutex.
See merge request OpenMW/openmw!525
2021-01-10 13:41:31 +00:00
Bret Curtis
b3f3b29bbe
Merge pull request #3039 from akortunov/screenshotmanager
...
Move screenshots handling to the separate class
2021-01-10 12:59:45 +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
Evil Eye
e737bd00fa
Merge branch 'unused_param' into 'master'
...
Remove never used parameter from CharacterController::update()
See merge request OpenMW/openmw!523
2021-01-10 10:58:28 +00:00
Alexei Dobrohotov
c3a952c133
Merge branch 'dorsbien' into 'master'
...
Don't update magic effects when unequipping items to equip something else
Closes #5687
See merge request OpenMW/openmw!509
2021-01-10 08:04:07 +00:00
Evil Eye
a257567b80
Don't update magic effects when unequipping items to equip something else
2021-01-10 08:04:06 +00:00
fredzio
60f66f5e29
Remove never used parameter from CharacterController:update()
2021-01-09 21:28:27 +01:00
fredzio
9bc687e209
Avoid a rare but possible deadlock around mCollisionWorldMutex.
...
What happened is that the last handle to an Actor shared_ptr was a
promoted weak_ptr. When the shared_ptr goes out of scope, the Actor dtor
is invoked. That involves removing the Actor collision object after
exclusively locking mCollisionWorldMutex. In this case, the lock was
already held in the outter scope of the promoted weak_ptr.
Reduce the scope of the mCollisionWorldMutex to never encompass the
lifetime of a promoted weak_ptr.
2021-01-09 21:10:29 +01:00
unknown
564a0d7d55
Don't nuke fog when bounds have changed
2021-01-09 18:25:46 +01:00
Andrei Kortunov
874348fb46
Remove redundant code
2021-01-09 19:19:38 +04:00
Mads Buvik Sandvei
a2d8a0b61a
engine.cpp typos
2021-01-09 14:44:15 +00:00
Andrei Kortunov
80ee1b55ea
Protect assignment operator from this == &src case
2021-01-09 18:28:26 +04:00
Andrei Kortunov
33da0af1d1
Use explicit calls for virtual methods in constructors
2021-01-09 18:25:48 +04:00
elsid
a6aba83741
Remove redundant SoundManager::lookupSound and loadSound
2021-01-09 14:11:49 +01:00
elsid
e4cce88142
Replace std::tie by structured binding
2021-01-09 14:09:27 +01:00
elsid
90c8e77e2c
Remove redundant default Sound_Buffer fields initialization
2021-01-09 14:08:54 +01:00
elsid
24f8a2db27
Use perfect forwarding in Sound_Buffer ctor
2021-01-09 14:07:30 +01:00
Andrei Kortunov
a80ee7a76a
Avoid possible memory leak in the mInterMessageBoxe field
2021-01-09 14:43:00 +04: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
c1512b8b6c
Convert loop to condition
2021-01-09 14:18:38 +04:00
Andrei Kortunov
56666c60d4
Remove dead code
2021-01-09 14:17:59 +04:00
Andrei Kortunov
7fc4c9f3f6
Avoid dead code
2021-01-09 13:52:01 +04:00
Andrei Kortunov
799bd3379c
Move screenshots handling to the separate class
2021-01-09 10:44:33 +04:00
elsid
944033db4e
Separate sound buffer pool from sound manager
2021-01-09 02:45:21 +01:00
AnyOldName3
2d61db555b
Merge branch 'osg_log' into 'master'
...
Split long osg log messages into lines.
See merge request OpenMW/openmw!519
2021-01-09 01:05:53 +00:00
Petr Mikheev
7d551b0cfd
Split long osg log messages into lines.
2021-01-08 23:21:39 +01:00
psi29a
cbce3ebb79
Merge branch 'stanky_fetcher' into 'master'
...
Consider a path completed if it was non-empty
Closes #5773
See merge request OpenMW/openmw!508
2021-01-08 21:47:38 +00:00
Evil Eye
2a583e2337
consider empty paths as not constructed
2021-01-08 17:24:13 +01:00
fredzio
5215ffd964
The debug drawer rely on Bullet to determines the vertices of collision
...
shapes. It doesn't work in the case of spheres (used by projectiles):
resulting shape is malformed. It can also leads to this error which
makes the debug drawer non-working till game restart:
CullVisitor::apply(Geode&) detected NaN,
depth=nan, center=(nan nan nan),
matrix={
-0.265814 -0.0639702 0.9619 0
0.964024 -0.0176387 0.265228 0
-4.29769e-09 0.997796 0.0663574 0
18178.6 -3550.91 42154.4 1
}
Avoid this issue by using osg::Sphere
While here, remove an unused function. We don't use Bullet's solver so
we never have any contact points (in Bullet parlance).
2021-01-01 17:47:12 +01:00
Evil Eye
57c92673bc
Consider a path completed if it was non-empty
2020-12-30 16:09:12 +01:00
unknown
3bf641d3ce
Show mesh origin
2020-12-29 21:45:59 +01:00
Alexei Dobrohotov
396667f801
Fix weather particle fading
...
Update rain particle system setup
2020-12-29 15:46:45 +03:00
Evil Eye
e46472442a
Switch torches to shields for hostile NPCs
2020-12-29 01:40:30 +00:00
Andrei Kortunov
e80d34268c
Fix defines names
2020-12-28 21:11:58 +04:00
Alexei Dobrohotov
a7cbe0b497
Merge pull request #3036 from akortunov/tooltip
...
Enhance level-up tooltip
2020-12-28 18:21:32 +03:00
Andrei Kortunov
66fee6dccb
Enhance level-up tooltip
2020-12-28 12:13:09 +04:00
Andrei Kortunov
6a12c2b58b
Fix GCC build warnings
2020-12-28 12:06:41 +04:00
Alexei Dobrohotov
45f4e69a19
Merge branch 'skipanim' into 'master'
...
Don't move characters if their animation can't move them
Closes #5593
See merge request OpenMW/openmw!490
2020-12-28 01:25:22 +00: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
Alexei Dobrohotov
ddbfa5410d
Merge branch 'fixboats' into 'master'
...
Apply waterwalking even when bypassing physics simulation
See merge request OpenMW/openmw!500
2020-12-27 22:06:07 +00:00
fredzio
ebb564ad22
call moveObject() after applying waterwalking
...
This unbreak abot's boat mods: they're continually teleporting
the boats (who is an actor with waterwalking effect). As such, the
physics simulation was never run and the boat never went to sea level.
2020-12-27 17:31:55 +01:00
Evil Eye
7d8727b98e
Merge branch 'books' into 'master'
...
Only ignore plain text after the last EOL tag (#5627 )
Closes #5627
See merge request OpenMW/openmw!492
2020-12-27 14:25:57 +00:00
psi29a
a094269c46
Merge branch 'guardsguards' into 'master'
...
Don't consider a path completed unless we're close
Closes #5736
See merge request OpenMW/openmw!498
2020-12-26 23:10:53 +00:00