jvoisin
7deb6a6ffd
Use const references when possible in for loops
...
No need for useless copies.
4 years ago
jvoisin
c1e3869f25
Remove an unused struct
4 years ago
elsid
1e2aae8095
Use stable sort+unique to collect RefIDs for ESMStore records counting
...
The idea is to avoid std::map lookup for each CellRef. Instead generate a
sequence of added and removed RefNums into a vector then order them by RefNum
using a stable sort that preserves relative order of elements with the same
RefNum. RefIDs are stored in a different vector to avoid std::string move ctor
calls when swapping elements while sorting. Reversed iteration over added and
removed RefNums for each unique RefNum is an equivalent to what map-based
algorithm produces. The main benefit from sorting a vector is a data locality
that means less cache misses for each access. Reduces ESMStore::countRecords
perf cycles by 25%.
4 years ago
elsid
9938af2289
Use unordered_map for ref count
...
Reduces ESMStore::countRecords time by 8%.
4 years ago
elsid
6248dc72cb
Convert to lower case only when needed
4 years ago
elsid
f2188d2533
Reduce temporary allocations on ESM loading
...
By moving objects instead of copying when possible.
4 years ago
Bret Curtis
8a315b01ae
Merge pull request #3089 from xyzz/fix-journalbooks-ub
...
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
4 years ago
Ilya Zhuravlev
13f060623f
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
4 years ago
jvoisin
690d85d0e9
Don't use at() instead [] when length is checked/known
4 years ago
Andrei Kortunov
b63f53f5bb
Disable shield animation when we launch a torch one (bug #6043 )
4 years ago
AnyOldName3
5d83de189a
Merge branch 'insert_or_assign' into 'master'
...
Use insert_or_assign() instead of hand rolled version.
See merge request OpenMW/openmw!862
4 years ago
fredzio
fb344d27e0
Use insert_or_assign() instead of hand rolled version.
4 years ago
elsid
59f89d22f8
Apply min distance only for not present tiles
...
To avoid waiting when navmesh update is triggered by transformed object for
already present tiles.
4 years ago
Bret Curtis
66a527c3de
Merge pull request #3075 from akortunov/warnfix
...
Fix MSVC's C4244 and C4267 warnings
4 years ago
psi29a
fd89582e0c
Merge branch 'navmesh_wait' into 'master'
...
Wait until navmesh is generated within given distance around player (#5500 )
Closes #5500
See merge request OpenMW/openmw!819
4 years ago
Andrei Kortunov
963e1b8b3f
Fix MSVC's C4244 warnings
4 years ago
Andrei Kortunov
49a744b65a
Make groundcover to use rendering distance in units instead of cells
4 years ago
psi29a
f7b8c817f8
Merge branch 'performance-faster-string-find' into 'master'
...
Fixing performance-faster-string-find issues
See merge request OpenMW/openmw!842
4 years ago
Thunderforge
339d347aea
Fixing performance-faster-string-find issues
...
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html ).
4 years ago
Bret Curtis
08059247b8
Merge pull request #3081 from akortunov/master
...
Skip hidden nodes for ObjectPaging
4 years ago
psi29a
13fd0e11ff
Merge branch 'no_time_to_talk' into 'master'
...
Don't stop and turn to the player while sneaking or jumping
Closes #6016
See merge request OpenMW/openmw!838
4 years ago
AnyOldName3
09f39b29f0
Load defaults.bin instead of settings-default.cfg. Do not decode yet.
4 years ago
AnyOldName3
92325976e9
Update documentation to refer to defaults.bin
4 years ago
AnyOldName3
0d737a3501
Create defaults.bin at configure time
4 years ago
Evil Eye
c5aa3d4f77
Don't stop and turn to the player while sneaking or jumping
4 years ago
Evil Eye
ffd84502f9
Remove unimplemented method declaration
4 years ago
Andrei Kortunov
132fedf290
Analyze only used LOD levels in ObjectPaging
4 years ago
Andrei Kortunov
a939cb6692
Skip hidden nodes for ObjectPaging
4 years ago
Frederic Chardon
caf382c19f
Merge branch 'barrier' into 'master'
...
Do not store callback inside Misc::Barrier
See merge request OpenMW/openmw!821
4 years ago
David Cernat
1f3a17eff7
[Client] Remove pointless declaration of DedicatedPlayer as struct
...
This seems to have been a typo left over from Koncord's early work on the project.
4 years ago
David Cernat
e00ee1425a
[Client] Reload DedicatedActor ptrs when setting their active spells
...
This makes the spells' visual effects appear correctly.
4 years ago
psi29a
9b017ef04d
Merge branch 'internal_includes_openmw' into 'master'
...
Clean up some internal includes of the openmw component
See merge request OpenMW/openmw!796
4 years ago
Andrei Kortunov
a0582caa26
Fix uninitialized variable
4 years ago
David Cernat
ea6d5c68ae
Add OpenMW commits up to 6 May 2021
...
# Conflicts:
# CMakeLists.txt
# components/CMakeLists.txt
4 years ago
elsid
00de80c884
Merge branch 'deadcode' into 'master'
...
GC some unused code, simplify some other
See merge request OpenMW/openmw!820
4 years ago
fredzio
e99b61d362
Simplify the code
4 years ago
elsid
626e032931
Do not store callback inside Misc::Barrier
...
The only wait method can be provided with it so pass it as a template
parameter there.
4 years ago
fredzio
00de540a31
Remove unused function.
4 years ago
elsid
7a51d0db18
Wait until navmesh is generated within given distance around player
...
Add a setting to change this distance.
To prevent situations when there is not enough navmesh generated and actors
can't find path correctly.
4 years ago
elsid
f169f8e6f0
Wait until navmesh is generated for interior cells
...
Add special loading progress bar.
It should be fast enough to not keep loading screen for noticably long but
will provide better pathfinding for actors inside interior cells.
4 years ago
psi29a
b8128d09f9
Merge branch 'enchanted-item-selected-fix' into 'master'
...
Fix for enchanted items being removed on item equip cycling when they are re-equipped
See merge request OpenMW/openmw!714
4 years ago
psi29a
9eb876cc17
Merge branch 'read_me' into 'master'
...
Allow activation of inventory items
Closes #5991
See merge request OpenMW/openmw!788
4 years ago
psi29a
6ac4dfbeb7
Merge branch '9001st_time_the_charm' into 'master'
...
Rework again scripted movements
See merge request OpenMW/openmw!799
4 years ago
David Cernat
a3f304107b
Add OpenMW commits up to 2 May 2021
...
# Conflicts:
# components/CMakeLists.txt
4 years ago
jvoisin
d45184a730
Sprinkle some const-ref to avoid unnecessary copies
4 years ago
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
...
Rework warnings settings
4 years ago
fredzio
4fa0972b2d
Tone down actor's skip simulation flag to an optional skip collision
...
detection flag.
4 years ago
Evil Eye
bd45449f9d
Allow activation of inventory items
4 years ago
jvoisin
998cc97a4f
And done!
4 years ago
jvoisin
be371ccd9f
An another pass
4 years ago
jvoisin
ee2446d5c4
Trim even more
4 years ago
jvoisin
04edb1c817
Trim down some internal includes
4 years ago
Alexei Dobrohotov
e3bb45fd61
Merge branch 'minor_aicombat' into 'master'
...
Minor optimization in aicombat.cpp
See merge request OpenMW/openmw!737
(cherry picked from commit f1d19035cccfff2523faad0d4e4d96cd3ddae2e6)
bbbfc520 Minor optimization in aicombat.cpp
237b34a6 Fix style
a14911cb Fix indentation
4 years ago
jvoisin
4c96644f8d
Use a char instead of a string in find() where possible
...
This was done via PVS Studio ( https://pvs-studio.com ),
and should provide a super-duper-marginal performance boost \o/
4 years ago
elsid
e1d955d92b
Remove noexcept specifier from CreatureCustomData move ctor
...
C++17 doesn't allow to declare defaulted move ctor with not matching
exception specification to the calculated one:
/Users/eddie/Downloads/BUILD/openmw-master/apps/openmw/mwclass/creature.cpp:63:9: error:
exception specification of explicitly defaulted move constructor does not
match the calculated one
CreatureCustomData(CreatureCustomData&& other) noexcept = default;
^
http://wg21.link/p1286r2 makes this possible in C++20 and newer compilers
already have it working even with -std=c++17 but older onces give an error.
4 years ago
elsid
ca7add0624
Add move constructor to MWMechanics::Spells
4 years ago
elsid
46e34c500c
Use algorithms to add/remove listener to SpellList
4 years ago
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
4 years ago
Andrei Kortunov
faad18b7f9
Merge pull request #3072 from akortunov/warnfix
...
Fix node masks signed/unsigned mismatch
4 years ago
David Cernat
7690f3c90e
[Client] Don't apply spell effects unilaterally on DedicatedActors
4 years ago
Andrei Kortunov
b7b85bb713
Disable controllers for found sheath meshes (bug #5975 )
4 years ago
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
4 years ago
Bret Curtis
50d6cd2a34
Merge pull request #3070 from akortunov/coverity
...
Fix an another portion of Coverity warnings
4 years ago
David Cernat
bf0a42fdad
[General] Implement ActorSpellsActive packet, part 1
...
The packet can now set the active spells of DedicatedActors.
4 years ago
Andrei Kortunov
d10399e083
Cast double constant to float explicitely
4 years ago
Andrei Kortunov
7d5c5f8a24
Do not assign negative values to unsigned variables
4 years ago
Andrei Kortunov
651ad11ad8
Do not leave variables without initialization, even in execution paths where they are unused
4 years ago
Andrei Kortunov
9647b670e4
Do not declare unused variables
4 years ago
Andrei Kortunov
0cadc97fb3
Fix double -> float conversions
4 years ago
Bret Curtis
befa3f587f
Merge pull request #3068 from akortunov/master
...
Clean up MSVC warnings
4 years ago
AnyOldName3
ce3ed28403
Control stomping via settings.
4 years ago
Alexei Dobrohotov
b29e797b27
Merge branch 'seventh_time_is_the_charm' into 'master'
...
Unbreak again NPC teleport
See merge request OpenMW/openmw!760
4 years ago
Petr Mikheev
5fe10e8e7f
Merge branch 'fix-headtracking' into 'master'
...
Fix headtracking while invisible
See merge request OpenMW/openmw!743
4 years ago
Jacob Turnbull
f49b9e3806
Fix headtracking while invisible
4 years ago
fredzio
36bb2d5f15
An actor needs not be in active cell. As such we can't use
...
PhysicsSystem::getActor() to determine that a ptr is not actor.
4 years ago
Andrei Kortunov
987b231fdd
Fix an another portion of Coverity warnings
4 years ago
Andrei Kortunov
f308dde254
Clean up MSVC warnings
4 years ago
Andrei Kortunov
57b501ad13
Merge pull request #3067 from akortunov/master
...
Limit pointers cache size to avoid possible bad_alloc errors
4 years ago
David Cernat
6766206a76
[Client] Add check for local player when sending active spell removal
4 years ago
psi29a
d0883f9a0d
Merge branch 'light_settings_tweak' into 'master'
...
Lighting patch
Closes #5957 and #5959
See merge request OpenMW/openmw!752
4 years ago
glassmancody.info
16856d45c5
Lighting Patch
...
Fixes build errors with older OSG builds and some issues with 'shared' layout.
Bring back ambient in inventory through lightmodel instead of sun ambient, mirrors scene ambient/sunlight relationship.
Forces shaders when certain lighting methods are enabled and finalize settings.
Correctly override sun for localmap.
4 years ago
fredzio
f137b7341f
Another fallout from MR 722: objects were treated like actors by
...
accident. Net effect was that calls to Move/MoveWorld didn't update
position of collision object.
4 years ago
Andrei Kortunov
5de72c94ab
Limit pointers cache size to avoid possible bad_alloc errors
4 years ago
psi29a
af8bc7d120
Merge branch 'fixagainsetposforgoodthistimeitwillnotbreakanything' into 'master'
...
Fix #5961 : Follow up MR 722: do not apply mPositionOffset twice when we teleport.
Closes #5961
See merge request OpenMW/openmw!744
4 years ago
fredzio
e31cf7e6ac
Follow up MR 722: do not apply mPositionOffset twice when we teleport.
...
Previous MR change the meaning of mPositionOffset: it is now just a log
of relative movement that were already applied to allow the physics
simulation to catch up, instead of changes that needs to be applied. As
such, after a teleport we need to reset it. Also, since mWorldPosition
is already with the offset we should not update its value in
applyPositionOffset().
4 years ago
Andrei Kortunov
33b8233887
Validate GUI scaling and place it to the launcher
4 years ago
Andrei Kortunov
db1428de18
Move container unresolving to the separate method
4 years ago
fredzio
9d8fcec642
Remove bogus warning. It is a normal situation for projectiles to be
...
in-flight after the caster is gone.
4 years ago
David Cernat
cedf70f367
Add OpenMW commits up to 13 Apr 2021
...
# Conflicts:
# .travis.yml
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/summoning.cpp
# apps/openmw/mwphysics/mtphysics.hpp
4 years ago
elsid
0fae6d9a0a
Add walk and swim flags when corresponding speed is positive
...
This allows to avoid finding path over area that will should have infinite
cost (area_cost = area_cost_factor / area_speed).
4 years ago
elsid
3c4a9069ae
Do not use infinite area cost
...
Division by zero causes float value to be infinite. When infinite cost is
multiplied by zero distance the result is NaN. After this pathfinding algorithm
state is broken.
4 years ago
psi29a
f1cfdafd4d
Merge branch 'why_are_the_christmas_lights_still_up' into 'master'
...
Remove 8 light limit and add configurable lighting enhancements
See merge request OpenMW/openmw!618
4 years ago
glassmancody.info
531a6e1979
Code review fixes, remove implicit GLSL casts
4 years ago
glassmancody.info
582f7b52cf
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
4 years ago
glassmancody.info
9e80091aff
clear up force shaders and make it less convoluted
4 years ago
glassmancody.info
b7adb9d088
use true default settings
4 years ago
glassmancody.info
16f80ec6f3
Update settings when using fallback
4 years ago
glassmancody.info
4ba473b684
Finalize settings, torch fix
4 years ago
glassmancody.info
71c30a31df
in-game settings, some require restart
4 years ago
glassmancody.info
3d713e8602
Fix incorrect minimum ambient
4 years ago
glassmancody.info
280fd2b162
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
4 years ago
glassmancody.info
cc31e1eea1
Ambient luminance threshold setting
4 years ago
glassmancody.info
690995988b
More formatting, OpenCS cells are unbroken
4 years ago
glassmancody.info
142c6d2993
Enable groundcover lighting for non FFP
4 years ago
glassmancody.info
328ec85757
Code review cleanup, add setting documentation
4 years ago
glassmancody.info
7370acdf54
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
4 years ago
glassmancody.info
43ac32921c
Rewrite, support different lighting methods
4 years ago
glassmancody.info
9d9074c244
Add shared UBO
4 years ago
glassmancody.info
c5ea966f24
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
4 years ago
glassmancody.info
dda735c54a
initial commit
4 years ago
psi29a
0a6ef9c1bd
Merge branch 'swim_when_follow' into 'master'
...
Allow actors to find path over water surface (#5943 )
See merge request OpenMW/openmw!731
4 years ago
Evil Eye
56ede535b5
Don't perform a hit test outside the page's bounds
4 years ago
psi29a
0818a10df2
Merge branch 'baby_dont_throw_me_no_more' into 'master'
...
Catch exceptions in ResolutionListener
Closes #5946
See merge request OpenMW/openmw!727
4 years ago
elsid
28fc21792e
Allow water walking actors to find path over water surface
4 years ago
elsid
634556be9d
Add setting to allow following creatures to find path over water surface
4 years ago
fredzio
32981bcd88
Constify a few things
4 years ago
fredzio
efb241f1de
Use override instead of virtual
4 years ago
fredzio
fda639eb57
Remove unused forward declarations
4 years ago
Evil Eye
b91be1e803
Catch exceptions in ResolutionListener
4 years ago
psi29a
603e4206fd
Merge branch 'teleport_here_not_there' into 'master'
...
Fix #5919 (and another bug)
Closes #5919
See merge request OpenMW/openmw!722
4 years ago
Andrei Kortunov
f984e96b34
Use conventional names for atan2 arguments
4 years ago
Andrei Kortunov
1db369f418
Do not use unchecked value in calculations
4 years ago
Andrei Kortunov
903b89a0ff
Add bound for UI scale factor, as it specified in docs
4 years ago
Andrei Kortunov
c989fac67b
Add bound for pointers cache size, as it specified in docs
4 years ago
Andrei Kortunov
124a33d8a3
Fix uninitialized variables
4 years ago
Andrei Kortunov
b96929f3fc
Avoid division by zero
4 years ago
fredzio
8874a5be22
Change (again) the way SetPos behave.
...
Instead of registering the desired change of position and rely on
physics simulation to apply it to the world, immediately change the
position in the world without reset the simulation.
4 years ago
fredzio
6e1c67a9ae
Account for waterwalking when updating position. Otherwise we might
...
trace down the actor at waterlevel at the wrong coordinate.
Triggered by multimark mod with waterwalking effect.
4 years ago
Jonas Tobias Hopusch
799cf16f31
Attempt to fix #5942
...
Closes OpenMW/openmw#5942
This is an attempt to apply the fix suggested by @Capostrophic
4 years ago
psi29a
a16387df61
Merge branch 'sky-dehardcode' into 'master'
...
De-hardcode references to mesh files used by the sky.
See merge request OpenMW/openmw!704
4 years ago
Matjaž Lamut
2cb4b62b83
De-hardcode references to mesh files used by the sky.
4 years ago
Jacob Turnbull
d9376ee08e
Trim down comment and change flag name
4 years ago
Evil Eye
44f2cb0923
Fix targeted scripts losing their targets when rearranging your load order
4 years ago
Andrei Kortunov
59720aea9a
Restore old aiming for melee combat
4 years ago
Jacob Turnbull
bc8db8b8f5
Fix for enchanted items being removed on item equip cycling when they are re-equipped
4 years ago
David Cernat
a7f517507c
[Client] Handle reenabling of harvested objects via Container packet
...
It is no longer necessary to send ObjectState packets when harvesting objects, as the Container packet will handle the refreshing of those objects' animations instead.
4 years ago
David Cernat
b2328b7063
[Client] Make it possible to check whether a class can be harvested
4 years ago
psi29a
9aa5aef2c6
Merge branch 'my_other_mr_is_larger' into 'master'
...
Make AddItem's quantity overflow on negative numbers
Closes #5934
See merge request OpenMW/openmw!713
4 years ago
elsid
bd33fa76b6
Use CRTP to define CustomData clone function
4 years ago
elsid
e380470558
Add move ctor and assignment operator to RefData
4 years ago
elsid
045bb7cbd7
Store CustomData and ContainerStore as unique_ptr
4 years ago
Evil Eye
ecde3932e2
Make AddItem's quantity overflow on negative numbers
4 years ago
fredzio
9cae7882dd
Fix a bug that was triggered with multi mark mod.
...
When a script calls SetPos for x,y,z in sequence on an actor, we need to make sure
that the actor will not spawn under ground at x,y coordinates.
Now that change of coordinates are cumulated and applied all at once, we
need to account for the whole offset.
To this end move the terrain height check inside of Actor class.
4 years ago
David Cernat
860be0a4e7
[Client] Send Container & ObjectState packets when harvesting objects
4 years ago
fredzio
0fac172413
Remove wrong line that slipped in yesterday.
4 years ago
Andrei Kortunov
50352daf90
Rework knockdown and knockout animations fallbacks
4 years ago
Evil Eye
582f1503c1
Merge branch 'setpos' into 'master'
...
Unbreak SetPos and the mods using it (#5919 )
See merge request OpenMW/openmw!696
4 years ago
fredzio
7a67492d81
Unbreak SetPos and the mods using it.
...
To make SetPos works with async physics, it was modified to register a
position offset that would be applied to the real position during the
simulation.
A common pattern to teleport NPC in scripts is a sequence of SetPos/Disable/Enable in the same frame.
Since Disable/Enable creates a new physics actor using last known
RefData::Position, the registered offset never get a chance to be applied.
Modify disable() to call moveObject with the offset applied, so that the newly created physics actor will have up-to-date position
4 years ago
fredzio
b58244ac26
Guard the Bullet drawing method with a read lock on the
...
btCollisionWorld. It closes a race on the collision shapes coordinates.
4 years ago
fredzio
dbd6e3bfee
Replace pointless usage of shared_ptr by unique_ptr / non-owning raw
...
pointer for btCollisionWorld.
4 years ago
fredzio
ccd3cbc69a
Use saved actor position instead of reading again RefData in unstuck. It
...
is a race condition to do so.
4 years ago
Andrei Kortunov
5fce5b12f4
Merge branch 'drop_the_bird' into 'master'
...
Disallow inserting containers, creatures, and npcs from the save game not present in content files
Closes #5884
See merge request OpenMW/openmw!683
4 years ago
Andrei Kortunov
b61337643e
Merge branch 'issue-5680' into 'master'
...
change aim calculation
See merge request OpenMW/openmw!685
4 years ago
David Cernat
0137772e64
[Client] Log PlayerCellChange packets about the local player
4 years ago
Max
2cd96e56d5
create constant and use constant in other parts of the code base
4 years ago
Max
e56efdd562
change aim calculation
4 years ago
elsid
453e94ea9f
Use half extents for destination distance tolerance in AiEscort
...
For actors moving in water destination may be located at such z coordinate
that they can't reach.
4 years ago
elsid
f32e1790bc
Add half extents to AiEscord max distance
...
For actors with big bounding box given constants may not work properly like
it's not possible to get close enough to actor from a given angle to make it
move.
4 years ago
elsid
39c0ce9ddf
Build limited path for far destinations
...
When distance between start and end point is greater than max radius of area
possibly covered by navmesh there is no way to find path via navmesh. Also if
distance is greater than cell size navmesh might not exists withing mentioned
area because cell is not loaded therefore navmesh is not generated. So minumum
of these values is used to limit max path distance. Assuming that path
actually exists it's possible to build path to the edge of a circle. When
actor reaches initial edge path is built further. However it will not be
optimal.
4 years ago
Evil Eye
cf5a93d712
Also run NPC validation for modified base records
4 years ago
Evil Eye
e79036f4e0
Don't erase the player
4 years ago
psi29a
1af50b7e23
Merge branch 'sound_cleanup' into 'master'
...
Sound cleanup
See merge request OpenMW/openmw!567
4 years ago
psi29a
415591b7ed
Merge branch 'ai_reaction_deviation' into 'master'
...
Distribute AI reactions and engage combat calls over time
See merge request OpenMW/openmw!674
4 years ago
Evil Eye
5e1960a76a
Disallow inserting containers, creatures, and npcs from the save game not present in content files
4 years ago
Evil Eye
8e9bd5c0bd
Don't throw an exception when equipping a bound item fails
4 years ago
Evil Eye
580fa78034
Don't purge summon effects with invalid creature ids
4 years ago
wareya
63f01d8c5f
Prevent physics death spiral by falling back to true delta time when needed
4 years ago
psi29a
86bd173d69
Merge branch 'refactoring' into 'master'
...
"static const" -> "static constexpr" in headers
See merge request OpenMW/openmw!676
4 years ago
Petr Mikheev
7bbbe40abe
"static const" -> "static constexpr" in headers
4 years ago
wareya
e722c99e62
forgot to initialize these variables
4 years ago
wareya
40265bf118
make unstucking slightly smarter (can turn itself off, also acts like flat ground)
4 years ago
David Cernat
b3c40913f6
[Client] Remove 'using namespace std' from multiplayer-related code
...
This brings TES3MP in line with https://gitlab.com/OpenMW/openmw/-/merge_requests/664
4 years ago
David Cernat
59cb31e0a7
Add OpenMW commits up to 20 Mar 2021
...
# Conflicts:
# apps/openmw/CMakeLists.txt
# apps/openmw/mwmechanics/aipursue.cpp
# components/CMakeLists.txt
4 years ago
elsid
62c0ecbbd0
Separate engage combat timer for each actor
...
Use DeviatingPeriodicTimer to distribute calls over time. This reduces
stuttering and make AI more natural.
4 years ago
elsid
675c0ab72f
Apply uniform random deviation to AI reaction timer
...
This allows to distribute AI reaction calls over time.
Before this change actors appearing at the same frame will react in the same
frame over and over because AI reaction period is constant. It creates a
non-uniform CPU usage over frames. If a single frame has too many AI reactions
it may cause stuttering when there are too many actors on a scene for current
system.
Another concern is a synchronization of actions between creatures and NPC.
They start to go or hit at the same frame that is unnatural.
4 years ago
Andrei Kortunov
54daa234bd
Reset watched stats upon reload or new game start
4 years ago
wareya
1471ef003a
fix async physics interpolation
4 years ago
AnyOldName3
162b25c180
Fix sunglare on Mesa
...
The sunglare works by comparing an occlusion query with depth testing on
against one with depth testing off to determine if there's anything
closer to the camera than the maximum depth buffer value. For the depth-
tested query, the depth range is set from 1 to 1 so it's always drawn at
the maximum distance. Originally, we had the depth function set to LESS,
meaning that the query would always fail as 1 is not less than 1, but
also glPolygonOffset was used to move the query by "the smallest value
that is guaranteed to produce a resolvable offset for a given
implementation" closer to the camera. While other driver and hardware
combinations do that, Mesa seems to be clamping to the depth range, so
still failing.
Instead, it's simpler to just get rid of the polygon offset and change
the depth test to LEQUAL as 1 *is* less than or equal to 1, but not than
any other possible depth buffer value.
4 years ago
Evil Eye
d1e8c6b223
Merge branch 'magical_rat' into 'master'
...
Register copied Spells with SpellList
See merge request OpenMW/openmw!662
4 years ago
AnyOldName3
ba74fbf30e
Fix MyGUI log
...
Also actually print an error to the regular log when the MyGUI log can't
be opened so we notice if we kill it again in under five years.
4 years ago
Bret Curtis
40c989d732
allman style
4 years ago
Evil Eye
c2580d60e9
Register copied Spells with SpellList
4 years ago
Bret Curtis
9fc0649fb6
a better check to avoid the mCell assertion, so compariing nullptr to current cell will refurn false anyway
4 years ago
Bret Curtis
49545e6d29
add comments as to why we need to check that the player is grounded or not; only run once during initial cell loading
4 years ago
Bret Curtis
fff1df9ee4
revert some blank lines
4 years ago
Bret Curtis
c067782814
proper fix that traces down the player when a cell is loaded; we also only run once if the current cell being loaded is the one that the player is in.
4 years ago
Bret Curtis
1479f98793
hacky solution with debug; seems that player is added before cell so tracing down will not find anything
4 years ago
Bret Curtis
19ad7d7f0c
Resolve #5895 by setting the initial mOnGround state to false; we do this because the movement solver runs one frame behind so when we run through the loop the first time we assume we are on the ground even though we may be 400 units in the air.
4 years ago
psi29a
514a55ed4c
Merge branch 'fix_5846' into 'master'
...
Fix #5846 (headtracking)
Closes #5846
See merge request OpenMW/openmw!652
4 years ago
glassmancody.info
6255b0492b
Resolve crashes on exit with visible MyGUI widgets
4 years ago
Petr Mikheev
447c3b9489
Fix 5846
4 years ago
elsid
9275dd2dcb
Avoid virtual dispatch in SoundManager dtor
4 years ago
elsid
b0311ce9f1
Remove DEFAULT_OUTPUT macros
4 years ago
elsid
e30a59772c
Remove DEFAULT_DECODER macros
4 years ago
Evil Eye
4db2f79a3c
Merge branch 'setpos' into 'master'
...
Use relative movement inside of SetPos
See merge request OpenMW/openmw!649
4 years ago
fredzio
cb39f8fb01
Use moveObjectBy in SetPos
4 years ago
fredzio
03b86c232b
Apply the position offset even if the simulation is not performed
...
because we're too fast.
4 years ago
psi29a
311b497491
Merge branch 'bullet-heightfield-floats' into 'master'
...
Avoid heightfield conversion in newer Bullet
See merge request OpenMW/openmw!647
4 years ago
psi29a
cc6f08930b
Merge branch 'alpha-meddling' into 'master'
...
Replace deprecated alpha test in shader visitor
Closes #4899
See merge request OpenMW/openmw!473
4 years ago
AnyOldName3
0431ba4c87
Merge branch 'alpha-meddling-shader-side-mip-meddling' into alpha-meddling
4 years ago