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

9065 commits

Author SHA1 Message Date
scrawl
6df71f6250 Factor out safePlaceObject function 2016-02-29 17:19:22 +01:00
scrawl
11f00e3aa9 Rename safePlaceObject to placeObject 2016-02-29 17:05:18 +01:00
scrawl
be2f20f564 PlaceAt: attempt to select a safe spawn location (Fixes #2515, Fixes #1384, Fixes #2925) 2016-02-29 16:54:00 +01:00
scrawl
04d51d5871 Always update the ingredient icons (Fixes #3220) 2016-02-29 13:25:09 +01:00
scrawl
27577ce765 Add ESM::Land::DEFAULT_HEIGHT 2016-02-28 16:49:18 +01:00
scrawl
fc3de3302e Create a collision shape for the default terrain 2016-02-28 16:47:41 +01:00
scrawl
84e9d346ef Remove duplicate include 2016-02-28 16:47:33 +01:00
Marc Zinnschlag
ebaeabc962 Merge remote-tracking branch 'scrawl/respawn' 2016-02-28 10:19:14 +01:00
scrawl
3a2dccad4b Implement 'Show' script instruction 2016-02-27 13:40:53 +01:00
scrawl
f2f601b958 Implement corpse clearing (Fixes #2363) 2016-02-27 13:20:50 +01:00
scrawl
c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 2016-02-27 12:53:07 +01:00
Marc Zinnschlag
290da132b1 Merge remote-tracking branch 'scrawl/activate' 2016-02-26 16:03:50 +01:00
scrawl
a97eae864d Fix the ObstacleCheck time step (Fixes #3211) 2016-02-26 13:15:41 +01:00
scrawl
f99cd15f00 Vanilla-compatible activate / onActivate (Fixes #1629)
See https://forum.openmw.org/viewtopic.php?f=6&t=3074&p=34618#p34635
2016-02-26 13:08:35 +01:00
scrawl
d05603c7fe Directly apply On Target 'When Strikes' enchantments instead of launching a projectile (Fixes #3212) 2016-02-22 19:42:54 +01:00
scrawl
5cdee454ef Fix degree/radians mixup (Fixes #3213) 2016-02-22 19:13:56 +01:00
scrawl
90a99991d1 Use empty() instead of !size() 2016-02-22 19:06:12 +01:00
scrawl
8bd16e4d5a Don't compute the world matrix multiple times 2016-02-22 18:58:19 +01:00
scrawl
c5d3e6c993 Disable preloading of levelled lists 2016-02-22 14:31:02 +01:00
scrawl
8f81df2bd3 Cleanup 2016-02-20 20:34:56 +01:00
scrawl
0db7163363 Add specular mapping for terrain 2016-02-20 19:55:08 +01:00
scrawl
f01e8a6950 Add specular mapping for objects 2016-02-20 19:55:08 +01:00
scrawl
5cf2441b10 ShaderVisitor: support automatic recognition of normal maps based on file pattern
Introduce new settings 'auto use object normal maps', 'auto use terrain normal maps', 'normal map pattern'
2016-02-20 18:00:43 +01:00
scrawl
6a0ac824bd Fix terrain error in OpenCS 2016-02-19 15:00:58 +01:00
scrawl
17c4dfdb62 Use the lowest unused texture unit for the enchanted item glow texture 2016-02-18 23:10:58 +01:00
scrawl
5e12a1b4ef Add enchanted item glow to the shader 2016-02-18 23:05:44 +01:00
scrawl
268594dcf1 Recreate shader in NpcAnimation::setAlpha 2016-02-18 22:48:53 +01:00
scrawl
1232607385 Remove pointless widget names in settings layout file 2016-02-18 19:41:06 +01:00
scrawl
a73512afb7 Add shader settings to settings.cfg 2016-02-18 19:38:34 +01:00
scrawl
3969675afa Remove unused settings 2016-02-18 19:38:34 +01:00
scrawl
553408949a Fix character preview 2016-02-18 19:37:57 +01:00
scrawl
bd279c63f7 Fix fog on water 2016-02-18 19:37:57 +01:00
scrawl
9376811213 Vertex lighting shader 2016-02-18 19:37:57 +01:00
scrawl
044e0a829a Add fog 2016-02-18 19:37:57 +01:00
scrawl
41e1fd407d Disable shaders for the sky 2016-02-18 19:37:56 +01:00
scrawl
a9ad1b09e2 Introduce ShaderManager & ShaderVisitor
Actual shaders still to be written.
2016-02-18 19:37:56 +01:00
scrawl
e05d975020 Change the way that texture filtering settings are applied at runtime 2016-02-18 19:37:55 +01:00
scrawl
7f89bb273a Add 'reflect actors' setting for the water shader, default off 2016-02-18 19:36:17 +01:00
scrawl
6fb0022b35 Update preloading settings
Disable 'preload fast travel' by default.

Add 'min cache size' and 'max cache size' settings.

Split the 'cache expiry delay' into 'preload cell expiry delay' and 'cache expiry delay'.
2016-02-18 17:47:10 +01:00
scrawl
c4d38bb42d Fix clang analyzer warnings 2016-02-16 19:17:04 +01:00
scrawl
83a9a164bc Raise the required bullet version to 2.83
2.82 appears to have a bug that causes the player to be able to phase through certain objects (bug #1587).
2016-02-15 00:33:17 +01:00
Marc Zinnschlag
28e3fe837f Merge remote-tracking branch 'scrawl/osg_34' 2016-02-14 17:31:33 +01:00
Marc Zinnschlag
29c2a99316 Merge remote-tracking branch 'scrawl/physics' 2016-02-13 16:20:48 +01:00
Marc Zinnschlag
d1d7804620 Merge remote-tracking branch 'origin/master' 2016-02-13 10:13:25 +01:00
scrawl
eaf3f5a829 Remove unused arguments 2016-02-13 04:14:05 +01:00
scrawl
796a4a795a Avoid the 'spiral of death' 2016-02-13 03:09:28 +01:00
scrawl
383524c688 Run physics in fixed timesteps, use the remainder to interpolate between current and previous state
Based on http://gafferongames.com/game-physics/fix-your-timestep/
2016-02-13 03:03:34 +01:00
scrawl
d1375cd3a3 Crashcatcher: limit backtrace to a sensible number of stack frames
When a stack overflow occurs, trying to print the whole stack would cause the process to hang indefinitely.
2016-02-13 01:35:53 +01:00
scrawl
5824619a95 Clean up includes 2016-02-12 19:28:10 +01:00
scrawl
8b596dfcbe Remove support for OSG 3.2
Since commit e8662bea31, we're using OSG functionality that contains an unfixed crash bug in version 3.2. The bug is fixed in version 3.4 (OSG commit 6351e5020371b0b72b300088a5c6772f58379b84)
2016-02-12 14:46:45 +01:00
scrawl
48ac0bef3e Repair save games affected by bug #3080 (Fixes #3160) 2016-02-11 16:34:02 +01:00
scrawl
6bfeb118d7 Fix cleanup issue 2016-02-10 19:08:17 +01:00
scrawl
d3808580b0 Rename lightRoot to sceneRoot 2016-02-10 19:07:47 +01:00
scrawl
fb219fea17 Fix respawning of NPCs/creatures when they were moved to a different cell 2016-02-10 19:07:01 +01:00
Marc Zinnschlag
da6dcfc49e Merge remote-tracking branch 'scrawl/resource' 2016-02-10 16:23:38 +01:00
scrawl
5e876b1379 Add missing include 2016-02-10 15:34:06 +01:00
scrawl
9f729667fb Remove debug output 2016-02-09 21:16:11 +01:00
scrawl
0865cea211 Preload terrain 2016-02-09 21:16:11 +01:00
scrawl
596fe56bfd Make Land::loadData thread safe 2016-02-09 20:21:56 +01:00
scrawl
1457a0de78 Use the UnrefQueue to delete BulletShapeInstances 2016-02-09 19:04:59 +01:00
scrawl
3552b3a82c Don't create a BulletShapeInstance for actors 2016-02-09 18:51:17 +01:00
scrawl
246566cef4 Preload instances in BulletShapeManager 2016-02-09 18:48:49 +01:00
scrawl
e28dc3e72f Preload instances in SceneManager 2016-02-09 18:35:26 +01:00
scrawl
ce3cce24a5 Remove unneeded dynamic_cast 2016-02-09 16:39:05 +01:00
scrawl
8ece1885cd Animation: don't create the NodeMap if we don't need it 2016-02-09 16:39:05 +01:00
scrawl
ae031b23d4 Do not detach NPC parts in destructor 2016-02-09 16:10:42 +01:00
scrawl
d11c2864df Introduce UnrefQueue to handle the deleting of no longer needed objects in the background thread 2016-02-09 15:45:35 +01:00
scrawl
f6f9eff9a6 Preload levelled creatures 2016-02-09 03:06:00 +01:00
scrawl
6806741d9b Add settings for disabling the individual preloading types 2016-02-09 01:58:33 +01:00
scrawl
10a3e270a3 Preload fast travel destinations 2016-02-09 01:52:02 +01:00
scrawl
1cda2bf796 Preload sky & water from the main menu 2016-02-09 01:28:13 +01:00
scrawl
f9082502f8 Move construction of WorkQueue to RenderingManager 2016-02-09 01:02:40 +01:00
scrawl
d16450bff2 Fix correctActorModelPath in preloader not being used 2016-02-09 00:28:27 +01:00
scrawl
1b8e82e929 Preload NPC body parts 2016-02-09 00:26:22 +01:00
scrawl
84dcf59c50 Fix preloading of equipment parts that don't separate gender 2016-02-08 22:57:47 +01:00
scrawl
effe022bb2 Move preload model list to MWClass, preload NPC head/hair 2016-02-08 20:52:32 +01:00
scrawl
fc0be77e4c Preload keyframes 2016-02-08 15:51:31 +01:00
scrawl
ef5de94548 Fix correctActorModelPath 2016-02-08 15:31:09 +01:00
scrawl
e4e313fe12 Remove outdated comment 2016-02-08 14:41:21 +01:00
scrawl
c8054424c9 Preload items equipped by NPCs 2016-02-07 22:37:52 +01:00
scrawl
a81b10b415 Make the cache expiryDelay configurable 2016-02-07 19:05:55 +01:00
scrawl
5efaa9817c Add preloading settings 2016-02-07 18:01:14 +01:00
scrawl
610257cd3a Preload the exterior cell grid 2016-02-07 07:37:56 -08:00
scrawl
8592166eeb Preload surrounding cells when preloading an exterior cell destination 2016-02-07 05:27:19 -08:00
scrawl
023c87b215 Preload cell when the player goes near a teleport door. It works! 2016-02-07 05:13:46 -08:00
scrawl
a7b217def2 AI: don't cast fortify effects (Fixes #3184) 2016-02-07 01:29:11 +01:00
scrawl
162287b82d AI combat actions: rename 'target' to 'enemy' 2016-02-07 01:29:11 +01:00
scrawl
94c05c6baa AI: don't cast useless resist spells (Fixes #2760) 2016-02-07 01:29:02 +01:00
scrawl
d3415387a5 AI: take into account success chance when rating a spell 2016-02-07 01:18:20 +01:00
scrawl
d855a13b44 Clear the resource cache from the worker thread 2016-02-07 00:36:31 +01:00
scrawl
6f9ca0f68f Add basic cell preloader class
Not properly in use yet, but seems to be working.
2016-02-07 00:14:13 +01:00
scrawl
df57d4bfba Use a common base class for resource managers
Implement updateCache to delete unreferenced cached objects when they have not been referenced for a while.
2016-02-06 17:22:17 +01:00
scrawl
a72af4a1a3 cout that should be cerr 2016-02-05 23:25:01 +01:00
scrawl
9e5225bb6f Do not unref a Texture's image data after applying it 2016-02-05 23:21:54 +01:00
scrawl
499beda665 Clear terrain texture cache before applying filter settings 2016-02-05 23:20:13 +01:00
scrawl
9e53e12c70 More renaming of TextureManager -> ImageManager 2016-02-05 23:10:27 +01:00
scrawl
5ee3d1698f Remove getWarningTexture in favor of getWarningImage 2016-02-05 23:05:43 +01:00
scrawl
f99f403dda Rename TextureManager to ImageManager 2016-02-05 23:03:53 +01:00
scrawl
6ef848b7c5 Remove TextureManager::getTexture2D
Instead use getImage and let the caller create the Texture. Sharing of textures is then handled in post by the SharedStateManager.

This is closer to what the OSG serializer does.

Streamlines the TextureManager and will make it easier to multithread.
2016-02-05 23:01:11 +01:00
scrawl
e8662bea31 Change the way that image origin is converted to OpenGL's lower-left convention
Flip the texture coordinates instead of flipping textures.

This simplifies the TextureManager (no need to worry if the caller wants flipping or not), should make it easier to generalize & multithread it.
2016-02-05 21:03:11 +01:00
scrawl
5b972ee777 Move texture filtering settings to SceneManager
Practical benefits:

- Filter settings are now applied to native OSG format models. These models do not use TextureManager::getTexture2D since the model itself specifies a Texture.
- The GUI render manager will be able to use its own separate textures, making it easier to turn off filtering for them.
2016-02-05 21:03:10 +01:00
scrawl
c9a67ab423 Do not add scripts from levelled creatures twice (Bug #2806)
Do not insert objects from within a CellStore visitor
2016-02-05 18:29:33 +01:00
scrawl
8e5398d85b Add missing initializations 2016-02-05 14:35:29 +01:00
scrawl
7d647088ab Make the local map cell distance configurable 2016-02-05 01:19:45 +01:00
scrawl
bd655c20fd Refactor local map updates
We don't need the delay any more because the rendering itself is part of the normal rendering traversal - so it's delayed anyway.

Don't request maps that we're not actually using (i.e. with cell grid sizes higher than the default 3, we were rendering more maps than the map window could show).
2016-02-05 01:19:45 +01:00
scrawl
300379617e Accept a const CellStore in findInteriorPositionInWorldSpace 2016-02-05 01:19:45 +01:00
scrawl
41ebf62fb1 Accept a const CellStore in getNorthVector 2016-02-05 01:19:45 +01:00
Marc Zinnschlag
11a4a31bfd Merge remote-tracking branch 'scrawl/localscripts' 2016-02-04 13:49:43 +01:00
scrawl
69c2c4fcc1 updateMergedRefs before reading MVRF tags (Fixes #3161) 2016-02-03 19:13:26 +01:00
scrawl
cc3563359e Refactor local script iteration (Fixes #2806, Fixes #3108)
This should be much safer. Don't use recursion. Don't fail if mIgnore happens to be in the list twice. Don't rely on preconditions / assertions.
2016-02-03 16:16:20 +01:00
scrawl
187d2bccda Warn about adding a local script twice (Bug #2806) 2016-02-03 16:09:10 +01:00
scrawl
aa9905b0eb Do not crash when the water normal map is missing (Fixes #3179) 2016-02-03 15:24:28 +01:00
scrawl
74c18f532e Fix comment 2016-02-03 14:40:59 +01:00
scrawl
5878291064 Fix the path correction for animation sources provided in NPC record (Fixes #2444) 2016-02-03 14:40:21 +01:00
scrawl
b9d1d6144a Don't reveal unknown potion effects in alchemy window (Fixes #3146) 2016-02-02 22:50:11 +01:00
scrawl
d3b76b7006 Don't stack Ai packages (Fixes #3101, Fixes #3080, Fixes #2697) 2016-02-02 22:20:56 +01:00
scrawl
7aeafd3bb9 Revert "Apply the AiTravel maxRange to AiEscort as well (Fixes #2697)"
This reverts commit 1f543b4d79.
2016-02-02 22:08:12 +01:00
scrawl
145756c0a1 Partly revert "Avoid directly iterating the actor map (Fixes #3173)"
Caused issues when a summoned creature is removed as part of the magic effect update.

Fixes #3178
2016-02-02 15:57:15 +01:00
scrawl
59d2de118f Avoid directly iterating the actor map (Fixes #3173) 2016-02-02 00:50:21 +01:00
scrawl
50ed061154 AiWander: reset mAllowedNodes on cell change (Fixes #3176, Fixes #3130) 2016-02-02 00:41:40 +01:00
scrawl
dda4273349 Actors that start the game as dead do not float to the surface (Fixes #3177)
This has a minor bug (can you spot it?) that affects the vanilla engine as well, unfortunately not so simple to fix.
2016-02-01 23:18:18 +01:00
scrawl
832eaae27b Do not apply effects with CasterLinked flag when there is no valid caster 2016-02-01 22:57:08 +01:00
scrawl
c34314ae26 When an actor dies purge all spell effects cast by that actor (Fixes #3175) 2016-02-01 22:52:28 +01:00
scrawl
c403a6b113 Don't apply constant magic effects to dead actors (Fixes #3174) 2016-02-01 22:30:08 +01:00
Alexander "Ace" Olofsson
776c715ccd Move NoTraverseCallback to mwrender/util.hpp 2016-01-29 23:21:58 +01:00
scrawl
aec8c38461 Move observer_ptr include where it belongs 2016-01-25 21:03:33 +01:00
scrawl
fc6fe9acfb Do not crash ModVertexAlphaVisitor when there are no vertex colors 2016-01-25 18:52:20 +01:00
Tobias Kortkamp
0659687bfb Some fixes for building on FreeBSD 2016-01-25 14:13:16 +01:00
scrawl
b0431833a1 Fix some defects reported by Coverity CI 2016-01-21 16:08:04 +01:00
scrawl
f0971ee8ad Implement Fixme script instruction 2016-01-20 04:07:07 +01:00
scrawl
ce9a18fb87 Merge pull request #879 from jordan-ayers/bugfix/1544
Improve Drop Command - Bugfix/1544
2016-01-19 15:02:51 +01:00
Jordan Ayers
5699cf7f09 Barter: Leave unsold projectiles equipped. 2016-01-18 20:00:18 -06:00
Jordan Ayers
1ff49cc637 Improve Drop command behavior. (Fixes #1544) 2016-01-18 19:58:19 -06:00
Jordan Ayers
c82d9a1e87 Adjust ContainerStore / InventoryStore to allow partial unequip of items. 2016-01-18 19:56:35 -06:00
scrawl
87beb73970 Correction 2016-01-15 16:34:57 +01:00
scrawl
fbf07133ea Document usage of node masks 2016-01-15 16:31:24 +01:00
scrawl
41c571d4f4 Merge branch 'master' of https://github.com/OpenMW/openmw into lighting
Conflicts:
	apps/opencs/view/render/instancemode.cpp
2016-01-15 15:46:10 +01:00
scrawl
4f2a031f4e Improve error message 2016-01-14 18:34:47 +01:00
scrawl
0b84b3c2cf Don't crash when region weather chances don't add to 100
The invalid weather ID was resulting in out-of-bounds vector access later in the code.
2016-01-14 17:41:39 +01:00
Jordan Ayers
2ce2e8a1e7 Add missing OOB slot check to InventoryStore. 2016-01-12 21:35:23 -06:00
scrawl
ef1a1125e0 Fix an error in restocking logic (Fixes #3131) 2016-01-12 17:10:23 +01:00
scrawl
4e6a60672d When a spell explodes on an actor do not apply it to that actor twice (Fixes #3142) 2016-01-12 00:40:09 +01:00
scrawl
3089aeccc4 Factor out SceneUtil::addLight 2016-01-11 23:10:16 +01:00
scrawl
438b30d6f0 Move configureLight to a separate file 2016-01-11 23:10:16 +01:00
scrawl
6546c05428 Move Fallback map to components/ 2016-01-11 23:10:16 +01:00
scrawl
f315a4386f Accept an implicit reference in Journal (Fixes #3135) 2016-01-11 23:07:01 +01:00
scrawl
ef20962fc5 Disable fog of war rendering on the HUD map by default 2016-01-11 22:58:08 +01:00
scrawl
ca4e859f61 Remove unused argument 2016-01-11 22:58:01 +01:00
scrawl
4690fd3f22 Change the local map exploration radius to better match the original engine 2016-01-11 22:57:57 +01:00
scrawl
4f8f166f69 Fix GetPcInJail to work as in the original engine 2016-01-11 22:57:25 +01:00