1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 05:19:55 +00:00
Commit graph

17422 commits

Author SHA1 Message Date
scrawl
b3d5c2bd7f Use the actor's collision shape in findGround()
The cylinder base is no longer appropriate as of the change to capsules.

This also works around a bug when tracing a small cylinder/box shape apparently introduced with bullet 2.86.
2017-02-10 02:00:52 +01:00
scrawl
67e4a7e37b Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead 2017-02-09 04:51:20 +01:00
scrawl
93c582064e Remove item shadows for equipped weapon/spell indicators 2017-02-09 04:13:13 +01:00
scrawl
3f3d00ffc9 Add CellPreloader::clear to avoid potential dangling CellStore pointer and to more aggressively clear preload state from a previous game 2017-02-09 04:03:38 +01:00
scrawl
0be86f69bc Write the player object first to increase the chance of preloading the player cells in time 2017-02-09 03:55:10 +01:00
scrawl
1d8a9ff622 Preload player cell as soon as the player is read from the savegame
Giving the worker thread something to do while the rest of the savegame is parsed.
2017-02-09 03:47:36 +01:00
scrawl
d141b98f0c Add base animations to preloadCommonAssets 2017-02-09 03:32:40 +01:00
scrawl
066aa2e60e Always run preloadCommonAssets even when the menu is skipped
Move to before the content files are loaded so we can do preloading in parallel with content file loading
2017-02-09 03:16:36 +01:00
scrawl
839928e210 Fix light data being reset for the wrong light 2017-02-09 02:46:30 +01:00
scrawl
c68f662c9a Predict player movement when preloading cells to better handle moving at high speed 2017-02-09 01:34:42 +01:00
scrawl
a46593fa74 Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread 2017-02-09 01:08:07 +01:00
scrawl
d62c4259bd CellPreloader: load the terrain first to match the order in the main thread 2017-02-09 01:07:27 +01:00
scrawl
d3e1dbe920 Fix race conditions in terrain loader caused by static variables 2017-02-09 00:53:48 +01:00
scrawl
d1e86d22ca Check which local map textures actually need to be updated
On a typical exterior cell transition, we'll save 3 of 9 map renders. When moving back and forth between 2 cells, we can even reuse 6 of 9.
2017-02-08 22:20:57 +01:00
scrawl
4d53ab6c32 nifloader: attempt to remove redundant root node when a Skeleton is added 2017-02-08 20:04:17 +01:00
scrawl
2a42c4781e nifloader: override animflags instead of accumulating them 2017-02-08 19:53:02 +01:00
scrawl
0187f2ce4c nifloader: combine animFlags and particleFlags (Bug #2100) 2017-02-08 19:53:02 +01:00
scrawl
bccfd6cef8 nifloader: handle textures with no image that are later assigned in a FlipController
As found in vurt's trees (Bug #2100)
2017-02-08 19:52:33 +01:00
scrawl
792f505b2a Fix potential crash in ShaderVisitor for textures with no image assigned 2017-02-08 19:16:07 +01:00
scrawl
43d9f3d5c7 Update bullet debug drawer even when the game is paused so the collision mesh will show instantly even when the console is up 2017-02-08 18:53:24 +01:00
scrawl
249fe9077b Handle 'tcb' command as an alias for 'tcg' 2017-02-08 18:51:07 +01:00
scrawl
45ae8d5ffa Add support for GL_AMBIENT colorMode to shaders as required by particle systems 2017-02-08 18:39:24 +01:00
scrawl
206e2bf975 Fix camera rotation not being set after save game load (regressed with 1eb3384043) 2017-02-08 04:42:15 +01:00
scrawl
c00532d82d Add LightStateCache to avoid redundantly setting the same gl_Light
Normally, osg::State would do this for us (via lastAppliedAttribute), but since we're using a custom StateAttribute to apply all lights at once, we have to track ourselves.

Further reduction of GL calls in a typical scene by ~2%
2017-02-07 23:37:57 +01:00
scrawl
4d4dc1b9c1 Add specialized DisableLight state attribute for more efficient undoing of light state
Seems to reduce # of GL calls by 10-15% in a typical scene.
2017-02-07 23:01:36 +01:00
scrawl
cdca9b0488 Accept bullet 283 on appveyor as well 2017-02-07 20:40:07 +01:00
scrawl
dfa43af818 Update bullet dependency to 2.86 2017-02-07 18:05:24 +01:00
scrawl
35bb467c7a Fix inverted setting of variable 2017-02-07 05:28:06 +01:00
scrawl
5a939418fc Add missing avcodec_close (Fixes #3741) 2017-02-06 15:49:13 +01:00
scrawl
91939c4687 Switch actors to capsule shapes now that the jumping bug is gone (Fixes #2116, Fixes #2909)
The culprit was - surprise, surprise - d39d4f2619
2017-02-06 05:40:49 +01:00
scrawl
03aa270551 Construct PhysicActor as on ground by default to avoid a jumping animation from playing in the first frame after a savegame load 2017-02-06 05:23:00 +01:00
scrawl
bc29a99a53 Fix broken timer 2017-02-06 05:10:40 +01:00
scrawl
d39d4f2619 Revert a problematic and performance costly workaround that should never have been applied and is no longer required as of the last commit. 2017-02-06 04:52:41 +01:00
scrawl
541fbb4792 Movement solver: add usage of 'on slope' flag to improve handling of steep slopes
Previously we were handling 'on slope' synonymously with 'in air' which caused some odd effects.

Practical changes:
 - Sliding down a slope no longer applies fall damage.
 - Fixed a climbing exploit that would allow climbing steep slopes with repeated use of the Jump function.
2017-02-06 04:50:58 +01:00
scrawl
cce42b6e9d Don't create a CharacterController for objects with no animations 2017-02-06 03:43:08 +01:00
scrawl
fe0cf5be05 StatsWindow: don't rebuild all skill widgets when one skill changes 2017-02-06 02:40:35 +01:00
scrawl
e7b6ea4e3f Add cycle weapon/spell actions to the list of controller actions (Fixes #3613) 2017-02-05 20:23:49 +01:00
scrawl
3065600a86 Skip expensive visitEffectSources call if no summoned creatures or summon effects are active 2017-02-05 02:26:28 +01:00
scrawl
ee4073541c Animation: cache getVelocity() 2017-02-05 02:26:28 +01:00
scrawl
a2cede8f34 Add timer for updateEquippedLight 2017-02-05 02:26:28 +01:00
scrawl
1eb3384043 Avoid rotating by zero in CharacterController 2017-02-05 02:26:28 +01:00
scrawl
7201cf5fe2 ItemWidget: skip setImageTexture if the icon has not changed 2017-02-05 02:26:27 +01:00
scrawl
5f2539adb6 Optimize scrollbar/progress skins by using one widget for the track instead of one widget per pixel 2017-02-04 16:05:22 +01:00
scrawl
1447bfa215 Improve scene loading performance by creating collision objects with the correct rotation right away instead of adjusting it later 2017-02-04 15:12:01 +01:00
scrawl
739a76f5fb docs/settings: fix setting range 2017-02-04 06:18:23 +01:00
scrawl
76f6964583 docs/settings: add preload settings 2017-02-04 06:04:28 +01:00
scrawl
884d306bf3 Throw exception when told to use 0 threads 2017-02-04 05:58:12 +01:00
scrawl
209f271f5f docs/settings: remove 'This setting was added in OpenMW version X.Y"
Most of these are ancient by now, plus we have the version selector on readthedocs.io
2017-02-04 04:58:42 +01:00
scrawl
0f9ec3f0c7 docs/settings: don't specify setting type redundantly 2017-02-04 04:55:13 +01:00
scrawl
2db7292bcb Add new setting for the number of preloading worker threads
If you have CPU cores to spare, consider setting 2 or 3. Up to about 3 threads, preloading performance seems to increase in a linear fashion, but with 4 or more threads I/O bottlenecks and synchronization overhead starts to show.
2017-02-04 02:59:28 +01:00