Commit Graph

4752 Commits (99061345cc652d827e4a1dea9af49958ef207f6e)

Author SHA1 Message Date
Alexei Dobrohotov 53f91a3aa5
Merge pull request #3018 from akortunov/emplace
Use emplace_back instead of push_back
4 years ago
AnyOldName3 449506fef1 Attempt to explain what shadowsbin is doing 4 years ago
Andrei Kortunov 64ba81ecf2 Fix some issues, found by CoverityScan 4 years ago
Andrei Kortunov 00503d86e1 Try to disable CoverityScan warning in code with explanation 4 years ago
AnyOldName3 5869ac71e3 Merge all composing variables, not just those in destination already
This resolves a regression where the local openmw.cfg doesn't exist, so
we fall back to the global openmw.cfg, but because we've not loaded
anything from the local openmw.cfg, there are no variables with which to
merge.
4 years ago
psi29a 3ccb424faf Merge branch 'nifstuff' into 'master'
Try to fix macOS build

See merge request OpenMW/openmw!378
4 years ago
Alexei Dobrohotov 7e521788e9 Try to fix build 4 years ago
psi29a fa9278e25b Merge branch 'boost_min_ver' into 'master'
set minimal boost version; remove #ifdef boost version checks

See merge request OpenMW/openmw!376
4 years ago
psi29a ff6f0413f0 Merge branch 'nifstuff' into 'master'
Minor NIF fixes and cleanup

See merge request OpenMW/openmw!377
4 years ago
Bret Curtis 175e29af00
Merge pull request #3022 from akortunov/shaders
Allow to assign custom shaders to nodes
4 years ago
Alexei Dobrohotov 4fc5e22e9e NIF fixes and cleanup
Get rid of NodeIndexHolder
Use unsigned 32-bit type for NIF record index
Fix calculation of the number of UV sets
4 years ago
Bret Curtis 4032b754e4 set minimal boost version; remove #ifdef boost version checks 4 years ago
Alexei Dobrohotov a78aa6b22c Merge branch 'nipixeldata' into 'master'
Clean up palettized NiPixelData loading

See merge request OpenMW/openmw!374
4 years ago
Andrei Kortunov 660df19ff7 Allow to assign custom shaders to nodes 4 years ago
unknown 71e78c66cd Re-add missing includes removed in 5a824d0333 4 years ago
Alexei Dobrohotov 71056c6014 Clean up palettized NiPixelData loading 4 years ago
Bret Curtis 0e0c091e15 add more optionals and casserts for windows 4 years ago
Bret Curtis 4a54d375cc add cassert for windows 4 years ago
Bret Curtis f6bead88a9 purge boost/optional.hpp headers 4 years ago
Bret Curtis 62b0781f7d use std::optional instead of boost::optional 4 years ago
psi29a 957a1425d1 Merge branch 'cleanup_1' into 'master'
Cleanup 1

See merge request OpenMW/openmw!365
4 years ago
psi29a fb63f8058f Merge branch 'hash' into 'master'
Rewrite compressed BSA hash calculation again

