1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-10-17 06:46:35 +00:00
Commit graph

5959 commits

Author SHA1 Message Date
Petr Mikheev
7ccbf95503 [Lua] makeStrictReadOnly for enums 2022-05-16 00:16:26 +02:00
cody glassman
72fdf40e06 better support for particle arrays when spawning at node positions 2022-05-15 13:41:52 -07:00
Petr Mikheev
d16fa553c8 Fix LuaUtil::Callback 2022-05-15 21:34:48 +02:00
cody glassman
dae0914820 workarounds for gl4es 2022-05-15 10:03:58 -07:00
cody glassman
ac6089a430 skip flipping of 3D textures which is unsupported in OSG 2022-05-15 10:03:58 -07:00
cody glassman
0cb63ca4e6 experimental point light bindings 2022-05-15 10:03:58 -07:00
cody glassman
04843fed6d moddable post-processing pipeline 2022-05-15 10:03:58 -07:00
Evil Eye
c0cc5feecd Initialize DialInfo::DATAstruct with the proper blank values 2022-05-15 14:52:44 +02:00
uramer
1766f89c4d Fix a typo 2022-05-14 16:55:11 +02:00
uramer
52d05be04b Styling for Settings 2022-05-14 10:27:30 +00:00
uramer
e92c88a133 Make the documentation clearer, match the documentation when no buttons are pressed for an event 2022-05-10 20:00:42 +02:00
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.
2022-05-09 22:54:46 +02:00
cody glassman
ad139f2f9a rename to windowed fullscreen 2022-05-08 22:56:39 -07:00
cody glassman
05901a2480 add borderless windows, deprecate fullscreen mode 2022-05-08 22:56:39 -07:00
uramer
1f5e3b78d4 Use Flex, don't force re-renders on layout table changes 2022-05-08 11:15:17 +02:00
uramer
aea2c019de Fix content names for layouts inserted with :add() 2022-05-08 11:15:16 +02:00
psi29a
49487a17e6 Merge branch 'environment' into 'master'
Make Environment a storage of referencing pointers instead of owned

See merge request OpenMW/openmw!1830
2022-05-08 08:47:34 +00:00
psi29a
c0ffb289ab Merge branch 'ptmikheev-master-patch-72894' into 'master'
Fix #6731

Closes #6731

