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
Nelsson Huotari
70087e16fe
Disable dialogue info table sorting
2021-01-11 20:49:35 +02: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
psi29a
acfd2cfd90
Merge branch 'dialogclonefix' into 'master'
...
[OpenMW-CS] Fix cloning in info records
See merge request OpenMW/openmw!524
2021-01-11 14:13:53 +00:00
Nelsson Huotari
93b1b444f2
Optimize CreateCommand and CloneCommand configuration
2021-01-11 12:53:34 +02: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
Nelsson Huotari
7196ad7455
Implement an override-value when cloning, use when cloning info records
2021-01-10 21:23:52 +02: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
Nelsson Huotari
3045d20a97
Make sure that vector isn't empty, just in case
2021-01-10 01:25:40 +02:00
Nelsson Huotari
5f1d3e0e2f
Use the Topic ID of the cloned target from topicinfos
2021-01-10 01:06:23 +02:00
psi29a
f7d7186c39
Merge branch 'instanceselectiontools' into 'master'
...
[OpenMW-CS] Cube and sphere instance selection
See merge request OpenMW/openmw!485
2021-01-09 21:35:07 +00:00
Nelsson Huotari
313e895912
[OpenMW-CS] Cube and sphere instance selection
2021-01-09 21:35:07 +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
Andrei Kortunov
ad101de733
Merge declaration and initialization
2021-01-09 22:58:54 +04:00
unknown
564a0d7d55
Don't nuke fog when bounds have changed
2021-01-09 18:25:46 +01:00
Andrei Kortunov
1930f8f37d
Fix copy-paste error
2021-01-09 20:03:12 +04:00
Andrei Kortunov
50e4600b16
Reduce code duplication
2021-01-09 20:00:51 +04: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
c9b885ffd4
Avoid possible null dereferencing
2021-01-09 14:24:04 +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
8283ec6cad
Do not use & for boolean arguments
2021-01-09 14:03:48 +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
Andrei Kortunov
c5a36ad440
Do not cast enums to booleans
2021-01-09 13:19:41 +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
AnyOldName3
4ed3252001
Check for EXT_gpu_shader4 CPU-side
...
Mesa lies and always defines GL_EXT_gpu_shader4 even when the extension
isn't present.
2021-01-07 18:13:51 +00:00
psi29a
dc82cb61f4
Merge branch 'nativeshapesdebug' into 'master'
...
Unbreak physics debugger with projectiles' spherical shapes.
See merge request OpenMW/openmw!489
2021-01-04 09:07:28 +00: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
AnyOldName3
f2eed5594a
Don't use A2C when MSAA is off
2021-01-02 18:27:46 +00:00
AnyOldName3
c75d7ceada
Ensure alpha test is off by default
2021-01-02 02:50:19 +00: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
fredzio
dbdd397716
Remove deadcode.
2021-01-01 16:54:45 +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
AnyOldName3
54853380cd
Enable multisampling in RTTs to support A2C
2020-12-28 22:39:09 +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
AnyOldName3
5e004356a2
Merge remote-tracking branch 'upstream/master' into alpha-meddling
2020-12-27 02:48:42 +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
psi29a
3afa4e5869
Merge branch 'feels_good_guar' into 'master'
...
Make followers keep a distance dependant on the fattest party member
Closes #5423
See merge request OpenMW/openmw!499
2020-12-26 23:09:41 +00:00
AnyOldName3
8f4b856b44
Initial A2C implementation
2020-12-26 22:45:53 +00:00
Evil Eye
7cac7fa870
Make followers keep a distance dependant on the fattest party member
2020-12-25 23:57:01 +01:00
Alexei Dobrohotov
ad41546648
Merge branch 'fix_swimming' into 'master'
...
Fix #5743 where NPCs and creatures underwater may rotate to the upwards direction
Closes #5743
See merge request OpenMW/openmw!494
2020-12-25 21:33:35 +00:00
Evil Eye
d2a28d915a
Don't consider a path completed unless we're close
2020-12-25 15:58:11 +01:00
Evil Eye
1f1755ae48
Add version checks
2020-12-25 13:05:41 +01:00
Evil Eye
bdcbb412a5
Don't restore focus to hidden/unrelated buttons
2020-12-25 13:03:09 +01:00
Petr Mikheev
8b3088a9e5
Fix #5743
2020-12-24 11:54:21 +01:00
Petr Mikheev
51d63a4152
Fix minor bug: mSmoothedSpeed is not updating in first person mode, that leads to an incorrect value after switching to first person mode and back.
...
Additional refactoring: move `setSideMovementAngle` from camera.cpp to character.cpp as this logic shouldn't belong to Camera.
2020-12-24 03:39:59 +01:00
Alexei Dobrohotov
fd77ef6b01
Only ignore plain text after the last EOL tag ( #5627 )
2020-12-23 03:33:34 +03:00
Alexei Dobrohotov
32cc14981e
Don't move characters if their animation can't move them
2020-12-22 20:40:52 +03:00
psi29a
4f1361b5ea
Merge branch 'paralyze' into 'master'
...
Fix paralyze for swimming and levitating actors
Closes #5758
See merge request OpenMW/openmw!488
2020-12-22 10:49:24 +00:00
Alexei Dobrohotov
22476281da
Fix paralyze for swimming actors
2020-12-22 08:03:51 +03:00
Alexei Dobrohotov
218597b13d
Fix paralyze for levitating actors
2020-12-22 06:33:19 +03:00
Alexei Dobrohotov
f5af09aed9
Fix AI sequence looping code (bug #5706 )
2020-12-22 05:56:59 +03:00
psi29a
3e87c35005
Merge branch 'dialogue' into 'master'
...
Don't regenerate the topics list unconditionally
See merge request OpenMW/openmw!459
2020-12-21 22:52:38 +00:00
Alexei Dobrohotov
e9a8636d18
Merge branch 'restore_absolute_position_handling' into 'master'
...
Restore pre-async handling of absolute actors positionning
See merge request OpenMW/openmw!486
2020-12-20 22:52:35 +00:00
Alexei Dobrohotov
ce36dd8a52
Merge branch 'misc_cleanup' into 'master'
...
Small cleanup
See merge request OpenMW/openmw!482
2020-12-20 19:10:06 +00:00
fredzio
5bd921fa3a
Restore pre-async handling of absolute actors positionning
...
One of the issue since the introduction of async physics is the quirky
handling of scripted moves. Previous attempt to account for them was
based on detecting changes in actor position while the physics thread is
running. To this end, semantics of Actor::updatePosition() (which is
responsible for set the absolute position of an actor in the world) was
toned down to merely store the desired position, with the physics system
actually responsible for moving the actor. For the cases were complete
override of the physics simulation was needed, I introduced
Actor::resetPosition(), which actually have same semantics as
original updatePosition(). This in turn introduced a loads of new bugs
when the weakened semantics broke key assumptions inside the engine
(spawning, summoning, teleport, etc).
Instead of tracking them down, count on the newly introduced support for
object relative movements in the engine (World::moveObjectBy) to
register relative movements and restore original handling of absolute positionning.
Changes are relatively small:
- move resetPosition() content into updatePosition()
- call updatePosition() everywhere it was called before
- remove all added calls to the now non-existing resetPosition()
tldr; ditch last month worth of bug introduction and eradication and redo
it properly
2020-12-20 19:23:09 +01:00
fredzio
33eb09f534
Remove unused headers
2020-12-20 18:28:21 +01:00
Alexei Dobrohotov
6b5e614b1a
Merge branch 'dont_cache_ptr' into 'master'
...
Always use latest actor's Ptr
See merge request OpenMW/openmw!481
2020-12-19 17:15:43 +00:00
fredzio
e5f0c7f117
Fix a typo introduced in 08e73a09ec
...
It closes #5752
2020-12-19 16:54:50 +01:00
fredzio
93a12fe388
Avoid dynamic_cast when possible.
2020-12-18 23:47:01 +01:00
fredzio
8e084dea2e
Don't cache Ptr, it can be updated while the simulation is running.
2020-12-18 22:22:37 +01:00
fredzio
58297ffbf4
Move stats update into their own function.
2020-12-18 21:18:04 +01:00
fredzio
24a8b8c66a
Remove redundant call to resetPosition(). adjustPosition() takes care of
...
it,
2020-12-18 21:16:48 +01:00
Mads Buvik Sandvei
eec2ba3623
Loading screen initialdrawcallback 4th time's the charm
2020-12-18 18:15:14 +00:00
AnyOldName3
2ecd00b6db
Don't accidentally enable alpha testing for all shadow casting
2020-12-18 16:31:21 +00:00
fredzio
4e7c9b6696
Embed physics simulation results inside of actor class.
...
This gives finer control over reseting positions (switch off tcl is no
longer glitchy) and solve most of the erroneous usage of stale World::Ptr
indicated by:
"Error in frame: moveTo: object is not in this cell"
2020-12-18 12:54:02 +01:00
psi29a
d01d5745c6
Merge branch 'relative_move' into 'master'
...
Relative translation for scripts
See merge request OpenMW/openmw!477
2020-12-18 09:23:18 +00:00
Mads Buvik Sandvei
ea8f98b339
Wait for initialDrawCallback to finish before removing it
2020-12-18 08:48:39 +00: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
AnyOldName3
a080071588
Set default state sensibly
2020-12-18 00:02:51 +00:00
psi29a
96a87b582c
Merge branch 'loadingScreen_initialdrawcallback' into 'master'
...
Fix for !472 for older versions of OSG
See merge request OpenMW/openmw!474
(cherry picked from commit 35e25d79b9a6c76807084be5ca2584c4fd9b9c35)
4447dd41 osg versions
06f4d63b Preserve callback in older osg version
2020-12-17 23:37:21 +00:00
Alexei Dobrohotov
8db2ba2b38
Merge pull request #3032 from akortunov/gtest
...
Mark mock methods as overrides (requires GTest 1.10)
2020-12-18 01:46:42 +03:00
Mads Buvik Sandvei
bc961a13f5
avoid redundant calls to removeInitialDrawCallback
2020-12-16 22:03:16 +01:00
Mads Buvik Sandvei
640420eaaa
No longer delete and recreate CopyFramebufferToTextureCallback, remove oneshot functionality. Instead just remove the callback after the traversals. Use addInitialDrawCallback instead of setInitialDrawCallback to avoid messing with existing callbacks.
2020-12-16 21:46:52 +01:00
fredzio
259d522800
When doing a ray cast to the next projectile position, ignore collisions
...
that occurs with the projectile own collision object. Otherwise a magic
bolt can explode "spontaneously".
2020-12-15 21:34:58 +01:00
psi29a
884b434ee0
Merge branch 'fixfriendlyfire' into 'master'
...
Fix projectiles friendly fire (#5744 )
See merge request OpenMW/openmw!466
2020-12-15 15:45:43 +00: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
psi29a
bc6bcda58f
Merge branch 'wizard' into 'master'
...
Wizard: fix "file is already opened" warning
See merge request OpenMW/openmw!465
2020-12-15 15:35:47 +00:00
Nelsson Huotari
8b2bf12e8f
Use bip01 for root bone name
2020-12-15 13:51:49 +02:00
fredzio
b39437dfb6
Don't allow projectiles to stand still when they hit an ally.
...
When an NPC fire a projectile, it should affect only its targeted actor.
To this end, after a hit is detected the target is checked against the
list of AI targets and reactivated if necessary.
Problem occurs when the hit occurs as a result of a friendly actor going
into the projectile (detected in ClosestNotMeConvexResultCallback):
while the projectile is inside the friend's collision box, it is
deactivated, just to be immediately reactivated. Effectively, the
projectile does nothing until the actor moves out.
Add a check inside the ClosestNotMeConvexResultCallback before declaring
a hit.
Since the necessary data is not safely accessible from the async thread,
maintain a copy inside the Projectile class.
2020-12-14 22:23:01 +01:00
Alexei Dobrohotov
8fd45d85ec
Unify NiGeometry/NiGeometryData handling
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
ab789e37e1
Wizard: fix "file is already opened" warning
2020-12-14 03:45:03 +03:00
Alexei Dobrohotov
201999c4a9
Make sure adjustPosition() is safe to call for any actor
2020-12-14 03:01:26 +03:00
Alexei Dobrohotov
817ac4cfbd
Don't regenerate the topics list unconditionally
2020-12-12 23:07:00 +03:00
fredzio
a314f196eb
Unconditionally call actor->resetPosition in adjustPosition.
...
Revert broken change that would force adjust all actors in cell upon
loading. That break floating corpses (and probably others things).
2020-12-12 18:17:26 +01:00
Alexei Dobrohotov
15291f15d3
Make actor collision box components a struct
2020-12-11 20:07:59 +03:00
psi29a
11eff02a1d
Merge branch 'Show-more-information-about-level-on-menu' into 'master'
...
Show more information about level on menu
See merge request OpenMW/openmw!437
2020-12-11 12:04:15 +00:00
psi29a
9a35c5815e
Merge branch 'nofallfloor' into 'master'
...
Update physics object position after spawning.
See merge request OpenMW/openmw!449
2020-12-11 11:28:29 +00:00
psi29a
789d034432
Merge branch 'skirts' into 'master'
...
Editor: Properly reserve body parts for skirts (bug #5731 )
Closes #5731
See merge request OpenMW/openmw!452
2020-12-11 11:09:32 +00:00
Frederic Chardon
460e5abb55
Update physics object position after spawning.
2020-12-11 08:57:08 +01:00
Frederic Chardon
899b8422fa
explicitely use a reference, auto can't infer it and make a copy
2020-12-11 08:56:54 +01:00
Alexei Dobrohotov
32601e0ae4
Properly reserve body parts for skirts (bug #5731 )
2020-12-11 10:39:57 +03:00
Coleman Smith
3b9db41346
removing unneeded variable
2020-12-10 17:03:10 -08:00
psi29a
d77f122289
Merge branch 'gl-5199-improve-scene-colors' into 'master'
...
[OpenMW-CS] Issue #5199 : Improve Scene Colors
See merge request OpenMW/openmw!442
2020-12-10 21:36:46 +00:00
Coleman Smith
842ea9d6ed
simplifying a bit
...
- attaching gradient camera directly to the main camera
- using Vec4ub
2020-12-10 21:36:46 +00:00
psi29a
c8fa8cfe74
Merge branch 'herbalmenu' into 'master'
...
Add graphic herbalism to the launcher
Closes #5730
See merge request OpenMW/openmw!448
2020-12-10 21:31:53 +00:00
psi29a
7156b11dbc
be explicit about narrowing to resolve: error: type 'btScalar *' (aka 'float *') cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing]
2020-12-10 21:30:05 +00:00
Evil Eye
525292b184
Add graphic herbalism to the launcher
2020-12-10 19:02:38 +01:00
psi29a
686692519c
Merge branch 'fix-tests' into 'master'
...
Use correct variable types when loading config for tests
See merge request OpenMW/openmw!446
2020-12-09 21:25:30 +00:00
AnyOldName3
15f03ae375
Merge branch 'logging2' into 'master'
...
Print '--version' and '--help' messages without timestamps
Closes #2686
See merge request OpenMW/openmw!444
2020-12-09 16:27:54 +00:00
psi29a
0e5af74a2f
Merge branch 'masterindexloadfix' into 'master'
...
[OpenMW-CS] Load master index from refId to mContentFile
See merge request OpenMW/openmw!445
2020-12-09 10:12:10 +00:00
AnyOldName3
fd4a62ce35
Use correct variable types when loading config for tests
2020-12-09 00:32:01 +00:00
Petr Mikheev
49c6e50c31
Print '--version' and '--help' messages without timestamps
2020-12-08 23:14:49 +01:00
Nelsson Huotari
61a4a0807b
Load master index in refId to mContentFile, keep master index also in mIndex
2020-12-09 00:10:58 +02:00
psi29a
afaacedf67
Merge branch 'placeatmecrash' into 'master'
...
Don't crash the game when placing a non-actor
See merge request OpenMW/openmw!443
2020-12-08 17:37:01 +00:00
Evil Eye
39ac0cbb4a
Don't crash the game when placing a non-actor
2020-12-08 17:47:25 +01:00
Chris Djali
21de3fa7e8
Merge pull request #3033 from akortunov/main_messages
...
Use a logging system instead of cout for a couple of missing messages
2020-12-08 15:49:19 +00:00
psi29a
fd64aacf7d
Merge branch 'cliherbalism' into 'master'
...
Add a setting to disable graphical herbalism
See merge request OpenMW/openmw!440
2020-12-08 10:02:15 +00:00
fredzio
4fbe1ed12c
Ignore caster collision shape. Sometimes the magic bolt get launched
...
inside too near its caster.
2020-12-08 09:06:34 +01:00
fredzio
7e85235220
Projectile to projectile collision
2020-12-08 09:06:34 +01:00
fredzio
66fe3b0d38
Modify projectile collision to work with async physics
2020-12-08 09:06:33 +01:00
Andrei Kortunov
dc7b48e92e
Generate physics collisions for projectiles (bug #3372 )
...
Remove redundant now mHit field
2020-12-08 09:05:38 +01:00
Andrei Kortunov
242dd8d496
Use a logging system instead of cout for a couple of missing messages
2020-12-08 11:06:30 +04:00
Evil Eye
275b9aea4d
rename setting
2020-12-07 21:56:41 +01:00
Evil Eye
e62fff5f2e
Add a setting to disable graphical herbalism
2020-12-07 19:04:32 +01:00
Andrei Kortunov
807367ca3f
Mark mock methods as overrides (requires GTest 1.10)
2020-12-07 19:09:58 +04:00
CedricMocquillon
6bfdf0e57f
Add more information on mouse over level
2020-12-07 14:57:25 +01:00
psi29a
c2933721c6
Merge branch 'explodespell' into 'master'
...
Make AI cast self-targeted spells at the ground (bug #5695 )
Closes #5695
See merge request OpenMW/openmw!426
2020-12-07 12:35:58 +00:00
psi29a
a3dfdde9ef
Merge branch 'move_actors_into_scene' into 'master'
...
Move actors into the scene after a teleport
See merge request OpenMW/openmw!438
2020-12-07 10:19:32 +00:00
psi29a
c742c15f6d
Merge branch 'autogoesbrr' into 'master'
...
Use range based for loops and auto
See merge request OpenMW/openmw!400
2020-12-07 09:12:50 +00:00
psi29a
b22418d053
Merge branch 'fix_spawn' into 'master'
...
Fix spawn #5724
See merge request OpenMW/openmw!439
2020-12-07 08:20:35 +00:00
fredzio
c6c02a6f16
Remove useless code. ipos is already initialized with the correct
...
values.
2020-12-06 13:26:43 +01:00
fredzio
08e73a09ec
Make the code more compact by mean of std::min / max and ternary
...
operator.
2020-12-06 13:24:42 +01:00
fredzio
b79f6ac808
Force reset position of actor after snapping to the ground. Otherwise
...
the interpolation calculation would kick in and make the actor goes upward if the
spawn point is higher than summoner or downward if lower. The actor
would then either jump or fall through terrain.
2020-12-06 13:20:37 +01:00
Petr Mikheev
5734551ff3
Add time to logs. Redirect OSG log to OpenMW log.
2020-12-05 13:46:02 +01:00
fredzio
7843dad35d
Don't let the actor "nowhere" after a teleport but move them in their
...
place.
This solve the problem where after loading, an empty frame was rendered
because the player is "nowhere".
2020-12-05 01:09:43 +01:00
Evil Eye
078de86e60
Use range based for loops and auto
2020-12-04 18:34:51 +01:00
Alexei Dobrohotov
84e1a29700
Make AI cast self-targeted spells at the ground (bug #5695 )
2020-12-04 00:41:21 +03:00
fredzio
5a4872393a
Rework actor position reset. While solving the issue with invalid
...
position being used under heavy load, I introduced a regression that
prevented the position to be updated in case of teleport.
Move the logic in its own function and decide in PhysicsSystem whether a
reset is needed.
2020-12-03 12:57:57 +01:00
psi29a
6f0b90e606
documented that currently underwater shadows are mutually exclusive to refraction scale; to be fixed in follow up issue #5709 ; documentation fixes
2020-12-02 23:03:10 +00:00
Nelsson Huotari
b0e3bd6ff9
Fix crash caused by QStatusBar
2020-11-29 23:25:34 +02:00
Bret Curtis
16b34c2863
Merge pull request #3029 from akortunov/replace_zeroes
...
Replace zeroes and nulls by nullptrs
2020-11-29 14:50:01 +01:00
psi29a
73ca333c4b
Merge branch 'actorpositionagain' into 'master'
...
Make the physics simulation more robust when overloaded
See merge request OpenMW/openmw!429
2020-11-29 13:48:35 +00:00
Andrei Kortunov
8084a336b5
Replace zeroes and nulls by nullptrs
2020-11-29 11:14:07 +04:00
fredzio
ea2ba27084
Move the moment when the actor origin is saved before simulation so to
...
be sure the simulation is over. Otherwise, if the simulation is too slow
the position is wrong, and the actors would jump back and forth between
old and new position instead of actually moving.
2020-11-28 21:36:45 +01:00
psi29a
dc1bd8ec29
Merge branch 'osgAnimation_basics' into 'master'
...
Collada animation support
See merge request OpenMW/openmw!421
2020-11-28 16:55:26 +00:00
psi29a
96e22bd44e
Merge branch 'fastforwardpos' into 'master'
...
Discard physics simulation results after fast forward
See merge request OpenMW/openmw!423
(cherry picked from commit ff2d7695698341ef059c75707aa092cef48deea4)
03a37433 In case of time fast forward (resting, jail), force reset of positions
2020-11-23 20:15:44 +00:00
AnyOldName3
f8c791fde3
Merge branch 'physics_worker_profile' into 'master'
...
Add the async physics worker to the profiler overlay.
See merge request OpenMW/openmw!422
2020-11-21 00:18:44 +00:00
Frederic Chardon
9aba55a21a
Add the async physics worker to the profiler overlay.
2020-11-20 21:17:47 +01:00
jefetienne
bc6f46465f
Add to changelog, authors. Move variable declaration inside block
2020-11-19 10:34:15 -05:00
jefetienne
2413de38b5
Extend spell/item search to search by magic effect name
2020-11-19 10:34:15 -05:00
Nelsson Huotari
6e77ad1f6a
OSG-Collada animation support
2020-11-19 01:11:56 +02:00
Nelsson Huotari
f78a5d795c
Separate keyframes logic to provide basis for osgAnimation integration.
2020-11-18 22:48:47 +02:00
psi29a
c69b407f8c
Merge branch 'close_the_window_before_you_destroy_the_world' into 'master'
...
Don't unload the world before closing containers
Closes #5689
See merge request OpenMW/openmw!419
2020-11-18 18:19:46 +00:00
Evil Eye
c126d8801f
Fix #5689
2020-11-18 17:28:09 +01:00
AnyOldName3
06d1e70aac
Make Bullet DebugDrawer's default state match the physics system
2020-11-18 15:34:21 +00:00
Frederic Chardon
bb5213670c
Use bigger hammer to set Actor's position after teleporting. Otherwise traceDown() would use old collision object transform and gives incorrect results, making the Actor "fall" in the new position.
2020-11-16 11:35:50 +01:00
fredzio
d64ed6cf53
Get rid of the StandingActorsMap. Just embed the necessary info into
...
Actor class.
2020-11-15 01:58:21 +01:00
psi29a
5362146d24
Merge branch 'interleaved_movements' into 'master'
...
Unbreak lifts & conveyors in Sotha Sil Expanded
See merge request OpenMW/openmw!410
2020-11-15 00:20:24 +00:00
fredzio
e5fa457fe7
Properly account for interleaved move of actors.
...
Before this change, if an actor position was changed while the physics
simulation was running, the simulation result would be discarded. It is
fine in case of one off event such as teleport, but in the case of
scripts making use of this functionality to make lifts or conveyor (such
as Sotha Sil Expanded mod) it broke actor movement.
To alleviate this issue, at the end of the simulation, the position of the Actor
in the world is compared to the position it had at the beginning of the
simulation. A difference indicate a force move occured. In this case,
the Actor mPosition and mPreviousPosition are translated by the difference of position.
Since the Actor position will be really set while the next simulation runs, we
save it in the mNextPosition field.
2020-11-14 20:39:16 +01:00
Alexei Dobrohotov
df9667e923
Read NIF bounding volume data correctly
2020-11-14 14:16:29 +03:00
Alexei Dobrohotov
8a6d3d1b4f
Minor fixes
...
Fix extra semicolon
Disable collision avoidance if AI is disabled
2020-11-13 22:53:12 +03:00
AnyOldName3
1e0df23d14
Merge branch 'shadows-bin' into 'master'
...
Use a custom renderbin to avoid pointless OpenGL state switches
See merge request OpenMW/openmw!402
2020-11-13 16:29:41 +00:00
AnyOldName3
72f7e6a702
Handle all shadow alpha uniforms in shadowsbin
2020-11-12 00:26:30 +00:00
psi29a
ed8342ebc9
Merge branch 'niffile' into 'master'
...
Remove NIFFile settings manager dependency
See merge request OpenMW/openmw!398
2020-11-10 09:03:10 +00:00
Alexei Dobrohotov
c857588ee9
Remove NIFFile settings manager dependency
2020-11-09 14:24:48 +03:00
Alexei Dobrohotov
b523574090
Remove shader visitor settings manager dependency
2020-11-09 13:59:59 +03:00
Andrei Kortunov
0e971dccf0
Rework cure effects
2020-11-04 13:51:10 +04:00
Alexei Dobrohotov
37cce328ca
Merge branch 'basicmath' into 'master'
...
Compute the rotation normal relative to the door axe, not the world.
See merge request OpenMW/openmw!391
2020-11-03 14:34:25 +00:00
Bret Curtis
6efa7eea5a
Merge pull request #3025 from akortunov/iterator
...
Do not remove active effects in the active effects loop
2020-11-02 17:12:45 +01:00
Andrei Kortunov
c1d56d94c4
Do not remove active effects in loop (bug #3789 )
2020-11-02 17:51:36 +04:00
Frederic Chardon
ecd10a731e
Compute the rotation normal relative to the door axe, not the world.
2020-11-02 14:12:42 +01:00
fredzio
18e38d8810
Do not block a door when it turns away.
2020-11-01 23:01:18 +01:00
psi29a
ba3aad31c1
Merge branch 'hitdebug' into 'master'
...
Visualize hits in the debug overlay
See merge request OpenMW/openmw!379
2020-11-01 10:20:14 +00:00
psi29a
7ee7041399
Merge branch 'stretch' into 'master'
...
Put a stretch menu background checkbox into the launcher (#5672 )
Closes #5672
See merge request OpenMW/openmw!387
2020-11-01 09:26:19 +00:00
Alexei Dobrohotov
f49bf028b9
Put a stretch menu background checkbox into the launcher ( #5672 )
2020-11-01 02:14:25 +03:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
fredzio
4876969153
Use the PhysicsSystem::movementQueue instead of a serie of
...
setPosition(getPosition() + diff) to move actor in scripts.
With background physics, this is very slightly off with the collision
object position.
When the script run long enough (a few dozen frames for instance),
the accumulated error becomes too big. It make actors fall through lifts floors.
2020-10-30 23:59:09 +01:00
Evil Eye
7065282127
Save and load container records; fixes #5668
2020-10-29 13:55:24 +01:00
Andrei Kortunov
64ba81ecf2
Fix some issues, found by CoverityScan
2020-10-28 18:02:31 +04:00
psi29a
8f68f08aee
Merge branch 'moonmoon' into 'master'
...
Change moon phase to an enum class
See merge request OpenMW/openmw!381
2020-10-27 19:44:30 +00:00
Evil Eye
3bf5247c0b
remove forward declaration
2020-10-27 19:23:07 +01:00
Alexei Dobrohotov
9763995892
Fix regression #5666
2020-10-27 18:08:14 +03:00
psi29a
74dfc09e2d
Merge branch 'removeitem' into 'master'
...
Fix remove item regression
Closes #5663
See merge request OpenMW/openmw!380
2020-10-26 23:13:35 +00:00
Evil Eye
2c4cafa41a
Change moon phase to an enum class
2020-10-26 22:16:31 +01:00
Evil Eye
0512a574e8
Fix remove item regression
2020-10-26 20:13:24 +01:00
psi29a
f6e4c7cb42
Merge branch 'regionsounds' into 'master'
...
Fix region sounds
See merge request OpenMW/openmw!370
2020-10-26 16:29:45 +00:00
fredzio
e8c0a7bec0
Visualie projectile hits
2020-10-26 13:53:36 +01:00
Frederic Chardon
574ccbf7bd
Visualize hand to hand hits
2020-10-26 13:48:15 +01:00
fredzio
435b2e37f8
Allow to display collision points in the debug viewer
2020-10-26 13:42:46 +01:00
Bret Curtis
4032b754e4
set minimal boost version; remove #ifdef boost version checks
2020-10-25 22:43:10 +01:00
unknown
eae9eafb8c
Merge branch 'master' of gitlab.com:OpenMW/openmw into regionsounds
2020-10-25 14:13:14 +01:00
unknown
eebb320916
Wait for the previous sound to stop
2020-10-25 12:20:14 +01:00
Bret Curtis
f6bead88a9
purge boost/optional.hpp headers
2020-10-25 00:58:44 +02:00
Bret Curtis
62b0781f7d
use std::optional instead of boost::optional
2020-10-25 00:33:41 +02:00
psi29a
957a1425d1
Merge branch 'cleanup_1' into 'master'
...
Cleanup 1
See merge request OpenMW/openmw!365
2020-10-24 18:43:03 +00:00
unknown
1ce296aa7f
Use fallback values for region sounds and fix probability
2020-10-24 18:54:46 +02:00
Bret Curtis
259f7fcf12
Merge pull request #3020 from unelsson/strippluginindex_cs
...
Strip the plugin index when looking for deleted refs.
2020-10-23 21:51:53 +02:00
Nelsson Huotari
b1ea9f6a5b
Strip the plugin index from refid completely
2020-10-23 20:21:34 +03:00
psi29a
6534bc9b74
Merge branch 'config-fixes' into 'master'
...
Config fixes
See merge request OpenMW/openmw!367
2020-10-23 16:40:18 +00:00
AnyOldName3
538314b03a
Make path settings have path type
2020-10-23 15:34:41 +01:00
Alexei Dobrohotov
129bd51672
Add compressed BSA support to bsatool
2020-10-23 14:04:21 +03:00
AnyOldName3
8b28b6e55e
Compose BSA, context and script blacklist lists
...
These would only take their value from the highest priority source, so
specifying `openmw --content anExtraEsp.esp` would override all the
content files in the user cfg file, and the user cfg file would override
any in the global/local one.
2020-10-23 01:58:43 +01:00
AnyOldName3
cf81f1bbb7
Make composing variables compose in the expected order
2020-10-23 01:41:28 +01:00
Bret Curtis
5a824d0333
components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues
2020-10-22 23:57:53 +02:00
AnyOldName3
651a5a27f6
Fix inconsistent indentation
...
This has been irritating me for years.
2020-10-22 21:44:47 +01:00
Bret Curtis
43614e2204
Merge pull request #3021 from akortunov/warnfix
...
Do not use deprecated Qt functions
2020-10-22 17:17:13 +02:00
psi29a
fa1765816f
Merge branch 'somecpp17' into 'master'
...
C++17 cosmetics
See merge request OpenMW/openmw!357
2020-10-22 13:06:15 +00:00
Andrei Kortunov
46a1950b0e
Do not use deprecated Qt functions
2020-10-22 15:50:47 +04:00
fredzio
a19db73eca
Fix bad rebase
2020-10-22 09:24:56 +02:00
fredzio
1357bba0a0
Use some C++17 where it makes the code more readable
...
Also replace boost::optional
2020-10-22 07:15:16 +02:00
fredzio
4fc5b6f6f4
Sort headers
2020-10-22 07:15:16 +02:00
fredzio
212b293803
Use same parameter name in definition and declaration
2020-10-22 07:15:16 +02:00
Alexei Dobrohotov
f1b7cd5404
Don't reset temporarily hidden container window
2020-10-22 02:12:31 +03:00
psi29a
4ae504970f
Merge branch 'blocking' into 'master'
...
Fix lower body blocking animation priority (bug #5656 )
Closes #5656
See merge request OpenMW/openmw!359
2020-10-21 22:32:24 +00:00
psi29a
7f59751946
Merge branch 'standing' into 'master'
...
Fix standing actors logic
See merge request OpenMW/openmw!360
2020-10-21 22:31:01 +00:00