Commit Graph

5127 Commits (84721fb58a2691d6e557bee38527e5a8a304acbf)

Author SHA1 Message Date
elsid 36ec877a8e
Add missing include from sol/sol.hpp 4 years ago
Petr Mikheev 702eb19271 Fixes and refactoring 4 years ago
Petr Mikheev cc7dbabd19 Change argument of `onKeyPress` 4 years ago
Petr Mikheev d5cda61855 Console command "reload lua" 4 years ago
Petr Mikheev 8c6d303730 Saving/loading for Lua scripts (saves format is changed) 4 years ago
Petr Mikheev 6db2450c90 Initial support of generated RefNums with negative mContentFile. 4 years ago
Petr Mikheev b53667d555 Queries. Data structures and lua bindings. 4 years ago
Petr Mikheev 479856f812 Add components/lua/scriptscontainer and components/esm/luascripts 4 years ago
Petr Mikheev 8dbaf6022c Add components/lua/serilalization 4 years ago
Petr Mikheev 4b068b27ca Add components/lua/luastate and components/lua/utilpackage 4 years ago
elsid 5103120eef
Notify about saved screenshot
Show message about saved screenshot via schedule message box. Since screenshot
saving happens not in the main thread calling messageBox directly is unsafe.
WindowManager::scheduleMessageBox delays message box showing until next update
in the main thread.
4 years ago
elsid f7a6be053d
Stop engine work queue before destructing environment
To avoid access to null and dangling pointers from active work items on
quitting.
4 years ago
elsid f8e02000ec
Write screenshots to file asynchronously 4 years ago
elsid 33aa4d0822
Move WriteScreenshotToFileOperation to components 4 years ago
Evil Eye eced6f2126 Implement the help command 4 years ago
psi29a c372c239a6 Merge branch 'master' into 'OpenCS_Bug6017'
# Conflicts:
#   CHANGELOG.md
4 years ago
cc9cii a47ebf5c9e For consistency with TES CS, force DELE record writes to be 4 bytes (currently writes 1 byte). 4 years ago
cc9cii fea1ac2c0f Remove dead code from commit 024ad3276b. 4 years ago
cc9cii f68c81e631 Merge branch 'master' into 'OpenCS_Bug6017' 4 years ago
cc9cii 4b3de46bfa Use enums in place of magic numbers. Ensure Creature and NPC cell references are always saved as persistent. 4 years ago
Simon Meulenbeek 625744298b change setValue to replace value instead of insert 4 years ago
psi29a 94be4eba18 Merge branch 'even-fixier-alpha' into 'master'
Correctly track added and removed state to fix various alpha testing issues

Closes #6119

See merge request OpenMW/openmw!989
4 years ago
psi29a f2aeabed72 Merge branch 'navmesh_memory' into 'master'
Reduce memory usage by navmesh

See merge request OpenMW/openmw!994
4 years ago
AnyOldName3 84a9facedf Disable coverage adjustment for blended objects 4 years ago
AnyOldName3 e42b3bf960 Adapt destination alpha factor for AMD
As discussed in the comment, it's unclear to me whether this is a driver
bug or mandatory behaviour only AMD implement.

Some more context is here:
https://gitlab.com/OpenMW/openmw/-/issues/6119#note_618245903
4 years ago
elsid 09f9075842
Use RecastMeshBuilder once to create RecastMesh
This allows to move all data out of the object instead of copying.
4 years ago
elsid 0193c95b26
Shrink to fit recast mesh data 4 years ago
elsid 91cece5cc4
Define ESM::Land static constants as constexpr
To avoid linking issues.
4 years ago
AnyOldName3 0e57622bbe Correctly track added and removed state 4 years ago
elsid 94e460ba1e
Use proper check for distance
To avoid invalid results for r < 1.
4 years ago
elsid a54c4bc2e9
Check dtNavMeshQuery::findStraightPath status 4 years ago
elsid 793c30ab8d
Check dtNavMeshQuery::getPolyHeight status
Otherwise when it fails a node with zero height will be added to a path.
4 years ago
elsid 7e1630a7ad
Remove redundant getPolyHeight wrapper 4 years ago
elsid cc08a45c31
Move include where it is needed 4 years ago
elsid a3942a1e0a
Remove redundant check for y coordinate in inRange function 4 years ago
cc9cii f2a301653c Remove redundant mPersistent member from ESM::NPC and ESM::Creature, replaced by mRecordFlags. Fixed the editing of the persistence flag value. 4 years ago
jvoisin 5c02e4dddc Delete an outdated/irrelevant comment 4 years ago
Evil Eye 48f915f1fe Merge branch 'fontloader' into 'master'
Clean the fontloader's hack for polish font up

See merge request OpenMW/openmw!895
4 years ago
Petr Mikheev 890eaabd4f Merge branch 'clamp' into 'master'
Minor refactor making use of std::clamp

See merge request OpenMW/openmw!972
4 years ago
Petr Mikheev 4b98d460da Merge branch 'const_moar' into 'master'
Sprinkle some const ref

See merge request OpenMW/openmw!963
4 years ago
jvoisin 8561245fda Minor refactor making use of std::clamp 4 years ago
jvoisin 5470b3168b Use a switch-case instead of a map, on elsid@' advice
elsid@ said:

> From my measurements static map + exceptions is slower than original code
when loading polish morrowind localization by 25% with GCC 10.2.0. Switch-based
solution is about 25x times faster than the original and static map with find
only is ~20x faster.
4 years ago
jvoisin 770f91de77 Clean the fontloader's hack for polish font up
- The map can be static and const
- The map can be initialized inline
- No need to do a `find` + `[]` instead of `at`
4 years ago
cc9cii 2a76634f5f Moved persistence flag from references to the header flags of referenceables (e.g. Static, Weapon, etc). Editing widget is not fully working. 4 years ago
cc9cii 024ad3276b Partial fix for #6017. The persistence flag of the references are saved but it is not yet possible to modify it via OpenCS. 4 years ago
Evil Eye 4f264af5a9 Merge branch 'staticsload' into 'master'
Loads statics before actors II (#5379)

See merge request OpenMW/openmw!588
4 years ago
psi29a 67f32263b2 Merge branch 'fix_malexa_escape' into 'master'
Inscribe physical bounding box into navmesh agent cylinder (#6114)

Closes #6114

See merge request OpenMW/openmw!967
4 years ago
psi29a 07a7a903a7 Merge branch 'alpha-test-override' into 'master'
Ensure original (removed) state overrides replacement state when recreating shaders

Closes #6108

See merge request OpenMW/openmw!966
4 years ago
fredzio c795e0bce6 Some actors are supposed to spawn on an object that belongs to an adjacent cell.
Since actors can be active in 3x3 grid around the player, we need to
first load all objects in a 5x5 grid around the player.

Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and non-animated physics objects.

Animated objects are tied to the scene graph, which doesn't exists yet
in these cells, so we skip them.
4 years ago
AnyOldName3 2147c18cf5 Do not overwrite old removed state with old dummy state 4 years ago