See merge request OpenMW/openmw!1832
2022-05-08 08:33:43 +00:00
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.
2022-05-06 23:44:01 +02:00
Petr Mikheev
70c7f1880d [Lua] pairs and ipairs for ObjectList (resolves #6732) 2022-05-06 23:11:47 +02:00
Petr Mikheev
86d6ab593e Fix #6731 2022-05-06 19:57:41 +00:00
jvoisin
331363d469 Merge branch 'fix_uninit' into 'master'
Fix uninitialized coverity warnings

See merge request OpenMW/openmw!1819
2022-05-05 17:35:16 +00:00
Evil Eye
a64979e25d Replace empty std::string assignments 2022-05-04 22:33:39 +02:00
uramer
03659bef86 MWUI interface (resolve https://gitlab.com/OpenMW/openmw/-/issues/6594) 2022-05-03 17:36:49 +00:00
jvoisin
143dcad0e8 Use an if instead of an assert 2022-05-02 21:17:24 +00:00
elsid
b67a0a8f2b
Fix uninitialized coverity warnings 2022-05-01 18:36:16 +02:00
elsid
92538dde89
End SNAM record as SNAM record 2022-05-01 15:45:22 +02:00
psi29a
275bebb066 Merge branch 'Stereo-MR' into 'master'
Stereo

See merge request OpenMW/openmw!1757
2022-04-30 16:40:09 +00:00
Evil Eye
9a96d64611 Use subrecord size instead of version to load WEAT 2022-04-30 10:11:49 +02:00
madsbuvi
31a97141b7 Mac 2022-04-29 21:59:26 +02:00
madsbuvi
79577f37de Rebase artifacts + cleaned up the remaining unnecessary exposures of stereo awareness. 2022-04-29 17:35:24 +02:00
psi29a
a707f5b0e0 Merge branch 'portable' into 'master'
Make OpenMW more portable (follow up of !1555)

See merge request OpenMW/openmw!1805
2022-04-28 19:35:29 +00:00
Mads Buvik Sandvei
606a795a54 multiview linker-method 2022-04-28 21:09:06 +02:00
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
2022-04-28 21:05:34 +02:00
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.
2022-04-28 15:19:54 +02:00
Petr Mikheev
c7ab67c2c1 Allow relative paths in openmw.cfg; support --replace=config. 2022-04-28 00:39:41 +02:00
psi29a
07056802eb Merge branch 'esmtool_tes4' into 'master'
Support esmtool dump for TES4

See merge request OpenMW/openmw!1800
2022-04-27 21:07:25 +00:00
psi29a
dad9f24867 Merge branch 'link-shaders' into 'master'
Shader linking

See merge request OpenMW/openmw!1803
2022-04-27 21:04:08 +00:00
psi29a
66a96bfa5e Merge branch 'launcher-datadirs' into 'master'
Make launcher handle data dirs #2858 and BSA

See merge request OpenMW/openmw!192
2022-04-27 17:31:52 +00:00
madsbuvi
dc3045c970 mono-only version of the shader linking system introduced in the stereo MR 2022-04-26 19:54:24 +02:00
elsid
d2510284ec
Support TES4 in esmtool dump 2022-04-25 17:35:26 +02:00
elsid
4b28d51d5e
Remove virtual modifiers from ESM4 record functions
There is no need to have virtual functions.
2022-04-25 17:35:25 +02:00
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.
2022-04-25 17:35:25 +02:00
elsid
13c970b37a
Add const modifier to encoder type 2022-04-25 17:35:25 +02:00
elsid
c7ba4100e1
Remove undefined and redundant ESM4 record type constructors 2022-04-25 17:35:25 +02:00
psi29a
c930aabf17 Merge branch 'fix_windows_build' into 'master'
Fix build on Windows

See merge request OpenMW/openmw!1796
2022-04-25 06:38:33 +00:00
elsid
0dcb1f5aac
Fix build on Windows
Use wrapper header over Windows.h to undefine far and near in a single place.
2022-04-25 00:25:46 +02:00
Petr Mikheev
eae1e87081 [Lua] Update openmw.storage 2022-04-23 18:55:12 +02:00
psi29a
f99f818c0c Merge branch 'esm4_cleanup' into 'master'
ESM4 cleanup

See merge request OpenMW/openmw!1792
2022-04-23 15:27:28 +00:00
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.
2022-04-23 09:54:45 +02:00
elsid
4a49bc4941
Remove undefined constructor declaration 2022-04-23 01:27:45 +02:00
elsid
d71a1efa92
Rename components/esm4/acti.hpp -> components/esm4/loadacti.hpp 2022-04-23 00:40:45 +02:00
elsid
d5fb2f8091
Use ESM::fourCC to define ESM4 record types 2022-04-23 00:32:52 +02:00
elsid
761a04ce00
Remove duplicated enum definition 2022-04-23 00:32:52 +02:00
elsid
3abcf3dd0d
Fix style guide 2022-04-23 00:32:52 +02:00
elsid
94c1d0cced
Use unique_ptr to store istream 2022-04-22 18:27:17 +02:00
elsid
c94d8be7bf
Add generic StreamWithBuffer owning the underlying buffer 2022-04-22 18:27:17 +02:00
elsid
9d6d0c6ffb
Move ConstrainedStreamBuf into separate file 2022-04-22 18:27:17 +02:00
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.
2022-04-21 23:03:40 +02:00
psi29a
c14796fc57 Merge branch 'ncc' into 'master'
#6496 Handle NCC flag in Nif files

See merge request OpenMW/openmw!1516
2022-04-17 20:29:41 +00:00
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.
2022-04-17 20:03:00 +02:00
Evil Eye
22d02e86b0 Respect ignored flag in navmeshtool and groundcover 2022-04-17 09:23:09 +02:00
Evil Eye
61ea678a96 Implement ignored records 2022-04-16 16:28:39 +02:00
elsid
fbc853804d
Fix recover from errors in Files::getHash 2022-04-15 21:43:54 +02:00
elsid
b09570692e
Use ifstream for ESMReader
ESMReader reads the whole file, there is no need in the ConstrainedFileStream.
2022-04-15 02:58:57 +02:00
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
2022-04-14 18:26:40 +00:00
Petr Mikheev
45c9635e94 Fix getmetatable, fix pairsForReadonly, add util.loadCode, _G 2022-04-14 01:00:02 +02:00
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.
2022-04-13 09:33:24 +02:00
psi29a
9809b873a0 Merge branch 'esm_namespace_qualifiers' into 'master'
Remove ESM:: namespace qualifier in components/esm3/ and tests

See merge request OpenMW/openmw!1769
2022-04-12 08:08:31 +00:00
elsid
4447ab0ed7
Remove ESM:: namespace qualifier in components/esm3/ and tests 2022-04-12 02:04:24 +02:00
elsid
39da3bfef8
Ignore player when checking whether AiTravel destination is occupied by other actor 2022-04-11 19:30:54 +02:00
Bret Curtis
7fe6c39aa2 const the key/value 2022-04-11 16:59:46 +02:00
Bret Curtis
db3f9da08a coverity fixes and other bits 2022-04-11 14:37:22 +02:00
psi29a
5820e5701a Merge branch 'refactor/shadowtechnique' into 'master'
Cleanup code in mwshadowtechnique.cpp

See merge request OpenMW/openmw!1756
2022-04-11 11:15:27 +00:00
psi29a
03806eb75e Merge branch 'esm_rm_redundant_include' into 'master'
Remove redundant include from esm3/esmreader.hpp

See merge request OpenMW/openmw!1761
2022-04-11 07:47:48 +00:00
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
2022-04-11 07:26:53 +00:00
elsid
6481324eb1
Read when need to skip few bytes 2022-04-11 01:55:05 +02:00
elsid
5eb8c4aebe
Avoid redundant conversion to const char* and use make_shared 2022-04-10 22:33:08 +02:00
elsid
db44f91fd5
Remove redundant include from esm3/esmreader.hpp 2022-04-10 22:16:32 +02:00
ζeh Matt
b39aea4346
Move extremeEdges into queue instead of copying 2022-04-10 20:56:52 +03:00
ζeh Matt
19df9c3d17
Use vector for edge queue 2022-04-10 20:38:59 +03:00
elsid
c3a924de23
Fix skip DATA in cell ref loading 2022-04-10 19:16:30 +02:00
ζeh Matt
0790af962e
Cleanup code in mwshadowtechnique.cpp 2022-04-10 20:16:15 +03:00
elsid
6b464a9330
Check ESMReader value size in compile time 2022-04-10 19:16:11 +02:00
Benjamin Winger
21ffbcc4b4 Lua i18n updates 2022-04-10 07:57:02 +00:00
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.
2022-04-08 22:50:09 +02:00
elsid
bbfdb347bd
Skip load cell ref when there is no need
Primarily to avoid temporary allocations by ESMReader::getHString.
2022-04-08 19:16:38 +02:00
elsid
7038c82690
Configure mav navmeshdb file size from the launcher 2022-04-07 16:38:01 +02:00
psi29a
1ac7eaa6b0 Merge branch 'NiFltAnimationNode' into 'master'
Add NiFltAnimationNode support

Closes #6684

See merge request OpenMW/openmw!1732
2022-04-06 23:59:04 +00:00
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
2022-04-06 23:40:45 +00:00
psi29a
f5bc78cac3 Merge branch 'lua_ui_flex' into 'master'
Lua UI Flex widget

Closes #6646

See merge request OpenMW/openmw!1743
2022-04-06 23:29:23 +00:00
psi29a
8d3d01902a Merge branch 'optimizer' into 'master'
Optimizer-related fixes

See merge request OpenMW/openmw!1744
2022-04-06 23:00:17 +00:00
Wolfgang Lieff
373776170d refactor for NiFltAnimationNode 2022-04-07 00:49:08 +02:00
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 2022-04-07 00:09:11 +02:00
Bret Curtis
0db5415976 refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md 2022-04-07 00:09:11 +02:00
Wolfgang Lieff
ead73fce31 initial NiFltAnimationNode support 2022-04-07 00:09:11 +02:00
uramer
02bbd226b8 Less primary/secondary coordinate boilerplate in Flex 2022-04-06 23:36:44 +02:00
Petr Mikheev
eca64b48e8 Bitwise operations in Lua 2022-04-06 21:55:05 +02:00
Alexei Dobrohotov
eafa66ff40 Don't consider NiCollisionSwitch unoptimizeable 2022-04-06 06:42:06 +03:00
Alexei Dobrohotov
81e9212db9 Slightly optimize MergeGroupsVisitor's xenophobia 2022-04-06 06:37:42 +03:00