Commit Graph

2718 Commits (d6bd2cb1f054a19de4a23f847e30847e5a5ad3d5)

Author SHA1 Message Date
scrawl 462ef617ce Don't read forward/backward values for Quaternion key lists
https://forum.openmw.org/viewtopic.php?f=8&t=3201&p=35867#p35867
9 years ago
scrawl 8e9571d155 Double buffer the light StateAttributes and StateSets
Fixes a race condition where the position of a light could jump a frame ahead.
9 years ago
scrawl 1f8ee9b8d1 StateSetUpdater: use the frameNumber
More robust in case a node is updated twice in the same frame (e.g. because it has multiple parents).
9 years ago
scrawl f22982d251 Merge pull request #835 from sandstranger/opengles1
enable opengl es1
9 years ago
scrawl eb458bf9c8 Fix inactive RigGeometry not rendering correctly 9 years ago
sandstranger 7d374b36fd change cmake variables 9 years ago
Marc Zinnschlag 06efd72a89 allow keywords as strings in messagebox instruction (Fixes #2991) 9 years ago
sandstranger 238a5824be add custom new variable fot Qt 9 years ago
sandstranger bd5057aa3c enable opengl es1 9 years ago
scrawl 647bed7f40 Do not read openmw.cfg from global path if one was found in the local path 9 years ago
scrawl 87e44bf627 Small fix 9 years ago
scrawl d3fa8a8602 Add osgDB::ObjectCache to the repository to work around it not being available in OSG 3.2 9 years ago
scrawl a29aef14f1 Eliminate a dynamic_cast in ParticleSystemController 9 years ago
scrawl 6cf2c35235 Don't rely on the _particles vector implementation details
This will allow compiling OpenMW with an osgParticle optimization to be pushed to OpenMW/osg.
9 years ago
scrawl 3d12b2ca9d Add NifFileManager to avoid duplicate parsing of the NIFFile in SceneManager and BulletShapeManager. 9 years ago
scrawl c9d710f334 Use a typedef to avoid conditional compiling 9 years ago
Alexander "Ace" Olofsson cfcbd20d99 Let's put it as a MSVC-only fix for now 9 years ago
Alexander "Ace" Olofsson e42f4999bd Quick fix for building on MSVC 9 years ago
scrawl e5ec4fe042 Add const specifier 9 years ago
scrawl 695fcf41c4 Optimize ValueInterpolator / KeyframeController
Cache the current position in the animation track and attempt to reuse it in the next frame.

Decent speed up for the Update phase, about 0.3 ms faster in Balmora.
9 years ago
scrawl ac366f1603 Fix the rig bounds being updated twice per frame
Unlike what I expected, the osgUtil::UpdateVisitor is set to traverse all children (not only active children). The FrameSwitch was thus traversing both RigGeometries part of the double-buffering scheme, rather than only the one active in the current frame.
9 years ago
scrawl e49bce7b40 Share the bvh of btBvhTriangleMeshShape's when possible
Results in decent cell-loading speed up. (only affects bullet versions < 2.83, since we use btScaledBvhTriangleMeshShape for >=2.83)
9 years ago
scrawl d5a738bd39 Apply 27e669296e (locale-unaware tolower) to more code
In particular, the one in VFS::normalizeFilename was affecting cell loading performance.
9 years ago
scrawl f962ce0bbe Don't link against unnecessary OSG libraries 9 years ago
Marc Zinnschlag 2bef714d34 Merge remote-tracking branch 'emperorarthur/no_relative' 9 years ago
Arthur Moore c66fd69c47 Fix #include error 9 years ago
Arthur Moore 4c0c20b1a0 Changed relative includes to library header format 9 years ago
scrawl 30cc633f2c Missing include fix 9 years ago
scrawl 35fa1f5865 Not found Land Textures are no longer a fatal error (Bug #3037)
Log warning message and show the default texture when encountering invalid ESM::LandTexture references.
9 years ago
scrawl 177a6f4a68 Launcher: ensure to clear previous settings when reloading settings 9 years ago
scrawl ace4cfc0a8 Fix 'duplicate setting' errors when running installation wizard 9 years ago
Marc Zinnschlag 7cc950ed64 Merge remote-tracking branch 'origin/master' 9 years ago
scrawl 27e669296e StringUtils: use the locale-unaware tolower function
There is no change in behaviour since we were using the C locale.

The locale-aware tolower is much slower than the locale-unaware one. At least on Linux/GCC it calls dynamic_cast's, and is overall slower by an order of magnitude.
9 years ago
scrawl fbee32729a Cache CellId
ESM::Cell::getCellId() was allocating a string on every call. This caused functions dealing with cellIds to be unnecessarily expensive.

For example, World::moveObject spent almost as much time comparing CellIds as it did updating Bullet's AABB after the move. OpGetDistance was by far the most expensive script instruction because it has to compare cellIds.

The total cost of getCellId() relative to the frame loop was about 0.3%.
9 years ago
cfcohen 7605912ece Merge branch 'master' of https://github.com/OpenMW/openmw into config_writer_changes 9 years ago
cfcohen ad5eaaa705 Update the OpenMW Launcher so that it only writes changed values to
the user settings.cfg file.  Add a helpful header to the top of new
settings.cfg files.  Remove old code involve whitespace management
that didn't work correctly anayway, and doesn't matter since we're not
adding comments to the file.  Remove "automatically generated"
comments.
9 years ago
scrawl 8a3ec14bc6 Revert "Merge remote-tracking branch 'sandstranger/opengles'"
This reverts commit cc9cab6fd1, reversing
changes made to da856eed95.
9 years ago
Marc Zinnschlag ef68e2aec4 Merge remote-tracking branch 'origin/master' 9 years ago
cfcohen 67c4b17581 Commit files that I thought wre in the previous commit. :-[ I'm
accustomed to the hg behavior of commiting all modified files by
default.
9 years ago
scrawl 1b77428c59 Use const reference, thanks ace13 9 years ago
cfcohen 6882e6451a Remove tabs. :-[ 9 years ago
cfcohen 9a975a2e68 Substantial rewrite of code to save settings.cfg file, allowing
comments to persist, ordering of settings to be retained, additional
reporting of changed settings, preservation of the settings.cfg
timestamp when no changes are made, and foundational changes for
possible future features.  Due to poor interaction with the
openmw-launcher settings code, the launcher will still discard all of
these benefits.
9 years ago
sandstranger 16c6816a6f add forgotten file for building on opengles 9 years ago
sandstranger 69acacefff openmw building on Android with Opengl es 9 years ago
scrawl 38510a56c2 GeomMorpherController: do not dirty the MorphGeometry unless necessary 9 years ago
scrawl 0d49c7fa51 GeomMorpherController: fix double update of MorphGeometry 9 years ago
scrawl 28b20428b9 Remove dynamic_cast in GeomMorpherController 9 years ago
scrawl 94e8560bf8 RigGeometry: do not allocate new NodePath every frame 9 years ago
scrawl 6d5aa272fc RigGeometry: do not update the geomToSkelMatrix more than once per frame 9 years ago
scrawl 75a464f7ec Fix a typo 9 years ago