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

287 commits

Author SHA1 Message Date
scrawl
883f7ec7ce Move workaround for hiding markers from NIF loader to Scene 2015-01-13 17:19:39 +01:00
scrawl
41b3a9dba9 Rewrite animated collision shape support (Fixes #2123) 2015-01-13 05:37:37 +01:00
scrawl
d02e075bab Add setting for exterior cell grid size (Fixes #1537) 2015-01-07 02:34:29 +01:00
scrawl
48d5789aeb Use a separate flag for references deleted by a content file (Fixes #2018)
The flag must be separate so as to not contaminate the user's savegame.

Fixes the following use cases that were broken before:

 - Content file edits a reference that was already deleted by a previously loaded content file -> reference must stay deleted
 - Changed or new content file deletes a reference that is already present in the user's savegame -> reference must be deleted
 - Said content file is disabled again - reference must be undeleted
2014-12-01 22:16:45 +01:00
Thoronador
4d62541b62 fix usage of numeric_limits static functions min() and max()
Functions min() and max() of std::numeric_limits<T> are static
and can therefore be accessed via class name and :: operator.
2014-10-12 23:28:16 +02:00
scrawl
064f1964ba More efficient water walking 2014-10-05 22:27:20 +02:00
scrawl
20777c1b2e Optimize physics shape scaling on cell load 2014-10-04 20:37:35 +02:00
scrawl
7d36a202a8 Implement cell loading threshold (Fixes #1874)
The cell loading threshold (default: 1024 units) prevents exterior cell loading until the player has travelled part-way into the next cell. This gets rid of excessive cell loadings when walking along an exterior cell border.

Lower the maximum allowed view distance in options menu to accomodate. Change setting name so that old settings files are upgraded.
2014-10-02 16:50:10 +02:00
scrawl
7252cb63a6 Fix cppcheck issues 2014-09-26 17:48:14 +02:00
scrawl
3007af44ea Revert "Don't trigger CellChanged events when crossing exterior cell borders (Fixes #1874)"
This reverts commit 0c67ff9ed0.
2014-09-08 20:52:15 +02:00
scrawl
0c67ff9ed0 Don't trigger CellChanged events when crossing exterior cell borders (Fixes #1874) 2014-09-07 18:55:59 +02:00
scrawl
9f13315d1c Remove unused numUnload 2014-08-26 02:09:23 +02:00
scrawl
2b407a9995 Refactor NIF cache
- Remove broken cache locking mechanism

This was supposed to unload NIFFiles after a cell transition completes, but it was never working due to a mistake on the line if (--sLockLevel), should have been if (--sLockLevel == 0). Repairing this would increase load times (NIF files would have to be reloaded more frequently), so just removed it for now.

 - Decouple cache from NIFFile (now a new nifcache component)

 - Add API for future background loading

 - Provide a reliable way (SharedPtr) to hold on to loaded NIFFiles. This will be useful to avoid deep copies of keyframe and text key data, which is currently a performance bottleneck.
2014-08-24 02:37:50 +02:00
scrawl
8a4e0a2ce8 Don't fade out screen if teleport target cell is not found 2014-08-08 15:46:32 +02:00
scrawl
a18cec7c8e Use a MyGUI widget to render the screen fader (Fixes #1741, Fixes #1719) 2014-08-01 16:25:41 +02:00
scrawl
b58b8c6f8f Adjust player position to ground when using a door marker, even if the player is levitating (Fixes #1737) 2014-07-31 04:28:02 +02:00
scrawl
395f98e476 Fix triggering changed flag for all references when cell is visited
The InsertFunctor for cells was calling localRotateObject() for all references which set the mChanged flag in RefData to true.

Also clean up RefData interface slightly.
2014-06-15 14:18:16 +02:00
scrawl
577ed3943b Show wallpaper when loading a savegame 2014-06-02 23:26:43 +02:00
scrawl
039398c8ae Basic RefData and CellRef change tracking
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
Emanuel Guevel
1e4a854433 Remove static method MWWorld::Class::get(&Ptr)
It was just adding a level of indirection to Ptr.getClass().
All the call were replaced by that instead. The number of lines changed
is important, but the change itself is trivial, so everything should be
fine. :)
2014-05-22 20:50:00 +02:00
scrawl
ae66d28c87 Feature #32: Implement respawn for containers, creatures and NPCs 2014-05-17 09:09:00 +02:00
scrawl
e5a21aca53 Refactor projectiles to no longer use MW-objects 2014-05-16 13:33:30 +02:00
scrawl
3cdbcf3c28 Merge branch 'actorid' of https://github.com/OpenMW/openmw
Conflicts:
	apps/openmw/mwmechanics/creaturestats.cpp
2014-05-14 02:35:05 +02:00
scrawl
2bc2684a66 Fixes #275: force updating exterior cell maps even if already in cache 2014-05-11 18:01:47 +02:00
scrawl
961c4d4dc4 Fixes #772: Give scripts a chance to run before updating map, so that disabled objects are not visible 2014-05-11 18:01:47 +02:00
Marc Zinnschlag
9a1b5dc1c6 a bit of cleanup 2014-04-29 15:32:00 +02:00
Marc Zinnschlag
f6a876bc3d added actor ID 2014-04-29 15:27:49 +02:00
scrawl
83b6fcf22e Bug #416: Workaround for page flipping problem 2014-03-05 22:24:05 +01:00
scrawl
1d926816b5 Terrain: background load blendmaps & layer textures. Refactor QuadTree update. 2014-03-05 21:46:37 +01:00
scrawl
8730b61362 Render maps after *all* cells have finished loading
Still not fixing Bug #772, but at least this will allow for background loading of terrain.
2014-03-05 21:46:36 +01:00
Marc Zinnschlag
0ae9cc0106 removed unused function 2014-03-03 08:21:16 +01:00
Marc Zinnschlag
ca30f2af3d minor fix 2014-03-02 11:03:37 +01:00
Marc Zinnschlag
83ded18af0 encapsulated reference collections 2014-02-23 21:21:27 +01:00
Marc Zinnschlag
367919200f moved CellRefList into a separate file 2014-02-23 20:11:05 +01:00
Marc Zinnschlag
7693f712bc started making CellStore into a proper class; encapsulated mCell member 2014-02-21 11:35:46 +01:00
Marc Zinnschlag
1b5301eec0 Merge branch 'savedgame'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwbase/soundmanager.hpp
	apps/openmw/mwgui/mapwindow.hpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwsound/soundmanagerimp.hpp
	components/esm/loadcell.cpp
2014-02-01 18:16:32 +01:00
scrawl
03cf383be7 Merge branch 'master' of https://github.com/zinnschlag/openmw into savedgame
Conflicts:
	apps/openmw/mwgui/referenceinterface.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwscript/cellextensions.cpp
	apps/openmw/mwworld/cells.cpp
	apps/openmw/mwworld/cells.hpp
	apps/openmw/mwworld/cellstore.cpp
	apps/openmw/mwworld/store.cpp
	apps/openmw/mwworld/worldimp.cpp
2014-01-24 18:28:35 +01:00
scrawl
9653355cf1 Feature #701: Spawn levelled creatures in cells 2014-01-18 07:26:27 +01:00
scrawl
098f9712f1 Add getPlayerPtr() utility method. Reduces dependencies a lot. 2014-01-08 18:39:44 +01:00
scrawl
62774fcc4a Merge branch 'master' into HEAD
Conflicts:
	apps/openmw/mwbase/world.hpp
	apps/openmw/mwinput/inputmanagerimp.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	apps/openmw/mwworld/worldimp.hpp
	components/esm/loadtes3.cpp
2014-01-06 00:23:17 +01:00
scrawl
45847c67ad Lock NIF cache when loading an interior cell as well. Should improve load performance. 2014-01-05 18:38:21 +01:00
scrawl
9afdf71af3 Fix crash with player->position command 2013-12-19 00:37:57 +01:00
Marc Zinnschlag
030c733e2d Merge branch 'master' into savedgame
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	files/settings-default.cfg
2013-12-07 12:27:06 +01:00
Marc Zinnschlag
e818d43bc3 removed an outdated typedef and some dead code 2013-12-05 13:21:26 +01:00
scrawl
4b4025ed0f Keep the player's CharacterController when changing cells. Fixes several glitches. 2013-11-30 11:01:45 +01:00
scrawl
992a8e9c36 Refactor NpcAnimation: get rid of delayed update (no longer required), make sure that the Animation is set up *before* the inventory store is accessed anywhere (which now triggers auto equip and animation update). Allows better tracking of magic VFX for permanent enchantments in InventoryStore. 2013-11-14 14:41:10 +01:00
scrawl
d3d6dfbde8 Refactored loading screen
- Add loading progress for data files, global map, terrain
 - Refactored and improved cell loading progress
2013-08-27 15:48:13 +02:00
Chris Robinson
a546ace94d Remove an unused method 2013-08-21 07:24:54 -07:00
scrawl
8c8653160d Crash fix, material fix 2013-08-20 09:52:27 +02:00
scrawl
ebf9debb80 Enabled terrain self shadows, implemented getHeightAt, some optimizations 2013-08-19 20:39:37 +02:00
scrawl
e27437f8ed New terrain renderer - improvements:
- Consistent triangle alignment, fixes a noticable crack near the census and excise office. Note that alignment is still not the same as vanilla. Vanilla uses a weird diagonal pattern. I hope there aren't more trouble spots that will force us to replicate vanilla, but at least we can do that now.
 - Fixes several blending issues and cell border seams
 - Fix map render to use the terrain bounding box instead of an arbitrary height
 - Different LODs are now properly connected instead of using skirts
 - Support self shadowing
 - Normals and colors are stored in the vertices instead of a texture, this enables per-vertex lighting which should improve performance, fix compatibility issues due to the PS getting too large and mimic vanilla better
 - Support a fixed function fallback (though the splatting shader usually performs better)
 - Designed for distant land support - test: https://www.youtube.com/watch?v=2wnd9EuPJIY - we can't really enable this yet due to depth precision issues when using a large view distance
2013-08-19 20:34:20 +02:00
Chris Robinson
c7692acb79 Update the player's Ptr in mwrender when changing cells 2013-07-17 19:11:03 -07:00
greye
0c303aa285 fix fading on cell transition when cell is loaded 2013-07-07 14:30:11 +04:00
vorenon
efdcd9649c Fading for Exterior->Interior cell transitions 2013-06-21 20:19:35 +02:00
scrawl
c41f119ba6 Added new game button 2013-05-15 17:54:18 +02:00
Marc Zinnschlag
1e9656ee9c Merge remote-tracking branch 'glorf/rotate-update1' 2013-04-25 20:22:40 +02:00
Glorf
7cd4dd0c91 Improved local rotations 2013-04-25 19:14:10 +02:00
scrawl
547f77031d Fix crash when disabling objects in a previously loaded cell, then coming back to that cell and leaving again 2013-04-17 17:06:30 +02:00
Glorf
1e92ffc314 Added rotation layer 2013-04-16 21:17:19 +02:00
scrawl
01ae91f640 Fix several NPCs spawning in the ground 2013-04-09 01:24:17 +02:00
scrawl
2e7d5377f4 Fix crash when moving npcs to an inactive cell 2013-04-04 16:51:22 +02:00
scrawl
ebaf80d539 Trace actors onto the ground after load, when moved to a different cell by the console or on player cell change. 2013-04-03 23:55:57 +02:00
Marc Zinnschlag
feaf2b43fb disabled and deleted objects where not correctly ignored during adding objects to a cell when it became active 2013-03-22 09:44:59 +01:00
Marc Zinnschlag
6cef7fb610 rescale all objects to the range of [0.5, 2] when a cell becomes active 2013-03-10 10:00:20 +01:00
Nathan Jeffords
d3c1f5e7b2 renamed low-level NIF related files and include guards to conform to naming convention 2013-03-02 10:46:12 -08:00
vorenon
f66f67eaa1 Loading text uses now the corresponding GMSTs 2013-02-28 17:54:42 +01:00
vorenon
a6fb58bc59 Using "Loading Exterior" and "Loading Interior" instead of "Loading Cell"
This commit replaces the default "Loading Cell" text with "Loading
Interior" and "Loading Exterior"
2013-02-28 16:31:24 +01:00
vorenon
d4aa33b9a7 Removing the unloading cells part instead of just commenting them. 2013-02-28 15:58:03 +01:00
vorenon
ffd96c7715 Removed "Unloading Cell..." text from loading screen
OpenMW unloads the cell so fast, it's hardly noticable. This commit gets rid of
the "flicker" every time a cell loads.
2013-02-28 13:19:05 +01:00
Chris Robinson
db9a3aeddf Merge remote-tracking branch 'zini/master' into animation2 2013-02-24 03:32:35 -08:00
Nathan Jeffords
44b1c66c4b fixed various warnings about converting size_t to int 2013-02-23 10:23:38 -08:00
Chris Robinson
fe0e6c452d Remove the unneeded playerMove object from PhysicsSystem 2013-02-07 12:11:10 -08:00
Chris Robinson
8d98f3649c Use a separate class to handle activator mechanics 2013-01-28 23:39:11 -08:00
Chris Robinson
1ce8eaf52c Merge remote-tracking branch 'zini/master' into animation2
Conflicts:
	apps/openmw/mwrender/actors.cpp
	apps/openmw/mwrender/actors.hpp
2013-01-16 07:36:56 -08:00
Chris Robinson
94e30199d1 Merge remote-tracking branch 'zini/master' into animation2
Conflicts:
	components/nifogre/ogre_nif_loader.cpp
2013-01-15 14:59:30 -08:00
Nathan Jeffords
d5ebd6654d cache loaded NIF files to eliminate reloads
Created a NIF file caching mechanism to prevent the system from
reloading a NIF during a startup and cell changes.
2013-01-10 21:47:02 -08:00
Chris Robinson
efca5ded47 Clean up some header includes to reduce nesting 2013-01-05 21:12:08 -08:00
Marc Zinnschlag
918316168f Merge remote-tracking branch 'greye/store' into next
Conflicts:
	apps/openmw/mwclass/light.cpp
	apps/openmw/mwworld/worldimp.cpp
2012-11-07 19:34:28 +01:00
greye
ff8da265ed applying new interface vol.9, inconsistent 2012-11-06 12:36:21 +04:00
emoose
5c1b3fc043 Fixed: scene: adjust rotation/scale when creating objects 2012-11-05 20:45:04 +00:00
greye
d205723a17 resolving m prefix/ESMStore movement 2012-11-05 18:02:47 +04:00
greye
2057f5619e move ESMStore to MWWorld 2012-11-05 17:18:01 +04:00
greye
3c2ce25f5f m prefix for mwworld/cellstore.hpp 2012-11-05 16:07:59 +04:00
emoose
accf8b2f71 Updated Bug #430 fix so it only moves the player now 2012-11-04 23:26:26 +00:00
emoose
cadc753216 Fixed: engine: Bug #437 Stop animations when paused better fix; scene: Bug #430 Teleporting and using loading doors linking within the same cell reloads the cell
Bug #437 fix only pauses the RenderingManager, and still updates the mOcclusionQuery
Bug #430 fix is only tested in interiors (ToddTest)
2012-11-03 19:29:55 +00:00
emoose
15f972cc62 fixes: compile: cast error; doors: key id case comparison; character creation: going from CharacterCreation to BirthDialog loses data; character creation: Class/Race/BirthDialog allowing no data; code: clean up a bit
todo: going from CharacterCreation back to CreateClassDialog loses data
2012-11-02 20:33:08 +00:00
greye
7606ebafd6 resolving conflicts, minor update 2012-09-17 11:37:50 +04:00
scrawl
2f0b47fc38 test 2012-09-13 00:21:58 +02:00
scrawl
d5a08e31e7 scene does not disappear anymore during load 2012-09-11 17:36:20 +02:00
scrawl
2b339f6c0f loading screen 2012-09-11 16:37:54 +02:00
Marc Zinnschlag
88e70cb5bd Merge branch 'decouple' 2012-08-12 18:11:17 +02:00
Marc Zinnschlag
6534c2a55a Issue #107: WindowManager is accessed only through the interface class from now on 2012-08-12 18:11:09 +02:00
Marc Zinnschlag
484cce12a8 Issue #107: removed redundant getStore function from window manager 2012-08-12 14:36:46 +02:00
Marc Zinnschlag
b68f9d6a28 Issue #107: MechanicsManager is accessed only through the interface class from now on 2012-08-11 17:30:55 +02:00
greye
45306e4bc3 fixed rotation adjustment 2012-08-11 13:23:54 +04:00
greye
5018db3332 removed some redundant code, added some comments 2012-08-11 12:13:16 +04:00
greye
38b06aee6c resolving conflicts 2012-08-09 21:49:00 +04:00
Marc Zinnschlag
aca08eb4c2 Merge branch 'decouple' into player_control
Conflicts:
	apps/openmw/mwsound/soundmanagerimp.hpp
2012-08-09 16:12:10 +02:00
Marc Zinnschlag
6bd48d12af Issue #107: SoundManager is accessed only through the interface class from now on 2012-08-09 14:33:21 +02:00
greye
ec9cf4d3c6 rotateObject() added, input system rewritten 2012-08-09 00:15:52 +04:00
greye
b6f7f21bcf fix player cell assertion fail, moveObject(Ptr&, CellStore&, f, f, f) added 2012-08-08 14:51:33 +04:00
greye
f2a2e5f57d remove MWWorld::Player::setPos() 2012-07-31 19:30:24 +04:00
greye
26595f22f6 float* -> Vector3, moveToCell -> copyToCell, fixed placeObject() 2012-07-26 16:14:11 +04:00
greye
49b1d5e127 fix object placing 2012-07-25 20:31:39 +04:00
greye
e1c7d1f529 fixed item sinking 2012-07-25 20:31:39 +04:00
greye
61cb012ee7 moving Scene::insertObject to CellStore::insertObject, part 1 2012-07-25 20:31:39 +04:00
greye
b760225179 wrong branch
This reverts commit d36d6aacf4.
2012-07-24 00:00:10 +04:00
greye
d36d6aacf4 move Scene::insertObject to CellStore::insertObject, part 1 2012-07-23 23:56:20 +04:00
greye
9a2690f849 Revert "wrong"
This reverts commit 3aa53fea32.
2012-07-23 23:07:28 +04:00
greye
3aa53fea32 wrong 2012-07-23 23:06:53 +04:00
guidoj
0549e949ba Mostly removal of unnecessary #include's and a little clean up 2012-07-17 09:27:12 +02:00
Marc Zinnschlag
87667ab57e Issue #107: Ptr related include cleanup 2012-07-03 13:55:53 +02:00
Marc Zinnschlag
4c39fefd1e Issue #107: World is accessed only through the interface class from now on; some include cleanup 2012-07-03 12:30:50 +02:00
Marc Zinnschlag
7fcd41c69d Issue #107: Detemplateised CellStore; some include cleanup 2012-06-29 18:54:23 +02:00
Marc Zinnschlag
76174098c7 Issue #107: CellStore moved from ESMS to MWWorld 2012-06-29 16:48:50 +02:00
scrawl
36d26e0681 set the camera orientation after using teleport doors 2012-05-30 15:52:39 +02:00
Marc Zinnschlag
0131c53005 Issue #176: removed enable/disable functions from MWWorld::Class 2012-05-25 17:28:27 +02:00
scrawl
1f85475536 Merge branch 'master' into inventoryGUI 2012-05-17 19:03:41 +02:00
scrawl
ae77e7b0d8 don't try to retrieve land data from non-predefined cells. 2012-05-17 18:11:34 +02:00
Marc Zinnschlag
6b74fec8ed don't do a half finished cell change, when trying to switch to an interior cell that does not exist 2012-05-17 17:13:41 +02:00
scrawl
fca9f1fc5f gold dropping works without crash, but the code needs clean up. 2012-05-16 22:56:54 +02:00
scrawl
178ad876d7 fix for objects other than Miscellaneous. 2012-05-16 22:17:13 +02:00
scrawl
f73d3ad33f fix to the "drop object on ground" feature. still crashes for gold. 2012-05-16 21:27:02 +02:00
scrawl
d3e162ec83 dropping items works 2012-05-14 17:41:17 +02:00
scrawl
4655ec94f0 Merge branch 'master' into physicsaedra2 & fix warnings
Conflicts:
	apps/openmw/mwworld/scene.cpp
2012-04-30 18:46:51 +02:00
scrawl
e443455612 Merge branch 'next' of https://github.com/zinnschlag/openmw into graphics 2012-04-24 00:54:35 +02:00
Marc Zinnschlag
35f478071e Issue #255: deleted the old environment class and using the new one instead 2012-04-23 15:27:03 +02:00
scrawl
c6da3872b4 light improvements 2012-04-19 20:59:57 +02:00
scrawl
75b336baea Merge branch 'physicsaedra2' of https://github.com/jhooks1/openmw into physicsaedra2
Conflicts:
	apps/openmw/mwinput/inputmanager.cpp
	apps/openmw/mwworld/player.cpp
	libs/openengine/bullet/physic.cpp
2012-04-18 13:43:15 +02:00
Jason Hooks
4d07ae7fe0 Swimming working 2012-04-18 00:13:38 -04:00
scrawl
f2fae770d4 Merge branch 'master' into physicsaedra2
Conflicts:
	apps/openmw/mwworld/player.cpp
2012-04-13 13:55:13 +02:00
scrawl
052cc47ee9 fixed waterAdded 2012-04-03 16:53:33 +02:00
scrawl
c0af3c7241 Merge branch 'master' into terraincollision
Conflicts:
	apps/openmw/mwworld/scene.cpp
2012-04-02 19:57:58 +02:00
scrawl
c5f044eb0d fixed compilation 2012-03-28 22:46:29 +02:00
scrawl
58f7a03626 Merge branch 'terrain18' into terraincollision
Conflicts:
	apps/openmw/mwworld/scene.cpp
2012-03-28 21:46:52 +02:00
scrawl
e6303fc3f4 Merge branch 'master' into water
Conflicts:
	apps/openmw/CMakeLists.txt
	apps/openmw/mwrender/renderingmanager.hpp
2012-03-28 21:37:20 +02:00
Jason Hooks
51fb9e67cd Merge 2012-03-18 21:31:31 -04:00
scrawl
91d2031eb7 first attempt at map window 2012-03-16 17:09:31 +01:00
scrawl
2edd7e59f4 some fixes and facilities for saving the fog of war to disk 2012-03-14 20:44:06 +01:00
scrawl
9612ce595b Merge branch 'master' of https://github.com/zinnschlag/openmw into terraincollision
Conflicts:
	CMakeLists.txt
2012-03-13 17:09:50 +01:00
scrawl
fa68be2b19 set map window cell name 2012-03-10 16:05:12 +01:00
scrawl
5b38b17baf local map rendering (nothing to see yet, as it is not displayed in GUI) 2012-03-10 15:28:18 +01:00
scrawl
f79bf1f300 fog 2012-02-26 13:13:29 +01:00
Jason Hooks
38a0d1d1c5 Merging in master 2012-02-19 15:39:12 -05:00
Jason Hooks
2d0e83a2cf Reversing changes 2012-01-30 00:06:29 -05:00
Jason Hooks
9c73fa6b6d Physics sort of fixed 2012-01-29 17:50:51 -05:00
Marc Zinnschlag
16bc374921 animation updates were hooked up to the wrong update function 2012-01-23 14:33:06 +01:00
Jason Hooks
e1aba44da6 Switching cells in exterior works 2012-01-22 16:38:10 -05:00
Jason Hooks
ec94ecacaf Zinis branch merge 2012-01-22 15:02:38 -05:00
Jason Hooks
a0838369b2 Very basic exterior water 2012-01-21 20:05:08 -05:00