Commit Graph

26951 Commits (f85053d78c7d21484bcf49d75ab2a9fce5ce79f3)
 

Author SHA1 Message Date
AnyOldName3 cd37504d0e Resave hint variables to cache so they'll still exist after a reconfigure 3 years ago
Evil Eye 013043ee6e Update changelog 3 years ago
Langerz82 303082f6b4 Finish turning before attacking 3 years ago
wareya 6d98866be0 Merge remote-tracking branch 'upstream/master' 3 years ago
Evil Eye 5fbfbb3d84 Merge branch 'clamp' into 'master'
Make better use of std::clamp

See merge request OpenMW/openmw!1357
3 years ago
cody glassman 04692e6012 blackscreen fix 3 years ago
Alexei Dobrohotov 7a0c13fcf8 Make better use of std::clamp 3 years ago
Alexei Kotov 7509ea0e05 Merge branch 'rtd' into 'master'
Fix most of reStructuredText warnings

See merge request OpenMW/openmw!1351
3 years ago
Alexei Kotov 9e2b132508 Merge branch 'dont_linger_weather' into 'master'
Stop lingering weather effects (#6387)

See merge request OpenMW/openmw!1349
3 years ago
Alexei Kotov 3ce6c5e444 Merge branch 'rm_duplicate_to_osg' into 'master'
Remove duplicated implementation of Misc::Convert::toOsg

See merge request OpenMW/openmw!1354
3 years ago
elsid 6b30d375fa
Replace detournavigator includes by forward declarations 3 years ago
elsid 9f808fbe3a
Move findPath-like navigator functions into a separate header 3 years ago
elsid 5e99454cc4
Add factory functions to create navigator implementations 3 years ago
elsid 3f80725ebe
Remove duplicated implementation of Misc::Convert::toOsg 3 years ago
elsid 5db4898bec
Fix tile bounds scaling
OscillatingRecastMeshObject::update should be called with tile bounds in real
coordinates not in navmesh. But proper scaling was done only in
RecastMeshManager::getMesh and RecastMeshManager::updateObject used tile bounds
in navmesh coordinates.

Add a new function to create tile bounds with proper scaling and pass correct
value into RecastMeshManager constructor through CachedRecastMeshManager
constuctor from TileCachedRecastMeshManager member functions.
3 years ago
psi29a b6d2c57de2 Merge branch 'new2017' into 'master'
MSVC2017 Compilation Fixes

See merge request OpenMW/openmw!1348
3 years ago
Bo Svensson 1960e976e2
refactors stringops.hpp (#3192)
With this PR we refactor `StringUtils::replaceAll` to accept `string_view` as suggested in a code comment. In addition, while we are touching this rebuild happy file, we slim it down a bit by moving a few sparingly used functions elsewhere.
3 years ago
Petr Mikheev ae84a0c9d5 Fix most of reStructuredText warnings 3 years ago
wareya d5aaa0394a Fix a missing required include 3 years ago
Bo Svensson 5debd6e25a
removes two dummy serialisers (#3212)
This PR removes dummy serialisers for `StateSetUpdater`, `NodeCallback` and the respective `META` macros that trigger serialisation requirement here.

`StateSetUpdater` and `NodeCallback` are just base classes that can not be used on their own, so there is no need to incorporate them into serialisation. These changes might have minor effects on derived classes that forget to override `className()`, `libraryName()` through `META`, but it makes hardly a difference to now serialise such classes as a dysfunctional `osg::Callback` instead of a dysfunctional `SceneUtil::NodeCallback`.
3 years ago
Bo Svensson 0371072631
removes lowerCaseInPlace (#3217)
This PR removes unneeded `lowerCaseInPlace` calls in in a hot path of `objectpaging.cpp` that are no longer necessary after PR #3197. In addition, I have been informed that these changes should by coincidence address a compiler specific compilation error we currently experience.
3 years ago
Andreas Stöckel e637d36071 Add changelog entry 3 years ago
Andreas Stöckel 3ee4aadd88 Heuristic for fading environment sounds in 3 years ago
Andreas Stöckel 1cafef7bdb Fade water sounds more softly 3 years ago
Andreas Stöckel 9cfa2eeab8 Remove hard maximum distance in the OpenAL driver
Hard sound source culling is now handled by the SoundManager.
3 years ago
Andreas Stöckel 6f2e311c58 Fade out sound sources that are no longer close
* Handle culling of all sound sources in a separate function cull3DSound
* Add two new settings Sound::sfx fade in duration and Sound::sfx fade out duration
3 years ago
Andreas Stöckel 1583252dd8 Improve sound fading
* Implement a more general SoundBase::setFade that can be used to fade to any desired
volume and not just fading out
* Implement SoundBase::setFadeout by using SoundBase::setFade
* Implement an exponential fade mode
3 years ago
Evil Eye ad44142dda Modify the content file sorting algorithm to finish in finite time when encountering circular dependencies 3 years ago
Bo Svensson cd946ea35a
removes unused recordcmp.hpp (#3214)
This PR removes an unused source file.
3 years ago
Bo Svensson 6cf74f7041
refactors ESM::Land (#3213)
With this PR we reduce coupling, simplify code, encapsulate a variable and separate actual `ESM` data from its context.
3 years ago
Bo Svensson 1979ee1491
refactors hashed std::map (#3199)
We currently apply a strange algorithm to `LightManager::mStateSetCache`. For some reason this algorithm inserts hashed keys into `std::map` in a way that fails to handle hash collisions and exhibits worse lookup complexity than `std::unordered_map`. With this PR we just use `std::unordered_map` here.
3 years ago
Bo Svensson 3042c000c6
fixes setActorFade logic errors (#3195)
* resets state updater to apply light settings (#3141)

resets state updater to apply light settings

With this PR we achieve the same effect with fewer lines of code.

* fixes LightSource logic errors

We currently update `LightSource::setActorFade` in `TransparencyUpdater`. There are several logic errors inherent in this approach:
1. We fail to update `LightSource::setActorFade` for off screen actors because their `TransparencyUpdater` cull callback is not invoked.
2. We fail to update `LightSource::setActorFade` in the instant that a `TransparencyUpdater` is removed.
3. We fail to update `setActorFade` when an `mExtraLightSource` is created after calling `Animation::setAlpha`.
With this PR we avoid such issues by updating `LightSource::setActorFade` in `Animation::setAlpha` and `Animation::addExtraLightSource` instead.
3 years ago
glassmancody.info 4c3dd1a964 remove particle node when resetting particle effect 3 years ago
wareya db04dee29d Force MSVC to build in utf-8 mode 3 years ago
elsid ec6af42fb6
Add CI job to find missing MRs 3 years ago
Bo Svensson f684c1da52
fixes assertion (#3215)
This PR fixes an assertion introduced by #3211. For some reason my build originally did not contain assertions despite passing `DEBUG` into cmake, but after deleting `CMakeCache.txt` I have now hit the assertion @glassmancody reported as well.
3 years ago
psi29a 2d3c6faec4 Merge branch 'conditional_push_builds' into 'master'
Add support for daily builds

See merge request OpenMW/openmw!1314

(cherry picked from commit 50ea9869528c984b8ea66864fa08f5f710734eff)

1ee18b88 Update .gitlab-ci.yml file
603b0ad8 Update .gitlab-ci.yml
a69cc468 Update .gitlab-ci.yml
3 years ago
Bo Svensson fac84b5dd3 restores ESM::Dialogue order (#3209)
With this PR we restore the previous order of `ESM::Dialogue` entries implicitly changed by PR #3197. In the future we may want to consider additional verification and documentation of `mShared` order inconsistencies. We might additionally consider applying this sorting in the particular code that requires it.
3 years ago
psi29a c9f3c27dc7 Merge branch 'phys_perf_test' into 'master'
Help bullet optimize collisions with very complex collision meshes by making small collision tests if possible

See merge request OpenMW/openmw!1317
3 years ago
Bo Svensson 4657c655b1 refactors parentFileIndices (#3211)
This PR aims to start addressing `ESM` design issues that have silenced errors we incorporated into groundcover `ESM` loading approaches.

- We move the resolution of `parentFileIndices` from `ESMStore` to `ESMReader` as suggested in a `TODO` comment.
- We improve a highly misleading comment which downplayed the significance of `parentFileIndices`.
- We document important preconditions.
- We move a user facing error message to the highest level and improve its context.
- We remove an inappropriate `setGlobalReaderList` method. We now pass this reader list into the method that requires it.
- We remove a thoroughly pointless optimisation of `Store<ESM::LandTexture>`'s construction that has unnecessarily depended on `getGlobalReaderList`.

There should be no functional changes for `master`, but this PR should remove an issue blocking PR #3208.
3 years ago
psi29a a5bfec610c Merge branch 'refactor_bullet_nif_loader' into 'master'
Refactor BulletNifLoader

See merge request OpenMW/openmw!1344
3 years ago
elsid 2b057f5c15
Expect nif node children to have parent 3 years ago
elsid 19843af704
Combine data check with data handling logic 3 years ago
elsid 4e8e8304aa
Avoid mesh allocation when data is invalid 3 years ago
elsid 4ac83f4c39
Add separate function to handle NiGeometry node
To force use a single source of data. All fields of Nif::Node are available in NiGeometry.
3 years ago
elsid 56eef691a8
Use reference type to pass nif node as argument where nullptr is not handled 3 years ago
elsid 4631d95739
Add more tests for BulletNifLoader 3 years ago
psi29a 523289c531 Merge branch 'refactor_bullet_shape' into 'master'
Refactor bullet shape

See merge request OpenMW/openmw!1333
3 years ago
psi29a 4ff4afd50b Merge branch 'lua_callback' into 'master'
Refactoring. Lua `Callback` is moved from apps/openmw/mwlua to components/lua.

See merge request OpenMW/openmw!1334
3 years ago
psi29a cb3ab21c13 Merge branch 'recast_mesh_object' into 'master'
Store holder only in parent RecastMeshObject

See merge request OpenMW/openmw!1332
3 years ago