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

2794 commits

Author SHA1 Message Date
Arthur Moore
c66fd69c47 Fix #include error 2015-11-27 21:20:54 -05:00
Arthur Moore
4c0c20b1a0 Changed relative includes to library header format 2015-11-27 21:01:28 -05:00
scrawl
30cc633f2c Missing include fix 2015-11-27 22:21:01 +01:00
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.
2015-11-27 21:57:24 +01:00
scrawl
177a6f4a68 Launcher: ensure to clear previous settings when reloading settings 2015-11-27 20:52:29 +01:00
scrawl
ace4cfc0a8 Fix 'duplicate setting' errors when running installation wizard 2015-11-27 20:32:45 +01:00
Marc Zinnschlag
7cc950ed64 Merge remote-tracking branch 'origin/master' 2015-11-27 10:34:22 +01:00
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.
2015-11-27 03:22:52 +01:00
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%.
2015-11-26 23:56:32 +01:00
cfcohen
7605912ece Merge branch 'master' of https://github.com/OpenMW/openmw into config_writer_changes 2015-11-26 00:57:21 -05:00
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.
2015-11-25 21:30:04 -05:00
scrawl
8a3ec14bc6 Revert "Merge remote-tracking branch 'sandstranger/opengles'"
This reverts commit cc9cab6fd1, reversing
changes made to da856eed95.
2015-11-25 19:22:48 +01:00
Marc Zinnschlag
ef68e2aec4 Merge remote-tracking branch 'origin/master' 2015-11-25 19:18:17 +01:00
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.
2015-11-25 13:17:03 -05:00
scrawl
1b77428c59 Use const reference, thanks ace13 2015-11-24 03:42:35 +01:00
cfcohen
6882e6451a Remove tabs. :-[ 2015-11-23 20:18:39 -05:00
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.
2015-11-23 20:17:26 -05:00
sandstranger
16c6816a6f add forgotten file for building on opengles 2015-11-23 20:42:30 +03:00
sandstranger
69acacefff openmw building on Android with Opengl es 2015-11-23 20:28:35 +03:00
scrawl
38510a56c2 GeomMorpherController: do not dirty the MorphGeometry unless necessary 2015-11-22 21:24:00 +01:00
scrawl
0d49c7fa51 GeomMorpherController: fix double update of MorphGeometry 2015-11-22 21:23:46 +01:00
scrawl
28b20428b9 Remove dynamic_cast in GeomMorpherController 2015-11-22 20:33:22 +01:00
scrawl
94e8560bf8 RigGeometry: do not allocate new NodePath every frame 2015-11-22 20:01:09 +01:00
scrawl
6d5aa272fc RigGeometry: do not update the geomToSkelMatrix more than once per frame 2015-11-22 19:54:27 +01:00
scrawl
75a464f7ec Fix a typo 2015-11-22 19:54:27 +01:00
scrawl
fc7456e0a1 Explicitely opt for float matrices in performance critical places 2015-11-22 19:54:27 +01:00
scrawl
ffea9ec2c4 Remove comment
SharedStateManager::prune is run automatically during the update traversal.
2015-11-22 19:54:26 +01:00
scrawl
62169a7039 Use a single-precision PositionAttitudeTransform in speed critical places 2015-11-22 19:54:26 +01:00
scrawl
36e91617c9 Revert "NifOsg::Emitter: ignore psToWorld scale"
This reverts commit 7c16630874.

Fixes #3022
2015-11-19 22:09:32 +01:00
scrawl
9b96fcc224 Set the particle scaleReferenceFrame to local space 2015-11-19 15:49:42 +01:00
scrawl
3bd2aaddea Adjust PulseSlow light controller (Fixes #1963) 2015-11-18 23:14:01 +01:00
scrawl
0bdfd1b0d7 Ignore Creature INDX subrecords
Found in some .ess files, not sure what they mean.
2015-11-18 16:47:03 +01:00
scrawl
d68ea994d5 Deal with empty meshes 2015-11-17 01:51:21 +01:00
scrawl
83e9a649e5 Cleanup 2015-11-17 01:45:38 +01:00
scrawl
e62470d674 Auto-generate the collision shape for native mesh formats 2015-11-17 00:20:15 +01:00
scrawl
8cf57ef6ac Move BulletShapeManager and BulletShape to resource/ 2015-11-17 00:20:15 +01:00
scrawl
eb2f16d682 Support for loading .osg mesh format 2015-11-16 23:26:43 +01:00
scrawl
21e25f4756 Use the traversalNumber as frame number 2015-11-16 20:03:45 +01:00
scrawl
52901ec10c Do not create terrain geodes when built with OSG 3.4 2015-11-16 15:11:20 +01:00
Marc Zinnschlag
de98ee0062 Merge remote-tracking branch 'scrawl/esm_rewrite' 2015-11-14 14:25:08 +01:00
scrawl
38c155c579 Tests: add dialogue_merging_test (requires some data files) 2015-11-14 00:27:59 +01:00
scrawl
054c3eb24e Do not deep copy PrimitiveSets when build with OSG 3.5 2015-11-13 20:39:44 +01:00
scrawl
fc8e40889d Move common subrecord definitions (NAME, DELE) to defs.hpp 2015-11-13 18:07:18 +01:00
scrawl
b8e11cf197 Merge commit 'pull/upstream/678' into HEAD
Conflicts:
	apps/esmtool/record.cpp
	apps/opencs/model/doc/savingstages.cpp
	apps/opencs/model/world/land.cpp
	apps/opencs/model/world/land.hpp
	apps/opencs/model/world/landtexture.cpp
	apps/openmw/mwworld/store.cpp
	components/esm/loadland.cpp
	components/esm/loadland.hpp
2015-11-13 01:34:36 +01:00
scrawl
7c16630874 NifOsg::Emitter: ignore psToWorld scale
Seems wrong to me, but MW appears to do it that way. Without this fix, the light_de_candle_08_64 from http://www.nexusmods.com/morrowind/mods/41654/ has flame particles in the wrong spot.
2015-11-13 00:23:00 +01:00
scrawl
a29d1ace2b Read NiSpotLight 2015-11-12 23:45:12 +01:00
scrawl
ba211ad9ad Read NiPointLight (Fixes #3011) 2015-11-12 23:42:17 +01:00
scrawl
0965a9059d Handle NiLODNode using osg::LOD (Fixes #3008) 2015-11-12 19:52:36 +01:00
scrawl
626281977e Read NiLODNode (Bug #3008) 2015-11-12 19:52:32 +01:00
scrawl
b4ce73f179 Rotations: remove LocalRotation
This never existed in vanilla MW in the first place. The reason we got confused was because of a strange behaviour where the order of applying rotations changes as soon as a script touches the object's rotation.
2015-11-12 01:16:37 +01:00
Marc Zinnschlag
b04a23bf43 Merge remote-tracking branch 'origin/openmw-37' into openmw-37 2015-11-11 19:55:42 +01:00
scrawl
1edcb219a7 Leak fix 2015-11-11 16:27:17 +01:00
scrawl
fc93dc6195 Remove a stray method declaration 2015-11-11 01:32:31 +01:00
MatthewRock
a662a00c62 Fixing bug for merchant 2015-11-10 19:18:02 +01:00
scrawl
7776c49fc1 GraphicsWindowSDL2: adjust the log levels 2015-11-10 18:42:59 +01:00
scrawl
0409e5a043 Use OSG_VERSION_GREATER_EQUAL / LESS_THAN rather than MIN_VERSION_REQUIRED (cosmetic change) 2015-11-10 18:28:58 +01:00
scrawl
f1ac408f35 Place Drawables directly in the scene graph when built with OSG 3.4
OSG 3.4 adds the ability to place Drawables directly in the scene graph, without a Geode decorating them. Leveraging this should give a small performance boost, because the redundant Geodes increase culling overhead.

There is still an oustanding issue with the RemoveDrawableVisitor no longer working correctly, because Drawables can have multiple parents.
2015-11-10 18:23:42 +01:00
scrawl
35459f20d5 Refactor lighting mask 2015-11-10 17:23:12 +01:00
scrawl
91583fc027 Fix MWRender::Mask_ParticleSystem 2015-11-10 17:00:33 +01:00
Alexander "Ace" Olofsson
37158df339 Update scalinglayer.cpp
MSVC Explicitly requires <algorithm> for std::min and/or max
2015-11-10 14:59:26 +01:00
scrawl
bd8332d2b0 Remove default copyop argument for nodecallback copy constructors
Works around a compiler warning with OSG 3.4:

warning: base class 'class osg::Callback' should be explicitly initialized in the copy constructor [-Wextra]

With no default argument for osg::CopyOp&, the compiler no longer sees the function as a real copy constructor and stops warning about the missing virtual initializations.

We don't care about this warning because there is nothing interesting to initialize in the osg::NodeCallback base anyway.

A proper fix for the warning would require to inserting OSG_VERSION conditional compiling all over the place, that is as long as we are still supporting OSG 3.2.
2015-11-09 18:57:17 +01:00
scrawl
1200ff9186 RigGeometry: fix incorrect bounding box in the first frame
The default computeBound() was overriding the manually set bounding box.
2015-11-09 18:31:41 +01:00
scrawl
64abdbabe3 Small refactor of controllers handling, print warning messages for unhandled controllers 2015-11-09 17:42:35 +01:00
scrawl
35f5be680b Support for NiVisController on trishape nodes 2015-11-09 17:42:35 +01:00
Marc Zinnschlag
af5a1bc16b Merge remote-tracking branch 'origin/master' 2015-11-09 09:07:37 +01:00
Marc Zinnschlag
b61b732207 fixed an interference with script warning mode and error downgrading (Fixes #2990) 2015-11-09 09:07:18 +01:00
scrawl
79b3f1e6a8 Small cleanup 2015-11-08 18:30:22 +01:00
scrawl
59aee04ddb Implement ScalingLayer, for layouting of widgets in screen-relative coordinates 2015-11-08 18:30:21 +01:00
scrawl
57b9eafa0f osgMyGUI: implement AdditiveLayer 2015-11-07 17:45:22 +01:00
scrawl
51f3a8fec6 osgMyGUI: move Platform methods to the .cpp file 2015-11-07 17:39:31 +01:00
scrawl
7ff168b787 osgMyGUI: add support for layers to insert custom rendering state 2015-11-07 17:33:32 +01:00
scrawl
0210b87ffc Revert "Fix LightSource crash"
This reverts commit f336c6db87.

Root cause should be fixed in next commit.
2015-11-06 23:14:27 +01:00
scrawl
72252d4f32 Terrain: restore IncrementalCompileOperation 2015-11-06 20:22:07 +01:00
scrawl
7ca8e45d5d Terrain: remove debug code 2015-11-06 20:21:39 +01:00
scrawl
ef18f4217f Terrain: create 4x4 terrain chunks per ESM::Cell to improve performance
Improves performance because the number of splatting layers per chunk is reduced, and finer grained frustum culling can be done.
2015-11-06 20:14:57 +01:00
scrawl
95cf13e3f2 Terrain: make the blendmapSize and layerTileSize in FixedFunctionTechnique configurable 2015-11-06 15:23:37 +01:00
Marc Zinnschlag
e081eb2c34 Merge remote-tracking branch 'origin/master' 2015-11-05 07:56:57 +01:00
Marc Zinnschlag
7239481672 Merge remote-tracking branch 'scrawl/scrawl-patch-2' 2015-11-05 07:53:08 +01:00
scrawl
c996702b56 Fix some uninitialised variables found by static analysis 2015-11-04 20:34:50 +01:00
scrawl
f7d0d06134 Compiler: remove unused mNameStartingWithDigit 2015-11-04 20:31:23 +01:00
scrawl
c23609e22b Cache the light list in LightListCallback
When multiple cameras are rendering, the later cameras can reuse the light lists from the first camera.
2015-11-04 00:19:15 +01:00
scrawl
fd1ccd21ff Disable freezeOnCull for weather particles 2015-11-02 23:49:22 +01:00
scrawl
5ca0ae5232 Don't add the same AlphaFader to multiple nodes 2015-11-02 23:38:34 +01:00
scrawl
f336c6db87 Fix LightSource crash 2015-10-29 00:51:35 +01:00
scrawl
49df6b7450 LightManager: fix incorrect view matrix for RELATIVE_RF cameras 2015-10-23 21:25:56 +02:00
scrawl
6dff11f847 Duplicate code fix 2015-10-23 18:16:26 +02:00
scrawl
8552a9d82c Add multiple camera support to LightManager 2015-10-23 01:58:22 +02:00
scrawl
2ee6b41887 Handle NiAlphaProperty on a drawable basis
Removes the RenderBin nesting complication. Also results in leaner StateSets, so the cull phase should be a bit faster.
2015-10-19 15:46:53 +02:00
Marc Zinnschlag
8eb6d337d5 deal with script execution from within a script (Fixes #2964) 2015-10-09 12:14:56 +02:00
Emmanuel Anne
b911abd7d8 add a few more possible arguments to choice
this fixes some travel dialogs for "Antares Big Mod"
2015-10-07 12:28:35 +02:00
Marc Zinnschlag
435e52306a adjusted a workaround for names starting with digits that interfered with some numerical expressions written without spaces 2015-09-26 11:34:46 +02:00
Marc Zinnschlag
ae54f34f25 removed a redundant else and made unary + work also in the console 2015-09-26 11:30:35 +02:00
Marc Zinnschlag
2158bfe285 Merge remote-tracking branch 'zelurker/scripts_unary_plus' 2015-09-26 11:25:40 +02:00
scrawl
8e69c80bf6 Add framenumber checks in various cull callbacks, so we don't update more than once per frame when multiple cameras are used 2015-09-26 01:21:33 +02:00
Emmanuel Anne
dace7ab706 scripts: recognize '+' also as a unary operator
it fixes the armor sorter in "Blades safe house.esp"
2015-09-25 14:22:57 +02:00
Alexander "Ace" Olofsson
7d4125d97f Fixes for building with unity build 2015-09-24 15:21:42 +02:00
scrawl
f7e5a40143 Fix typo 2015-09-21 17:58:57 +02:00
scrawl
a47617c21f Fix tab indentations in apps/ and components/ 2015-09-16 20:45:37 +02:00
Marc Zinnschlag
4d94f38f4b replaced context-sensitive implementation of allowing digits at the beginning of names with a more general implementation (Fixes #1730) 2015-09-15 14:57:07 +02:00
cc9cii
192f01e3ac Set default creature scale to 1. Partially resolves bug #2880. (no creature verifier yet) 2015-09-12 10:17:14 +10:00
cc9cii
45aee1b508 Remove AI flag from the UI and instead auto-detect whether to save AIDT records. Should resolve bug #2879. 2015-09-12 10:15:32 +10:00
scrawl
5252dbcf1f Add some comments to ESM::Land 2015-09-11 21:09:54 +02:00
Marc Zinnschlag
a445683312 Merge branch 'mergetool'
Conflicts:
	apps/opencs/CMakeLists.txt
	apps/opencs/model/tools/tools.cpp
2015-09-11 13:22:15 +02:00
scrawl
76fb68a9c0 Handle particle systems that don't have emitters
Fixes a crash in the Magic Diversity mod.
2015-09-07 22:07:09 +02:00
Marc Zinnschlag
a8dc1c1198 merge land tables 2015-09-03 16:15:00 +02:00
Marc Zinnschlag
69b9eadb52 refactored loading of land data 2015-08-31 16:13:26 +02:00
Marc Zinnschlag
febf611c82 made return type of ESMTerrain::Storage::getLand const 2015-08-31 14:17:11 +02:00
Marc Zinnschlag
b0641934d4 added copy constructor and assignment operator for Land record struct 2015-08-31 11:06:32 +02:00
Marc Zinnschlag
7a96a04b75 Merge remote-tracking branch 'origin/master' 2015-08-31 09:22:19 +02:00
scrawl
e9acd135a6 Update todo comment 2015-08-30 20:43:39 +02:00
scrawl
cda8a88f0d Use DEEP_COPY_PRIMITIVES to work around problem in osg::Geometry copy constructor (Bug #2754) 2015-08-30 20:00:37 +02:00
slothlife
7817c52cbb Discard old save game weather records 2015-08-27 09:57:32 -05:00
slothlife
54fa5273dc Refactor weather transitions to act more like MW
Fixed several issues:
* Waiting/jail time/training all now properly skip remaining transitions
* ChangeWeather no longer permanently sets the region's weather
* ChangeWeather being called during a transition now correctly queues up
another transition
* Corrected transition delta and factor calculations
* ModRegion settings are now saved
2015-08-26 22:59:21 -05:00
scrawl
af3b0cd883 Improve some error messages 2015-08-21 00:31:43 +02:00
Nikolay Kasyanov
166df28906 OS X cursor workaround build fix 2015-08-19 21:23:16 +02:00
scrawl
4a68ceaeb7 Restrict the OS X cursor workaround to Intel graphics systems 2015-08-19 19:06:24 +02:00
scrawl
67bd6cd708 Remove empty line at the beginning of files
git ls-files -z | xargs -0 sed -i '1{/^$/d}'
2015-08-18 23:06:12 +02:00
scrawl
af5ffa5548 Don't warn about SDL touch events 2015-08-15 22:53:29 +02:00
scrawl
47ac20af40 Workaround flipped cursor on OS X 2015-08-15 22:28:59 +02:00
Marc Zinnschlag
cbf9f83b85 allow use of IDs as function arguments, even if the ID matches a keyword (Fixes #2830) 2015-08-05 17:20:01 +02:00
scrawl
16b8ef3164 Don't use a shared Material in MaterialColorController 2015-07-31 00:01:55 +02:00
scrawl
de479e35c8 Fix AlphaController affecting all instances of the StateSet 2015-07-30 23:51:37 +02:00
Alexander "Ace" Olofsson
1f78ebd3c9 Oops? 2015-07-30 12:22:51 +02:00
Alexander "Ace" Olofsson
77a3a52b4e What's wrong with this statement? 2015-07-30 12:16:15 +02:00
Alexander "Ace" Olofsson
e9ffbcc1b0 OSG 3.3.3 moves GL extensions out of osg::Texture 2015-07-30 11:45:10 +02:00
scrawl
5d3ad13868 Merge pull request #696 from EmperorArthur/verbose_errors
Be more descriptive when the NIF loader does not handle something.
2015-07-29 15:32:01 +02:00
Marc Zinnschlag
be1692f218 Merge remote-tracking branch 'origin/master' 2015-07-29 14:46:23 +02:00
Marc Zinnschlag
20106bb90f allow keywords in quotes (Fixes #2794) 2015-07-29 14:45:56 +02:00
Arthur Moore
2d93a6f6cb Be more verbose when dealing with unhandled nif texture properties 2015-07-28 18:46:11 -04:00
scrawl
d7ad0ee148 Print a sensible error message when S3TC support is missing (Fixes #2800) 2015-07-28 23:35:10 +02:00
scrawl
3a7d0d8dc8 Remove a file that isn't in use yet from build 2015-07-28 23:34:55 +02:00
Stanislav Bas
f9b0b7ede5 Make saving of deleted ESM records more consistent 2015-07-28 21:37:21 +03:00
scrawl
26656707dd Use marker_error.nif as replacement when a mesh fails to load 2015-07-28 03:21:44 +02:00
scrawl
ac1f64b559 Fix StencilProperty front face mixup (Fixes #2802) 2015-07-28 03:20:18 +02:00
Stanislav Bas
9a8ca81907 Fix missing break in switch statement 2015-07-26 13:54:36 +03:00
scrawl
b3f5ac5dbb Include cleanup 2015-07-25 02:11:49 +02:00
Stanislav Bas
daaff1284e Remove unused includes 2015-07-22 22:18:26 +03:00
Stanislav Bas
4a16eba716 Make deleted flag a parameter of load/save methods (instead of a record member) in ESM records 2015-07-22 19:26:00 +03:00
Stanislav Bas
1e8182220a Fix build errors & warnings 2015-07-19 23:44:16 +03:00
Stanislav Bas
f5745749a6 Remove <cstdint> include file from loaddial.cpp 2015-07-19 22:50:42 +03:00
Koncord
7924ecef3e Fix definition conflict 2015-07-19 23:37:20 +09:00
Stanislav Bas
5fd48efd28 Some refactoring. Remove unused code 2015-07-19 14:58:14 +03:00
Stanislav Bas
e65ff723ce More ESM records have DELE handling.
Changed records: Race, Land, Pathgrid, StartScript, DebugProfile, Filter
2015-07-19 14:58:13 +03:00
Stanislav Bas
ad353e6dd0 Refine DELE handling in ESM records. Add position-independent DELE search 2015-07-19 14:57:59 +03:00
Marc Zinnschlag
b3ad983f1f Merge remote-tracking branch 'scrawl/version'
Conflicts:
	apps/openmw/mwgui/windowmanagerimp.cpp
2015-07-18 12:22:37 +02:00
Marc Zinnschlag
edde1fb727 Merge remote-tracking branch 'scrawl/master' 2015-07-18 11:40:36 +02:00
scrawl
f09e4620b6 Move OpenMW version information to a textfile instead of compiling it in
Now we don't need to recompile 3 .cpp files and re-link whenever the current git HEAD changes.
2015-07-18 03:09:04 +02:00
slothlife
420789baa9 Remove an unused include 2015-07-17 15:26:04 -05:00
slothlife
1b3cc957f8 Move some OSG static library setup code 2015-07-17 15:13:43 -05:00
scrawl
41bed4c7d9 Use multimap to speed up custom map marker code 2015-07-17 20:49:10 +02:00