See merge request OpenMW/openmw!368
4 years ago
Alexei Dobrohotov 45c155b054 Rewrite compressed BSA hash calculation again 4 years ago
AnyOldName3 f7dddb8857 Merge branch '3' of https://gitlab.com/bzzt/openmw into shadows-bin
This won't actually work.
4 years ago
AnyOldName3 538314b03a Make path settings have path type 4 years ago
AnyOldName3 f57851587d Fix edge case where FallbackMap has no comma 4 years ago
AnyOldName3 ce0966b9b7 Improve validate implementation 4 years ago
AnyOldName3 350f6e61f7 Move FallbackMap validator implementation to source file 4 years ago
AnyOldName3 8b28b6e55e Compose BSA, context and script blacklist lists
These would only take their value from the highest priority source, so
specifying `openmw --content anExtraEsp.esp` would override all the
content files in the user cfg file, and the user cfg file would override
any in the global/local one.
4 years ago
AnyOldName3 fca8634b74 Remove debugging lines 4 years ago
AnyOldName3 cf81f1bbb7 Make composing variables compose in the expected order 4 years ago
Bret Curtis 5aa053c53e components/compiler/streamerrorhandler.cpp needs sstream for MacOS 4 years ago
Bret Curtis e51ca542d4 components/config cleanup 4 years ago
Bret Curtis 5a824d0333 components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 4 years ago
Bret Curtis 5475e696c8 components/bullethelpers cleanup; removed warnings by using override 4 years ago
Bret Curtis d826fbdadf components/bsa cleanup 4 years ago
AnyOldName3 6c311f4a3d Partially revert 3a912485
While it solved the bug it was supposed to, it caused a regression where
the user config could no longer override the global config.
4 years ago
fredzio 1357bba0a0 Use some C++17 where it makes the code more readable
Also replace boost::optional
4 years ago
Bret Curtis 82431b752d removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd 4 years ago
WW d39aef3f5a Changed `LZ4F_dctx*` to `LZ4F_decompressionContext_t` for better compatibility. 4 years ago
Alexei Dobrohotov 1492ba4a53 Link against LZ4::LZ4 4 years ago
Alexei Dobrohotov 66d2b9c195 Add Skyrim SE BSA version support
Fix embedded file name loading
4 years ago
Andrei Kortunov 065ed5138e Use emplace_back instead of push_back 4 years ago
Andrei Kortunov d7fadc933f Fix override warning with MyGUI 3.4 4 years ago
Bret Curtis 8050882baf
Merge pull request #3015 from akortunov/overrides
Mark overrided methods as overrides
4 years ago
AnyOldName3 df178ed97c Merge branch 'container-regressions' into 'master'
Fix container regressions

See merge request OpenMW/openmw!346

(cherry picked from commit b0aee6f83d4cddb0116284b197913f9687dd9cee)

95e7a22d fix container regressions
4 years ago
Andrei Kortunov 8ca3c3b123 Mark overrided methods by override keyword 4 years ago
psi29a c16fa27407 Merge branch 'async-physics' into 'master'
Async physics

See merge request OpenMW/openmw!248
4 years ago
fredzio 3c2504b442 Process movement queue in one or several background threads
Before movement calculation, the main thread prepare a
vector of ActorFrameData, which contains all data necessary to perform
the simulation, and feed it to the solver. At the same time it fetches
the result from the previous background simulation, which in turn is
used by the game mechanics.
Other functions of the physics system (weapon hit for instance)
interrupt the background simulation, with some exceptions described
below.

The number of threads is controlled by the numeric setting

[Physics]
async num threads

In case 'async num threads' > 1 and Bullet doesn't support multiple threads,
1 async thread will be used. 0 means synchronous solver.
Additional settings (will be silently switched off if async num threads = 0)

[Physics]
defer aabb update

Update AABBs of actors and objects in the background thread(s). It is not an especially
costly operation, but it needs exclusive access to the collision world, which blocks
other operations. Since AABB needs to be updated for collision detection, one can queue
them to defer update before start of the movement solver. Extensive tests on as much
as one installation (mine) show no drawback having that switched on.

[Physics]
lineofsight keep inactive cache

