Commit Graph

6200 Commits (4db96186d201dc86b6f3699b0315058109576ef2)

Author SHA1 Message Date
Petr Mikheev 1240b60a24 Console command `reloadlua` also reloads l10n used by Lua scripts 3 years ago
uramer 6c9c832927 Lua UI: Support autosized multiline text 3 years ago
ζeh Matt d5ec959449
Create platform component for platform specific things 3 years ago
psi29a 5aeee0a520 Merge branch 'threading_gone_wrong' into 'master'
[Postprocessing] Fix race condition when techniques are dirtied

See merge request OpenMW/openmw!1979
3 years ago
psi29a 5725b5a29c Merge branch 'close_lights' into 'master'
[Postprocessing] Pass sorted lights and ones with associated geometry

See merge request OpenMW/openmw!1976
3 years ago
Evil Eye 10e4eb8e8e Append orphaned dialogue instead of always appending it 3 years ago
glassmancody.info acc209c294 fix threading issue when dispatching frame dependent data 3 years ago
elsid 9c93de65be
Show groundcover loading progress 3 years ago
psi29a c7449dc272 Merge branch 'bullet_includes' into 'master'
Clean up bullet includes

See merge request OpenMW/openmw!1974
3 years ago
glassmancody.info 8146b05c92 pass only lights with visible geometry 3 years ago
glassmancody.info 327b8ecdcb pass sorted lights to light postprocess light buffers 3 years ago
Petr Mikheev a70d5831c5 Lua scripts configuration in omwaddon 3 years ago
psi29a 58fd560ce9 Merge branch 'esm_readers_cache' into 'master'
Limit the number of simultaneously open not actively used content files (#6756)

Closes #6756

See merge request OpenMW/openmw!1966
3 years ago
psi29a 70f0aae14d Merge branch 'const_sRecordId' into 'master'
Make the sRedcordId constexpr

See merge request OpenMW/openmw!1973
3 years ago
psi29a 22ad2615e3 Merge branch 'mygui_includes' into 'master'
Clean up MyGUI includes

See merge request OpenMW/openmw!1972
3 years ago
jvoisin 72a6d1f69f Clean up bullet includes 3 years ago
jvoisin df0cd86cf4 Use the proper types 3 years ago
jvoisin 6c71071083 Make the sRedcordId constexpr 3 years ago
jvoisin 33c66e3d5e Merge branch 'light_origin' into 'master'
Attach lights at origin when missing AttachLight node

Closes #6794

See merge request OpenMW/openmw!1970
3 years ago
Cody Glassman ce49aa1202 Attach lights at origin when missing AttachLight node 3 years ago
Cody Glassman bc0eed9843 [Postprocessing] Typos in docs and state attributes 3 years ago
jvoisin 0cc304e659 Clean up MyGUI includes
This should improve incremental compilation.
3 years ago
jvoisin 075ecc8558 Merge branch 'minor_simp_multidircoll' into 'master'
Minor simplification in multidircollection.cpp

See merge request OpenMW/openmw!1963
3 years ago
elsid 3affe9913f
Limit the number of simultaneously open not actively used content files
Use LRU cache for ESMReaders. When cache capacity is reached close least
recently used ESMReader. Remember the file name if a reader was open. Once the
reader requested again open the file if there is stored name for it. Put
released ESMReader to the back of the free items list. Close ESMReader's from
the front of the free items list.

Cached item can be used only by one client at the same time. If the same item is
requested twice exception is thrown. This should never happen in practice. If
this happens need to fix the client logic.

It's allowed to go over the capacity limit when requesting different readers.
Ideally this should never happen but there will be system error anyway
signalizing about too many open files. Need to fix client logic in this case.

All places that were using a vector of ESMReaders now using the cache. Cache is
local for each use case and there is no need for a thread safety.
3 years ago
jvoisin a204f392c9 Minor simplification in multidircollection.cpp 3 years ago
Petr Mikheev 23f1d21e48 Make the behaviour of `omw.weatherTransition` in omwfx more reasonable 3 years ago
glassmancody.info 4dee9acd1e fill bars to postprocess hud 3 years ago
Cody Glassman 447b586d7d [Postprocessing] Fix a couple awkward issues with Lua API 3 years ago
AnyOldName3 e24a85419a Merge branch 'master' into 'master'
When building Win32 (VS 2019), there are problems in line 45.

See merge request OpenMW/openmw!1953
3 years ago
jvoisin 4366ec11fc Merge branch 'blank_is_bad' into 'master'
0 initialize mRecordFlags

Closes #6719

See merge request OpenMW/openmw!1949
3 years ago
psi29a 1712a8779c Merge branch 'remove_moar_booooost' into 'master'
Remove boost:: constructs

See merge request OpenMW/openmw!1948
3 years ago
Evil Eye bb495bffeb 0 initialize mRecordFlags 3 years ago
jvoisin aeb3733e57 Remove boost:: constructs
Namely boost::scoped_array and boost::to_lower_copy.
3 years ago
psi29a fc24ffcaab Merge branch 'folllllllowup' into 'master'
Replace a `c_str()` with an `native()`

See merge request OpenMW/openmw!1938
3 years ago
Evil Eye a95b6e050a Replace new with make_unique in components 3 years ago
jvoisin bd5ccaac3c Followup to 21efb74b58 3 years ago
jvoisin 21efb74b58 Remove even most boost:: 3 years ago
psi29a d74ee0f3fe Merge branch 'postprocess_hud' into 'master'
[Postprocessing] Improve HUD

See merge request OpenMW/openmw!1933
3 years ago
cody glassman 424b828ff8 add ability to use display names 3 years ago
cody glassman 11845e7d9b improve layout of postprocessor hud 3 years ago
jvoisin cb226e00f9 Remove some more of boost:: 3 years ago
Petr Mikheev 29328867dc Merge branch 'moar_noboost' into 'master'
Remove even more of boost::filesystem

See merge request OpenMW/openmw!1927
3 years ago
jvoisin 4e4debb1cb Remove even more of boost::filesystem 3 years ago
psi29a a14285bff5 Merge branch 'light_tweaks' into 'master'
[Postprocessing] Tweaks to light collection

See merge request OpenMW/openmw!1928
3 years ago
cody glassman 30a64ee82a move to world space, fix bug with uniform size updates 3 years ago
jvoisin 6feb92a9bf Remove boost::filesystem from a couple of files 3 years ago
psi29a a737b05d84 Merge branch 'faster_toLower' into 'master'
Improve the speed of toLower

See merge request OpenMW/openmw!1889
3 years ago
glassmancody.info a987b01717 don't resize user defined samplers to power of 2 3 years ago
jvoisin 998f1c960e Improve the speed of toLower
This significantly improves the speed of my fuzzer,
by something like 15%.
3 years ago
Petr Mikheev a4b23aad05 Validate l10n context name 3 years ago
elsid 5b592e09e6
Log more information when navmeshtool fails on not enough space 3 years ago
cody glassman 6093cb5f2c postprocessing lua api extensions 3 years ago
psi29a e3f891c0b0 Merge branch 'fix_boost' into 'master'
Fix build with lld linker

See merge request OpenMW/openmw!1903
3 years ago
psi29a f17d7fc00b Merge branch 'string_view' into 'master'
Make getStringLiteral return a string_view

See merge request OpenMW/openmw!1896
3 years ago
jvoisin fb732d74a2 Remove boost::filesystem from bsatool 3 years ago
elsid ea295a2ac3
Fix build with lld linker
Boost.Filesystem started to depend on Boost.Atomic on 1.77.0 version but lld
can't find library on its own:

libboost_atomic.so.1.79.0 => not found
3 years ago
psi29a 8dd3e53a30 Merge branch 'string_view' into 'master'
Move a couple of files from `const std::string&` to `std::string_view`

See merge request OpenMW/openmw!1901
3 years ago
Evil Eye ac78b537d2 Address feedback 3 years ago
Petr Mikheev 7f8d433775 Initialize log recorder right after initializing the logging 3 years ago
elsid ea107bdd53
Remove unused boost include 3 years ago
jvoisin 02cafc3b98 And one more 3 years ago
jvoisin 9ce26ef4b6 Move to_utf8 from `const std::string&` to `std::string_view` 3 years ago
jvoisin 23eccebe9e Convert esmtool from `const std::string&` to `std::string_view` 3 years ago
Evil Eye 15fda78ddf Include string 3 years ago
Evil Eye e79f803402 Change includes 3 years ago
Matt 395de4b251 Refactor PostProcessor code 3 years ago
Evil Eye c6ca0e78c9 Make getStringLiteral return a string_view 3 years ago
uramer 1fe794d935 Changing setting renderer arguments 3 years ago
uramer 9042f47f0a Use an anonymous namespace in element.cpp 3 years ago
uramer 5d7fc0ab17 Limit maximum Lua UI layout depth to prevent stack overflow 3 years ago
psi29a d4e2000d5b Merge branch 'render_targets' into 'master'
Bind custom render targets per pass

See merge request OpenMW/openmw!1884
3 years ago
glassmancody.info 3d03052717 dont bind rendertargets unless we use them, otherwise texture limit will be reached quickly 3 years ago
psi29a b9b4f1c3c2 Merge branch 'console_log' into 'master'
In-game log viewer

See merge request OpenMW/openmw!1799
3 years ago
psi29a d3f331793e Merge branch 'sol' into 'master'
Update sol. Replace combined sol.hpp with loose files.

See merge request OpenMW/openmw!1851
3 years ago
ζeh Matt 18f16eac4c
Refactor DetourNavigator to pass prng along, use world prng for AiWander 3 years ago
elsid 18d05c8f1a
Use proper variable to check in if condition 3 years ago
psi29a 2f75acc34e Merge branch 'navmesh_render_update_frequency' into 'master'
Add navmesh debug render mode to show update frequency

See merge request OpenMW/openmw!1685
3 years ago
psi29a bbcdac6b18 Merge branch 'fix_mygui_data_manager_includes' into 'master'
Add includes for used types and functions (#6744)

See merge request OpenMW/openmw!1870
3 years ago
elsid 215b46503c
Support rendering for navmesh update frequency as a heatmap
Useful when need to find tiles with high number of updates.

Add debug Lua package with new functions to toggle render mode and set navmesh
render mode.
3 years ago
cody glassman 915eaa4c91 highp is not available in version 120 3 years ago
elsid 5f2e282359
Add includes for used types and functions 3 years ago
Petr Mikheev cf49b46d64 Show logs in the debug window
Some part of UI code is written by @andrew-app
3 years ago
Alexei Kotov 8140cceb3e Merge branch 'construct_me_not' into 'master'
Address feedback on !1857

See merge request OpenMW/openmw!1865
3 years ago
Petr Mikheev 7ee796b481 Merge branch 'fix_pairs' into 'master'
Fix Lua pairs and ipairs

See merge request OpenMW/openmw!1864
3 years ago
Evil Eye 134dc2b21b Address feedback on !1857 3 years ago
psi29a f092d8da9a Merge branch 'post_malone' into 'master'
Post Processing

See merge request OpenMW/openmw!1124
3 years ago
uramer 22994af728 Fix Lua pairs and ipairs 3 years ago
psi29a dd0e0fea72 Merge branch 'lua_strict_index' into 'master'
[Lua] makeStrictReadOnly for enums

See merge request OpenMW/openmw!1859
3 years ago
psi29a d8eb9d6818 Merge branch 'smooth_my_nodes' into 'master'
Better support BSPArrayController

See merge request OpenMW/openmw!1858
3 years ago
psi29a 65c95d97c3 Merge branch 'disable_navmeshdb_write_on_lock' into 'master'
Disable writes to navmeshdb on database is locked error

See merge request OpenMW/openmw!1837
3 years ago
Petr Mikheev 7ccbf95503 [Lua] makeStrictReadOnly for enums 3 years ago
cody glassman 72fdf40e06 better support for particle arrays when spawning at node positions 3 years ago
Petr Mikheev d16fa553c8 Fix LuaUtil::Callback 3 years ago
cody glassman dae0914820 workarounds for gl4es 3 years ago
cody glassman ac6089a430 skip flipping of 3D textures which is unsupported in OSG 3 years ago
cody glassman 0cb63ca4e6 experimental point light bindings 3 years ago
cody glassman 04843fed6d moddable post-processing pipeline 3 years ago
Evil Eye c0cc5feecd Initialize DialInfo::DATAstruct with the proper blank values 3 years ago
uramer 1766f89c4d Fix a typo 3 years ago
uramer 52d05be04b Styling for Settings 3 years ago
ShadIK02 9649bfc4cb When building Win32 (VS 2019), there are problems in line 45.
This change solves the problem.

Special thanks to AnyOldName3 for the hint :)
3 years ago
uramer e92c88a133 Make the documentation clearer, match the documentation when no buttons are pressed for an event 3 years ago
elsid a75c7c49f0
Disable writes to navmeshdb on database is locked error
Simultaneously writing to sqlite3 database is not possible. Process exclusively
locks the database for this. Another process will fail to perform any request
when database is locked. Alternatively it can wait. Handling this situation
properly requires complexity that is not really needed. Users are not expected
to run multiple openmw processes simultaneously using the same navmeshdb.

Before this change running multiple openmw processes using the same navmeshdb
can lead to a crash when first transaction fails to start because there is
exception thrown and not catched.

Remove use of explicit transactions from DbWorker. Handling all possible
transaction states due to different errors brings unnecessary complexity.
Initially they were introduced to increase time between flushes to disk. This
makes sense for navmeshtool because of massive number of writes but for the
engine this is not an issue.
3 years ago
cody glassman ad139f2f9a rename to windowed fullscreen 3 years ago
cody glassman 05901a2480 add borderless windows, deprecate fullscreen mode 3 years ago
uramer 1f5e3b78d4 Use Flex, don't force re-renders on layout table changes 3 years ago
uramer aea2c019de Fix content names for layouts inserted with :add() 3 years ago
psi29a 49487a17e6 Merge branch 'environment' into 'master'
Make Environment a storage of referencing pointers instead of owned

See merge request OpenMW/openmw!1830
3 years ago
psi29a c0ffb289ab Merge branch 'ptmikheev-master-patch-72894' into 'master'
Fix #6731

Closes #6731

See merge request OpenMW/openmw!1832
3 years ago
elsid 79676aee15
Make Environment a storage of referencing pointers instead of owned
Engine controls lifetime of managers therefore it should own them. Environment
is only access provider.

This allows to avoid redundant virtual calls and also some functions from
managers base classes can be removed if they are used only by Engine.
3 years ago
Petr Mikheev 70c7f1880d [Lua] pairs and ipairs for ObjectList (resolves #6732) 3 years ago
Petr Mikheev 86d6ab593e Fix #6731 3 years ago
jvoisin 331363d469 Merge branch 'fix_uninit' into 'master'
Fix uninitialized coverity warnings

See merge request OpenMW/openmw!1819
3 years ago
Evil Eye a64979e25d Replace empty std::string assignments 3 years ago
uramer 03659bef86 MWUI interface (resolve https://gitlab.com/OpenMW/openmw/-/issues/6594) 3 years ago
jvoisin 143dcad0e8 Use an `if` instead of an assert 3 years ago
elsid b67a0a8f2b
Fix uninitialized coverity warnings 3 years ago
elsid 92538dde89
End SNAM record as SNAM record 3 years ago
psi29a 275bebb066 Merge branch 'Stereo-MR' into 'master'
Stereo

See merge request OpenMW/openmw!1757
3 years ago
Evil Eye 9a96d64611 Use subrecord size instead of version to load WEAT 3 years ago
madsbuvi 31a97141b7 Mac 3 years ago
madsbuvi 79577f37de Rebase artifacts + cleaned up the remaining unnecessary exposures of stereo awareness. 3 years ago
psi29a a707f5b0e0 Merge branch 'portable' into 'master'
Make OpenMW more portable (follow up of !1555)

See merge request OpenMW/openmw!1805
3 years ago
Mads Buvik Sandvei 606a795a54 multiview linker-method 3 years ago
madsbuvi dd5901d351 Initial commit
Multiview shaders.

Refactor Frustum management

Rewrite shared shadow map

cull mask should respect stereo

Stereo savegame screencap

LocalMap refactoring

use the vertex buffer hint instead of the display list patch to enable/disable display lists

Character preview fixes
3 years ago
fredzio bab5e56768 Make the launcher dara directory and bsa list play nicer with dark
themes.

Known issue: the padding icon for disabled data directories is of wrong
color.
3 years ago
Petr Mikheev c7ab67c2c1 Allow relative paths in openmw.cfg; support --replace=config. 3 years ago
psi29a 07056802eb Merge branch 'esmtool_tes4' into 'master'
Support esmtool dump for TES4

See merge request OpenMW/openmw!1800
3 years ago
psi29a dad9f24867 Merge branch 'link-shaders' into 'master'
Shader linking

See merge request OpenMW/openmw!1803
3 years ago
psi29a 66a96bfa5e Merge branch 'launcher-datadirs' into 'master'
Make launcher handle data dirs #2858 and BSA

See merge request OpenMW/openmw!192
3 years ago
madsbuvi dc3045c970 mono-only version of the shader linking system introduced in the stereo MR 3 years ago
elsid d2510284ec
Support TES4 in esmtool dump 3 years ago
elsid 4b28d51d5e
Remove virtual modifiers from ESM4 record functions
There is no need to have virtual functions.
3 years ago
elsid 2c9b6fffe5
Remove preloading logic from ESM4::Cell
This logic does not belong here. If client of ESM4::Cell needs to cache load
results it can be done separately.
3 years ago
elsid 13c970b37a
Add const modifier to encoder type 3 years ago
elsid c7ba4100e1
Remove undefined and redundant ESM4 record type constructors 3 years ago
psi29a c930aabf17 Merge branch 'fix_windows_build' into 'master'
Fix build on Windows

See merge request OpenMW/openmw!1796
3 years ago
elsid 0dcb1f5aac
Fix build on Windows
Use wrapper header over Windows.h to undefine far and near in a single place.
3 years ago
Petr Mikheev eae1e87081 [Lua] Update openmw.storage 3 years ago
psi29a f99f818c0c Merge branch 'esm4_cleanup' into 'master'
ESM4 cleanup

See merge request OpenMW/openmw!1792
3 years ago
fredzio b88d32ff5b Add 3 tabs in the "Data Files" page
1 with the data directories
2 with the BSA archives
3 with the content selector

When user select a directory to be added, first we walk the directory
hierarchy to make a list of all potential data= entries. If we find
none, the selected directory is added.

If more than one data directory is found, user is presented with a
directory list to check which one(s) are to be added.

Directories containing one or more content file are marked with an icon.

data= and fallback-archive= lines are handled like content= lines:
- they are part of the profile in launcher.cfg, prefixed by the profile
name
- they are updated in openmw.cfg when profile is selected / created

Directories can be moved in the list by drag and drop or by buttons.
Insertion is possible anywhere in the list.
Global data path and data local are shown but are greyed out, as they
are always included.

No attempt is made to ensure that the user choice are valid
(dependencies, overwrite of content).

After a profile is loaded, any added content is highlighted in green.
3 years ago
elsid 4a49bc4941
Remove undefined constructor declaration 3 years ago
elsid d71a1efa92
Rename components/esm4/acti.hpp -> components/esm4/loadacti.hpp 3 years ago
elsid d5fb2f8091
Use ESM::fourCC to define ESM4 record types 3 years ago
elsid 761a04ce00
Remove duplicated enum definition 3 years ago
elsid 3abcf3dd0d
Fix style guide 3 years ago
elsid 94c1d0cced
Use unique_ptr to store istream 3 years ago
elsid c94d8be7bf
Add generic StreamWithBuffer owning the underlying buffer 3 years ago
elsid 9d6d0c6ffb
Move ConstrainedStreamBuf into separate file 3 years ago
elsid e777e35414
Use system_clock for time in logs
high_resolution_clock may not give real time. MSVC implements it as
steady_clock that is basically CPU time which is usually desynchronized with
real time.
3 years ago
psi29a c14796fc57 Merge branch 'ncc' into 'master'
#6496 Handle NCC flag in Nif files

See merge request OpenMW/openmw!1516
3 years ago
fredzio d05a2facf3 Handle NCC flag in Nif files. Objects with this flag will collide only with camera.
Expose objects with NC flag to be used by Lua mods.
3 years ago
Evil Eye 22d02e86b0 Respect ignored flag in navmeshtool and groundcover 3 years ago
Evil Eye 61ea678a96 Implement ignored records 3 years ago
elsid fbc853804d
Fix recover from errors in Files::getHash 3 years ago
elsid b09570692e
Use ifstream for ESMReader
ESMReader reads the whole file, there is no need in the ConstrainedFileStream.
3 years ago
psi29a ea6b84ce1f Merge branch 'fix_esm_loader_prepare_records' into 'master'
Fix loading order in EsmLoader (#6671)

Closes #6671

See merge request OpenMW/openmw!1774
3 years ago
Petr Mikheev 45c9635e94 Fix getmetatable, fix pairsForReadonly, add util.loadCode, _G 3 years ago
elsid 194c11f214
Fix loading order in EsmLoader
Need to load the last present record from a sequence of loaded records. That
means reverse should be called before unique or unique should be applied for
a reversed range. Since unique keeps only the first element from a sub
sequence of equal elements.

Use forEachUnique with reversed range to avoid redundant container
modifications.
3 years ago
psi29a 9809b873a0 Merge branch 'esm_namespace_qualifiers' into 'master'
Remove ESM:: namespace qualifier in components/esm3/ and tests

See merge request OpenMW/openmw!1769
3 years ago
elsid 4447ab0ed7
Remove ESM:: namespace qualifier in components/esm3/ and tests 3 years ago
elsid 39da3bfef8
Ignore player when checking whether AiTravel destination is occupied by other actor 3 years ago
Bret Curtis 7fe6c39aa2 const the key/value 3 years ago
Bret Curtis db3f9da08a coverity fixes and other bits 3 years ago
psi29a 5820e5701a Merge branch 'refactor/shadowtechnique' into 'master'
Cleanup code in mwshadowtechnique.cpp

See merge request OpenMW/openmw!1756
3 years ago
psi29a 03806eb75e Merge branch 'esm_rm_redundant_include' into 'master'
Remove redundant include from esm3/esmreader.hpp

See merge request OpenMW/openmw!1761
3 years ago
psi29a cf1764f255 Merge branch 'constrained_file_stream' into 'master'
Avoid redundant conversion to const char* and use make_shared

See merge request OpenMW/openmw!1763
3 years ago
elsid 6481324eb1
Read when need to skip few bytes 3 years ago
elsid 5eb8c4aebe
Avoid redundant conversion to const char* and use make_shared 3 years ago
elsid db44f91fd5
Remove redundant include from esm3/esmreader.hpp 3 years ago
ζeh Matt b39aea4346
Move extremeEdges into queue instead of copying 3 years ago
ζeh Matt 19df9c3d17
Use vector for edge queue 3 years ago
elsid c3a924de23
Fix skip DATA in cell ref loading 3 years ago
ζeh Matt 0790af962e
Cleanup code in mwshadowtechnique.cpp 3 years ago
elsid 6b464a9330
Check ESMReader value size in compile time 3 years ago
Benjamin Winger 21ffbcc4b4 Lua i18n updates 3 years ago
elsid 4509b05bc8
Use std::make_shared instead of new
make_shared allocates single storage for ref counter and the object.
std::shared_ptr<T>(new T) allocates 2 storages.
3 years ago
elsid bbfdb347bd
Skip load cell ref when there is no need
Primarily to avoid temporary allocations by ESMReader::getHString.
3 years ago
elsid 7038c82690
Configure mav navmeshdb file size from the launcher 3 years ago
psi29a 1ac7eaa6b0 Merge branch 'NiFltAnimationNode' into 'master'
Add NiFltAnimationNode support

Closes #6684

See merge request OpenMW/openmw!1732
3 years ago
psi29a fc5605fc7f Merge branch 'navmeshtool_binary_log' into 'master'
Send status of navmeshtool to launcher using type binary messages

See merge request OpenMW/openmw!1630
3 years ago
psi29a f5bc78cac3 Merge branch 'lua_ui_flex' into 'master'
Lua UI Flex widget

Closes #6646

See merge request OpenMW/openmw!1743
3 years ago
psi29a 8d3d01902a Merge branch 'optimizer' into 'master'
Optimizer-related fixes

See merge request OpenMW/openmw!1744
3 years ago
Wolfgang Lieff 373776170d refactor for NiFltAnimationNode 3 years ago
Bret Curtis af41560c3f reverse the reverse flag check; set duration to 0.2f which matches openmw to morrowind speed which is measured in 1/5 seconds 3 years ago
Bret Curtis 0db5415976 refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md 3 years ago
Wolfgang Lieff ead73fce31 initial NiFltAnimationNode support 3 years ago
uramer 02bbd226b8 Less primary/secondary coordinate boilerplate in Flex 3 years ago
Petr Mikheev eca64b48e8 Bitwise operations in Lua 3 years ago
Alexei Dobrohotov eafa66ff40 Don't consider NiCollisionSwitch unoptimizeable 3 years ago
Alexei Dobrohotov 81e9212db9 Slightly optimize MergeGroupsVisitor's xenophobia 3 years ago
uramer 3c74a20335 Refactor horizontal/vertical cases in Flex 3 years ago
Alexei Dobrohotov c28f997c87 Make NiPlanarCollider finite-size 3 years ago
Alexei Dobrohotov 9d8f6064a1 Detail the unused parts of controlled.cpp defs 3 years ago
uramer 788745e004 Make coordinate calculation more robust, implement Flex widget type 3 years ago
elsid 2d5ccc804b
Exchange binary messages between navmeshtool and launcher 3 years ago
Petr Mikheev fbc84465c5 Merge branch 'futureproof_layers' into 'master'
Add layer size, make layers API more flexible

See merge request OpenMW/openmw!1724
3 years ago
psi29a 1f14f97d17 Merge branch 'navmeshdb_max_file_size' into 'master'
Limit max navmeshdb file size (#6649)

Closes #6649

See merge request OpenMW/openmw!1716
3 years ago
psi29a 1542a0392c Merge branch 'gloss' into 'master'
Gloss-mapping

Closes #6541

See merge request OpenMW/openmw!1552
3 years ago
uramer 5d1fe6c2bc Add layer size, make layers API more flexible 3 years ago
psi29a 6d55317d57 Merge branch 'refactor/prng-2' into 'master'
Save random state and refactor usage of generators

See merge request OpenMW/openmw!1715
3 years ago
psi29a d2f2393de8 Merge branch 'opacity_color_bindings' into 'master'
Bindings for image color and widget alpha (#6654)

Closes #6654

See merge request OpenMW/openmw!1723
3 years ago
ζeh Matt d7de17a1ac
Add a comment explaining the pick of the prng 3 years ago
Cody Glassman b3e0275e89 Lua UI API: Let image manager handle missing textures 3 years ago
glassmancody.info 26c7e308ed mygui bindings for color and alpha 3 years ago
ζeh Matt 5df76f5051
Remove unnecessary debug output 3 years ago
ζeh Matt f8f3bb2421
Use std::minstd_rand and split serialization from save/load 3 years ago
ζeh Matt 151770ccf1
Separate global vs world rng functions and use custom prng 3 years ago
ζeh Matt 08fae7be6e
Pass the prng from world where appropriate 3 years ago
ζeh Matt b502dc12f0
Add prng to World instance and serialize state in Save 3 years ago
uramer 8e81b6c645 Fix updating UI image resource 3 years ago
psi29a 40b1d81050 Merge branch 'order_please' into 'master'
Base dialogue order solely on mPrev

Closes #6670

See merge request OpenMW/openmw!1714
3 years ago
elsid 5b9dd10cbe
Limit max navmeshdb file size
Use "pragma max_page_count" to define max allowed file size in combination with
"pragma page_size" based on a new setting "max navmeshdb file size".

* Stop navmeshtool on the first db error.
* Disable writes to db in the engine on first "database or disk is full"
  SQLite3 error. There is no special error code for this error.
* Change default "write to navmeshdb" to true.
* Use time intervals for transaction duration instead of number of changes.
3 years ago
Evil Eye 484a7c7b7e Base dialogue order solely on mPrev 3 years ago
Petr Mikheev fa115418eb [Lua] Remove queries 3 years ago
Petr Mikheev d251c4e2a1 [Lua] Change behavior of `obj.type` 3 years ago
uramer 36c46ada6f Pass unhandled Lua UI events to the parent 3 years ago
AnyOldName3 696be1cc39 Merge branch 'fix_6589' into 'master'
Add default value for `user-data` in openmw.cfg

Closes #6589

See merge request OpenMW/openmw!1632
3 years ago
duncanspumpkin 3a117cac22 Switch to a constexpr for FourCC constant
Add static asssert on wrong size
3 years ago
jvoisin 8a182c130a Merge branch 'refactor/prng' into 'master'
Refactor and rename some things around Misc::Rng

See merge request OpenMW/openmw!1710
3 years ago
Matt 54e114d83e Avoid string copies for ESM::Variant::getString 3 years ago
ζeh Matt d83a381f79
Refactor and rename some things around Misc::Rng 3 years ago
Martin Otto 96e48e5492 Make settings loader differentiate between engine and editor (fixes #6658). 3 years ago
psi29a 3afa46b25e Merge branch 'CPP20_support' into 'master'
Support C++20

See merge request OpenMW/openmw!1705
3 years ago
Bret Curtis 6601274992 constify weakcache overloaded operators 3 years ago
psi29a 3558196098 Merge branch 'Newer-Bsa-formats-no-longer-load' into 'master'
#6651 Newer bsa formats no longer load

Closes #6651

See merge request OpenMW/openmw!1703
3 years ago
Cédric Mocquillon ff7ad93bac Avoid missusing of CompressedBSAFile with private inheritance 3 years ago
uramer 67879bac55 MR feedack 3 years ago
Cédric Mocquillon fe13fa850e Fix bug on memorystream 3 years ago
uramer a7bb87d8a1 Use StringUtils::format 3 years ago
uramer e7ed709e5e Fix Lua TextEdit skin 3 years ago
uramer fc50724f5c Render text and images correctly in templates with slots 3 years ago
uramer e092ee2624 Document the Lua Image widget, add UI texture resources 3 years ago
elsid 42d6032c8b
Support compilation with c++20 3 years ago
elsid 3c66a927d8
Fix coverity issue about uninitialized members of LevelledListBase
* Remove explicit constructor.
* Use static constexpr where possible.
* Use CRTP to get RecName.
3 years ago
elsid 595c2e0a8e
Use unique_ptr to manage AiPackage lifetime 3 years ago
elsid f516e34688
Remove used-defined constructors from ESM4 types
To avoid explicit initialization. It should happen in the load functions anyway.

* Move all non-zero initializations to corresponding class definition.
* Replace std::vector by std::array when it has constant size.
3 years ago
Petr Mikheev ff7ac7192b Merge branch 'ui_pairs' into 'master'
Implement pairs and ipairs for ui.content and ui.layers. Document all iterable types in a uniform way.

See merge request OpenMW/openmw!1643
3 years ago
uramer a1abc84f59 Implement pairs and ipairs for ui.content and ui.layers. Document all iterable types in a uniform way. 3 years ago
uramer cc6dce5443 Support controller touchpads (Resolves https://gitlab.com/OpenMW/openmw/-/issues/6639) 3 years ago
jvoisin a55f1ad103 Merge branch 'bullet_object_tool' into 'master'
Add a tool to load and print information about all bullet objects in all cells

See merge request OpenMW/openmw!1627
3 years ago
psi29a b03f9e430c Merge branch 'navmesh_disk_rm_unused_tiles' into 'master'
Add navmeshtool flag to remove unused tiles from navmesh disk cache

See merge request OpenMW/openmw!1671
3 years ago
psi29a 1c1581bdab Merge branch 'check_esm4_compilation' into 'master'
Check ESM4 compilation

See merge request OpenMW/openmw!1677
3 years ago
psi29a fd2b2e4871 Merge branch 'fix_esm4_quest_init' into 'master'
Remove user-defined constructor from ESM4::Quest

See merge request OpenMW/openmw!1676
3 years ago
psi29a dbab48d7da Merge branch 'nif' into 'master'
NIF stuff

See merge request OpenMW/openmw!1674
3 years ago
psi29a 6f5c6171dd Merge branch 'navmeshdb_sqlite_open_nomutex' into 'master'
Use SQLITE_OPEN_NOMUTEX for navmeshdb

See merge request OpenMW/openmw!1673
3 years ago
elsid 57c1f2e231
Make sure everything compiles in ESM4 3 years ago
elsid 96463cbb02
Remove malformed and unused esm4/records.hpp file 3 years ago
elsid cccfb14785
Remove user-defined constructor from ESM4::Quest
To avoid explicit initialization. It should happen in the load functions anyway.
3 years ago
Alexei Dobrohotov 54df5031b7 Add XYZ rotation axis order support 3 years ago