Control for how long (how many frames) the line of sight (LOS) request will be kept updated.
When a request for LOS is made for the first time, the background threads are stopped to
service it. From now on, the LOS will be refreshed preemptively as part of the background
routine until it is not required for lineofsight keep inactive cache frames. This mean
that subsequent request will not interrupt the background computation.
4 years ago
fredzio 4ea07639b8 Unbreak build with cmake < 3.12
This reverts commit 3cadc16f88.
4 years ago
Assumeru 72549651e0
Rework container resolution (#3006)
* Rework container resolution

* add optional argument to getCount

* remove now-redundant changes

* undo worldimp changes

* move save-fixing code to InventoryState

* replace Rng instances with Seeds
4 years ago
Bret Curtis c99be77a32
Merge pull request #3008 from akortunov/strings
Rework fixed strings handling
4 years ago
psi29a 82736f013d Merge branch 'objectlib' into 'master'
Convert components to an object library.

See merge request OpenMW/openmw!342
4 years ago
psi29a 9a912486f9 Merge branch 'deprecated-exception' into 'master'
Use C++11 exception specification

See merge request OpenMW/openmw!343
4 years ago
fredzio 3cadc16f88 Convert components to an OBJECT library. It saves space in the object
directory (about 1G on an optimized build on Windows and BSD).
Build should run somewhat fast as well.
4 years ago
Bret Curtis 11c938b176
Merge pull request #3011 from elsid/navmesh_fixes
Navmesh fixes
4 years ago
fredzio 460e69e92a Get rid of warning: dynamic exception specifications are deprecated 4 years ago
Alexei Dobrohotov 05cd005b30 Fix NiTriStripsData loading 4 years ago
Alexei Dobrohotov 9f08dc9968 Revert "Merge branch 'skinning' into 'master'"
This reverts merge request !327
4 years ago
elsid 7591d45008
Use memcpy to create navmesh key
Implementation with memcpy is ~13 times faster.
4 years ago
elsid f637dc38bd
Add cached flag to update navmesh status 4 years ago
elsid eb140ed15f
Write unknown status numeric value 4 years ago
elsid 7d73e73cad
Consider tile as not removed when it is not found 4 years ago
Alexei Dobrohotov 6be808e301 RigGeometry: convert some pairs to structs 4 years ago
psi29a ee22081ae1 Merge branch 'nifgobrrrr' into 'master'
More NIF stuff

See merge request OpenMW/openmw!324
4 years ago
psi29a bca698d951 Merge branch 'shader_line_numbering' into 'master'
Correctly resetting line numbering during shader processing.

See merge request OpenMW/openmw!317
4 years ago
Alexei Dobrohotov df1014303d Add more generic extra data NIF types 4 years ago
Alexei Dobrohotov 302d8eed27 Clean up Roll- and FlipController implementation 4 years ago
Alexei Dobrohotov 0d02a3392a Clean up 4 years ago
Alexei Dobrohotov e7c37f21b7 Add NiFloatInterpController abstraction 4 years ago
Andrei Kortunov 822764d0fa Rework fixed strings handling 4 years ago
Alexei Dobrohotov 29ccb09da5 Introduce some extended NIF definitions 4 years ago
Mads Buvik Sandvei d5450a7d88 Correctly resetting line numbering during shader processing. 4 years ago
Alexei Dobrohotov 4e22c2687f niffile.cpp cleanup 4 years ago
psi29a 4faaa86449 Merge branch 'cyclic_includes' into 'master'
More accurate detection of cyclic includes

See merge request OpenMW/openmw!281
4 years ago
AnyOldName3 a338e8c561 Actually set the uvSet value
This got lost when uvSet was made into a local variable.
4 years ago
AnyOldName3 390fb4f12e Disable OpenGL Debug stuff when SDL doesn't provide the necessary definitions 4 years ago
psi29a 22c3588d0d Merge branch '4771-and-4631' into 'master'
Try lower MSAA level if the requested value isn't available

Closes #4471 and #4631

See merge request OpenMW/openmw!297

(cherry picked from commit b3db387512340a5e9a77427c2d7d9d88c2340056)

da0aef7a Retrieve SDL OpenGL attributes after context creation
a51e63b3 Try lower MSAA levels if OpenGL context doesn't have what we requested
c4e92a0a Update CHANGELOG.md
4 years ago
psi29a 87028e1640 Merge branch 'flipping-heck' into 'master'
Make NiFlipControllers only affect base texture

Closes #2069

See merge request OpenMW/openmw!301
4 years ago
AnyOldName3 3f61ff3a44 Make OpenGL debugging optional 4 years ago
AnyOldName3 441c09578a Merge remote-tracking branch 'origin/khr_debug' into khr_debug 4 years ago
AnyOldName3 b2cb98d30e Fix NiFlipController
NiFlipControllers *always* affect the base texture, even if no base
texture is bound. When no base texture is bound, they default to UV set
zero and to having wrapped UV coordinates, instead of using the settings
for the disabled base texture.
4 years ago
AnyOldName3 85b5fdee35 Discard the alpha channel of 16-bit TGAs, just like Morrowind 4 years ago
Andrei Kortunov 9f1fbd56a3 Fix SummonKey comparison function 4 years ago
Andrei Kortunov 67eace1028 Use struct instead of tuple 4 years ago
Andrei Kortunov 924f634bda Support for multiple summons with same ID in the single spell 4 years ago
psi29a f90a049702 Merge branch 'movement_refactoring' into 'master'
Refactoring related to "smooth movement"

See merge request OpenMW/openmw!285

(cherry picked from commit 6eaf0a389d5aed3b74ab1a7cf89574612f964bdf)

e847b4c8 Split getSpeed() to getMaxSpeed() and getCurrentSpeed()
a96c46bc Refactor calculation of movement.mSpeedFactor
03ee9090 Use getMaxSpeed instead of getCurrentSpeed where it makes sense.
a178af5c Create helper functions `normalizeAngle` and `rotateVec2f`
4 years ago
AnyOldName3 fd14dad789 const osg::ref_ptf reference should be faster than value as constructor and destructor are non-trivial
I played around in GodBolt and got into an argument to determine this. The difference will be immeasurably small, but my curiosity has been satisfied.
4 years ago
AnyOldName3 707204133d Double-buffer shadow uniforms that change each frame 4 years ago
AnyOldName3 ce98d7053b Double buffer view-dependent data stateset 4 years ago
AnyOldName3 98b2d5d921 Make shadow debug HUD thread-safe
* Double buffer the frustum uniforms.
* Don't mess with the debug geometry's StateSet.
* Change two-element vectors to arrays so the size is explicit.
4 years ago
Andrei Kortunov 215ddb9106 Do not print warnings for VisController 4 years ago
Bret Curtis 05a19f4f93
Merge pull request #2984 from Capostrophic/optimizer
Avoid optimizing animated shapes once again (regression #5565)
4 years ago
Bret Curtis 30b8e6eda9
Merge pull request #2987 from Capostrophic/bezier
Add quadratic interpolation for scalars and vectors (part of #2379)
4 years ago
Capostrophic aa131262ea Implement quadratic interpolation for scalars and vectors 4 years ago
Capostrophic 35de34c019 Don't clamp GeomMorpherController recovered weight value
Seems that Morrowind doesn't do it.
4 years ago
Capostrophic a211527b4b Fix AppVeyor warnings 4 years ago
Mads Buvik Sandvei 0d6be9bd18 More accurate detection of cyclic includes 4 years ago
Capostrophic 8c213cbfb1 Avoid optimizing animated shapes once again (regression #5565) 4 years ago
Mads Buvik Sandvei 045b4566dd Merge branch 'master' into 'resize_breaks_window' 4 years ago
Mads Buvik Sandvei 2ed12a398d addLineDirectivesAfterConditionalBlocks move check for npos to catch all npos 4 years ago
Capostrophic 3d31d21bc2 Don't encapsulate NIF transformation changes
Currently that causes issues
4 years ago
Evil Eye 6ad20ec9c7 Mutate base records when adding/removing spells 4 years ago
Capostrophic 46825e8a4d Move NIF record index back to a separate user object
This makes sure it's never erroneously optimized out. NodeIndexHolders don't need to be cloned as their record index is never supposed to be changed.
5 years ago
Capostrophic f93655e803 Encapsulate NIF transform changes in NifOsg::MatrixTransform 5 years ago
Capostrophic ad87289d59 Fix NifOsg::MatrixTransform constructor inheritance 5 years ago
Capostrophic cc791af0f5 Serialization fixes
Make sure NifOsg::MatrixTransform serialization behaves as intended
Add a dummy serializer for NifOsg::UVController
5 years ago
Capostrophic 3b55d657e5 CopyRigVisitor: Log the number of parents in multiple parents error 5 years ago
Capostrophic a61267f57d Replace NodeUserData with a custom transform node 5 years ago
Capostrophic 4c9cefefdd Get rid of NifOsg::CollisionSwitch 5 years ago
psi29a fc7266d4ee Merge branch 'Improve-cell-name-autocompleter-implementation' into 'master'
#5520 Improve cell name autocompleter implementation

See merge request OpenMW/openmw!267
5 years ago
Cédric Mocquillon 2e27de027e Add members in AdvancedPage class to avoid memory leak when the list of cells names is updated as we recreated a completer at each notification event 5 years ago
Petr Mikheev 8cdc7031f5 Support vectors in settings.cfg 5 years ago
Mads Buvik Sandvei 90c3089370 Update sdlvideowrapper.cpp 5 years ago
Mads Buvik Sandvei 8323f7f68d Alternative fix 5 years ago
Mads Buvik Sandvei 8aa57a745a Fix 5 years ago
Bret Curtis f47d2bb8af make sure we use case-sensative BULLET_ prefix 5 years ago
Bret Curtis 67c2f0b26c
Merge pull request #2951 from elsid/sound_object_pool
Store SoundManager sounds and streams in object pool
5 years ago
Bret Curtis 0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
Replace OpenThreads by std types
5 years ago
Bret Curtis 28d85e4030
Merge pull request #2926 from akortunov/warnfix
Use QMultiMap instead of QMap
5 years ago
elsid 02f9b44f01
Use RAII for object ptr from pool 5 years ago
elsid 6ca29c6107
Use common type for pool of sounds and streams 5 years ago
elsid 56bc462007
Make all stats fit into the window 5 years ago
Frederic Chardon f268bc13f1 Do not set particle lifetime to 0 (#5472) 5 years ago
Andrei Kortunov ef6fe8d52a Fix crash in the stateset updater (regression #5478) 5 years ago
Andrei Kortunov d0fe15b095 Use meaningful names instead of mSkill1 and mSkill2 5 years ago
elsid 40ad87bc4d
Replace OpenThreads by std types 5 years ago
elsid 3251687a3d
Use std types for WorkQueue 5 years ago
Andrei Kortunov 487bfed672 Use QMultiMap instead of QMap 5 years ago
Bret Curtis 61a5c6125d #5480: Drop Qt4 support and require Qt 5.12 or later. 5 years ago
Cédric Mocquillon 6e397e4008 Add a search function to the "Datafiles" tab of the OpenMW launcher 5 years ago
psi29a f94ca28dbe #5463: Optimizer fix, problem was indeed related to tangents not being transformd properly. 5 years ago
Andrei Kortunov 6357bc3dad Catch MyGUI exceptions in the FontLoader destructor 5 years ago
Andrei Kortunov 808c905e1f Initialize fields to avoid undefined behaviour 5 years ago
Andrei Kortunov 0e810c8d32 Fix cell borders color 5 years ago
Bret Curtis c944acf26b
Merge pull request #2913 from akortunov/warnfix
Get rid of ECLD and dependencies
5 years ago
psi29a 1724099d34 Merge branch 'mingw' into 'master'
Fix mingw Windows build

See merge request OpenMW/openmw!213
5 years ago
Andrei Kortunov d1a3cc98ff Get rid of ECLD and dependencies 5 years ago
psi29a 66b5cf9f1d Merge branch 'master' into 'near_far_mode_in_launcher'
# Conflicts:
#   files/settings-default.cfg
5 years ago
Bret Curtis b5a2e809cd
Merge pull request #2911 from unelsson/fixdaematerialseq
Use sequenced texture units with .dae/collada
5 years ago
Andrei Kortunov 805d826d5b Fix Clang warnings about invalid overrides 5 years ago
Nelsson Huotari 5bc44cf2ee Use sequenced texture units with .dae/collada 5 years ago
psi29a 0dc7715c35 Merge branch 'object_paging_retry' into 'master'
Object Paging

See merge request OpenMW/openmw!209
5 years ago
elsid 00197e1cd9
Optimize recast mesh size by vertex deduplication 5 years ago
Bret Curtis 0d1b7fd3f0
Merge pull request #2908 from Capostrophic/uvsets
Remove 63 UV set limit
5 years ago
Capostrophic 6f94848dec Remove 63 UV set limit (now 65535) 5 years ago
elsid b095ca6c86
Use actor speed to define area cost for pathfinding 5 years ago
elsid 439588d10e
Remove unused mOffMeshConnectionIds 5 years ago
bzzt lost a hitlab login 26ab176389 profiling
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt lost a hitlab login daa2761c2d alphablending & billboardfix
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago