psi29a
1e62b84f9a
Merge branch 'lua_initdata' into 'master'
...
Allow passing `initData` to the :addSript call (#7091 )
Closes #7091
See merge request OpenMW/openmw!2568
2023-01-04 14:32:23 +00:00
florent.teppe
631fa26872
Applies review advice.
2023-01-04 12:22:16 +01:00
unelsson
ba9c2c9928
Add TemplateRef to animated Collada model
2023-01-03 22:51:46 +02:00
florent.teppe
3b2d9161c4
Applied review advice
...
better deals with templated functions meant for esm3 used by esm4s.
simplified loading of esm4 and dealing with unhandled record types.
2023-01-02 19:20:03 +01:00
florent.teppe
e9190bedc8
Reverts useless CmakeList formatting
2023-01-02 18:35:05 +01:00
Petr Mikheev
8c7d347179
Reorganize l10n files
2023-01-02 13:21:05 +01:00
florent.teppe
077cf97bc4
The esm4 reader logic is mutualised
...
to avoid copy pasting code, readerutils gives functions that take visitors as params to decide how a record must be handled
Check encoder exists, and get value of stateless encoder.
fixes code formatting conventions
Fixed output of record with RefId
also fixed readTypedRecord and readRecord to have the proper return types
Check if the type has a sRecordId
2023-01-01 19:22:27 +01:00
florent.teppe
c721a6cafa
Initial commit to load ESM4
...
Some data is actually loaded and store in ESM Store
Any new ESM4 will go through the same code path and be automatically sent to the right store
2023-01-01 16:22:57 +01:00
Petr Mikheev
b248c3e173
Allow passing initData
to the :addSript call ( #7091 )
2022-12-31 22:08:17 +01:00
unelsson
d60fd86719
clang format
2022-12-31 00:52:05 +02:00
unelsson
c71504eeb0
Better comments
2022-12-31 00:35:50 +02:00
unelsson
4676ac4ac9
Cleaner code part 2
2022-12-31 00:35:50 +02:00
unelsson
960019cf65
Cleaner code
2022-12-31 00:35:50 +02:00
unelsson
2efc691736
clang format
2022-12-31 00:35:50 +02:00
unelsson
7ef6b3cb62
automatic clang format
2022-12-31 00:35:50 +02:00
unelsson
d8de56e33c
Coding style improvements, add Torso animation layer
2022-12-31 00:35:50 +02:00
unelsson
ffc64205c5
Force collada animation layers, remove nif blend mask detection.
2022-12-31 00:35:50 +02:00
elsid
c71862a8df
Reset rcPolyMeshDetail members after rcFree
...
To avoid double free causing by later recastnavigation versions.
2022-12-30 19:26:48 +01:00
psi29a
e6064645db
Merge branch 'esm_ref_id_refactor' into 'master'
...
Simplify ESM::RefId
See merge request OpenMW/openmw!2563
2022-12-30 13:27:35 +00:00
elsid
755067f0f3
Remove redundant ESM::RefId member functions
2022-12-30 00:32:47 +01:00
elsid
fe57aec2a4
Move ESM::RefId comment to make sure IDEs recognize it and show in tooltips
2022-12-30 00:04:02 +01:00
elsid
b4ab153418
Use ESM::RefId for worldspace in detournavigator
2022-12-29 23:49:49 +01:00
Petr Mikheev
b8fb013edf
Merge MWLua::ObjectRegistry and MWWorld::WorldModel
2022-12-28 12:45:11 +01:00
psi29a
80e2cd79ec
Merge branch 'boat_closer_to_todd' into 'master'
...
Ignore special characters preceding script commands
Closes #6807
See merge request OpenMW/openmw!2555
2022-12-28 11:21:24 +00:00
florent.teppe
afed7e60ef
Upgraded Filesave version for RefIDs
...
Fix logic issue
2022-12-27 23:05:31 +01:00
florent.teppe
dc21df97c8
Fixed issue with getSummonedCreature( that returned a reference to a non const static value
...
Fix compile, and apply review comment
Fixed greater vs more typo.
getCellname is back to a string view.
Because in most cases was used as a strong not a refId.
and there was a fundamental issue with region names used as a cellname
2022-12-27 19:16:22 +01:00
florent.teppe
1ef1de974d
script blacklist => RefId
...
Applies changes from review
Fixed clang format
Clang format + review.
2022-12-27 19:16:21 +01:00
florent.teppe
2c30575b3b
CellName is now a RefId, makes more sense that way.
2022-12-27 19:16:21 +01:00
florent.teppe
6ff90b34a8
Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
...
Fixed multiple issues from the review.
2022-12-27 19:15:58 +01:00
florent.teppe
42e45723b7
Fixes issue in MW script compilation that would silently produce the wrong bytecode
...
Fixes issue when fetching MyGui values that were stored as RefId but fetched as String
Removed some uncessary copies, fixed issues with lowercase and uneeded changes
2022-12-27 19:15:57 +01:00
florent.teppe
e7deffb376
Adds comment that explains what RefIds are
2022-12-27 19:15:57 +01:00
florent.teppe
d49f60d2d6
To change fewer things with the master implementation, the Id isn't changed to lower case on creation
...
lower case utility functions used in comparison functions
2022-12-27 19:15:57 +01:00
florent.teppe
65cdd489fb
create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
...
Fixed some types
removed useless header
applied clang format
fixed compile tests
fixed clang tidy, and closer to logic before this MR
Removed hardcoded refids
unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string
Fix clang format
Fixed a few instances where std::string was used, when only const std::string& was needed
removed unused variable
2022-12-27 19:15:57 +01:00
florent.teppe
874ff88288
In the interpretter, the id is no longer passed by vallue, but as a const reference instead.
...
In getMembersLocal(, a reference to a reference wrapper is used, because the id can change, bu all we need to do is change a pointer.No need to change the value
2022-12-27 19:15:56 +01:00
fteppe
c283ea0ae8
string_view& => string_view
...
fixed ref to temp variable
2022-12-27 19:15:56 +01:00
fteppe
7da38113be
Changed more hardcoded RefId to be static to avoid multiple runtime creations
...
adresses multiple review comments
2022-12-27 19:15:56 +01:00
fteppe
62d8fe3fc2
changed a few hardcoded refIds used in mutliple places to be defined only once in a variable
2022-12-27 19:15:55 +01:00
fteppe
20da0892ef
openMW_test_suite compiles and runs
...
Slowly moving through the open-cs errors
Good progress in openCS
Very good progress on openCS
Getting closer with openCS
OpenCS compiles and runs! Didn't have time to test it all though
ix openMW
everything compiles on windows??
Fix gcc
Fix Clang
2022-12-27 19:15:55 +01:00
fteppe
2f2e401559
is Hidden marker now takes a const RefId& instead of a string_view
2022-12-27 19:15:55 +01:00
fteppe
0d68735e23
moved all code in CPP in ESM namespace since it was already necessary for << operator
...
in the equality operator, no longer need ciequal since the id is already always lowercase
2022-12-27 19:15:55 +01:00
fteppe
c8bb733360
removed clear() function, the only way to change the Id from the outside is from the assignment operator
...
replaced ciEqual with == operator
2022-12-27 19:15:55 +01:00
fteppe
ee941f9b09
RefId's mId can't be get as mutable from the outside
...
also removed useless operator= defintion
2022-12-27 19:15:55 +01:00
fteppe
d6d2a37d03
some clean and better comments
2022-12-27 19:15:54 +01:00
fteppe
125b21de20
Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
...
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID
Slowly going through all the changes to make, still hundreds of errors
a lot of functions/structures use std::string or stringview to designate an ID. So it takes time
Continues slowly replacing ids. There are technically more and more compilation errors
I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type
Continue moving forward, changes to the stores
slowly moving along
Starting to see the fruit of those changes.
still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.
More replacements. Things are starting to get easier
I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.
Still moving forward, and for the first time error count is going down!
Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably
Cells are back to using string for the name, haven't fixed everything yet. Many other changes
Under the bar of 400 compilation errors.
more good progress <100 compile errors!
More progress
Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string
some more progress on other fronts
Mostly game settings clean
one error opened a lot of other errors. Down to 18, but more will prbably appear
only link errors left??
Fixed link errors
OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
Evil Eye
b19ad079c2
Ignore special characters preceding script commands
2022-12-27 14:59:56 +01:00
Alexei Kotov
cdd6a8c007
Merge branch 'models_for_the_model_god' into 'master'
...
Implement TestModels/T3D
Closes #7058
See merge request OpenMW/openmw!2506
2022-12-27 00:41:39 +00:00
psi29a
14afde4689
Merge branch 'recast_context' into 'master'
...
Check input and report errors via RecastContext (#7093 )
Closes #7093
See merge request OpenMW/openmw!2544
2022-12-20 09:31:31 +00:00
psi29a
df92d76536
Merge branch 'drippy' into 'master'
...
Ignore non-3D agents in the navigator
Closes #7093
See merge request OpenMW/openmw!2537
2022-12-19 21:51:38 +00:00
elsid
15e8f0b53c
Check input and report errors via RecastContext
...
Recast functions have preconditions for arguments they don't validate. This may
produce garbage data which may lead to crash. Check arguments and log when they
are invalid.
Do not throw exceptions when these function calls fail, capture Recast reported
errors via RecastContext inherited from rcContext and log them.
2022-12-19 19:46:45 +01:00
Cédric Mocquillon
7e77e69a3c
Use a wider type when converting to a signed type
2022-12-18 21:31:51 +01:00
Evil Eye
d40c09c18c
Ignore non-3D agents in the navigator
2022-12-09 16:43:15 +01:00
AnyOldName3
66b8d4fb29
Add a setting to control coverage adjustment
...
With it on, which was always the case before this setting was added,
vanilla content and poorly-made mods will look acceptable, but well-made
mods will have alpha-tested meshes appear to grow and potentially gain a
weird outline as they get further away.
With it off, which replicates the 0.46 behaviour, well-made mods will
look really good, but vanilla content and poorly-made mods will have
alpha-tested meshes shrink as they get further away.
It's been bugging me that this was forced on since 0.47 released, and
I'd hoped to figure out a solution for automatic detection at some point
before 0.48 branched off, but I didn't, so now this is what we're
getting to have Tamriel Rebuilt look right.
2022-12-09 00:22:08 +00:00
psi29a
1d55be8214
Merge branch 'lua_profiler' into 'master'
...
Lua profiler
See merge request OpenMW/openmw!2523
2022-12-07 10:53:47 +00:00
Petr Mikheev
55db95d4cf
Update Lua profiler; add ability to run OpenMW with old LuaJit that doesn't allow custom allocator (Lua profiler will be disabled in this case)
2022-12-03 16:58:03 +01:00
Andrei Kortunov
b0d687964e
Make sure that local path has a trailing slash on Linux and Windows
2022-12-03 11:27:42 +04:00
Petr Mikheev
6fa65e4729
Track memory and CPU usage per script in LuaUtil::LuaState
2022-11-30 00:06:14 +01:00
Evil Eye
bbbcc5e4b7
Add an early out to dialogue loading to match Morrowind.exe behaviour
2022-11-27 22:23:35 +01:00
AnyOldName3
66e5415895
Log screenshot capture
2022-11-22 19:26:28 +00:00
elsid
89884fae0b
Add link dependencies to libosgSim and collada-dom
2022-11-14 12:04:58 +01:00
Evil Eye
b94818b24a
Tweak message and temporarily set model ttl to 0
2022-11-10 17:24:58 +01:00
Evil Eye
0ae5755abb
Implement TestModels/T3D
2022-11-08 22:36:15 +01:00
elsid
baa39c06bb
Move fourCC to a separate file
2022-11-06 15:35:16 +01:00
glassmancody.info
87c0a6e6dc
fix line numbers being off by one for each jump block
2022-10-24 08:40:33 -07:00
uramer
a2fa1fe0a5
Execute async callbacks on the main Lua stack
2022-10-18 22:12:11 +02:00
AnyOldName3
15c51dcbbc
Restore false-positive unused includes
...
They're needed on MacOS as SDL_opengl_gletx.h doesn't define them there.
They don't actually work on MacOS, so long-term, the code that uses
these defines should be changed to use #ifdef to check they're available
before using them.
2022-10-13 00:49:24 +01:00
AnyOldName3
77de37b1ed
Revert "Merge branch 'fix_macos_build' into 'master'"
...
As well as fixing the MacOS build, it meddled with a bunch of files that
already did the right thing.
This reverts commit 8162541a14
, reversing
changes made to e16c451d08
.
2022-10-12 22:48:34 +01:00
psi29a
8162541a14
Merge branch 'fix_macos_build' into 'master'
...
Use separate header to define missing GL constants
See merge request OpenMW/openmw!2464
2022-10-10 07:49:01 +00:00
psi29a
e16c451d08
Merge branch 'l10n' into 'master'
...
Separate l10n manager from lua
See merge request OpenMW/openmw!2451
2022-10-10 07:34:18 +00:00
psi29a
c164437d91
Merge branch 'classism' into 'master'
...
Use class service flags for autocalc NPCs
Closes #7044
See merge request OpenMW/openmw!2461
2022-10-10 07:32:46 +00:00
elsid
c324482338
Use separate header to define missing GL constants
2022-10-09 23:35:55 +02:00
elsid
843753da14
Remove unused includes
2022-10-09 16:44:18 +02:00
jvoisin
3cbf1dc042
First pass with include-what-you-use
2022-10-09 10:39:43 +00:00
Evil Eye
60c26832d2
Use class service flags for autocalc NPCs
2022-10-08 17:00:33 +02:00
Petr Mikheev
3697c9266b
Separate l10n manager from lua
2022-10-07 17:19:04 +02:00
elsid
bb8b5e2108
Add META_Node to clang-format StatementMacros
2022-10-06 21:11:52 +02:00
psi29a
66e14fa3bd
Merge branch 'fix_extra_semi_warning' into 'master'
...
Fix and prevent -Wextra-semi warning
See merge request OpenMW/openmw!2455
2022-10-06 11:10:06 +00:00
elsid
063fff7fa4
Fix and prevent -Wextra-semi warning
2022-10-06 00:26:43 +02:00
elsid
6b8ed4c64f
Use sorted vector for ViewData::contains implementation
2022-10-05 01:10:02 +02:00
elsid
624d8bc931
Support unsigned settings values
2022-10-04 01:34:53 +02:00
elsid
2388b21f63
Use std::from_chars to parse settings integral numbers and handle errors
2022-10-04 01:34:50 +02:00
psi29a
6e71804048
Merge branch 'keying_in' into 'master'
...
Add key flag on load
Closes #7034
See merge request OpenMW/openmw!2444
2022-09-30 13:16:14 +00:00
Evil Eye
e6592aa850
Add key flag on load
2022-09-30 12:16:45 +02:00
elsid
4de8ea30c8
Report used memory by Lua interpreter
2022-09-30 02:15:21 +02:00
elsid
1b9b61b60b
Format navmesh water vertices and indices
2022-09-27 00:46:34 +02:00
psi29a
b58c658b56
Merge branch 'localtime_errors' into 'master'
...
Handle localtime errors
See merge request OpenMW/openmw!2434
2022-09-26 07:59:41 +00:00
clang-format-bot
88ec8a9523
Apply clang-format
2022-09-25 18:23:43 +02:00
elsid
dd63a1602f
Handle localtime errors
2022-09-25 16:20:20 +02:00
psi29a
aed0ad6b83
Merge branch 'nifosg_tests' into 'master'
...
Add tests for NifOsg::Loader
See merge request OpenMW/openmw!2421
2022-09-25 13:37:14 +00:00
Andrei Kortunov
890be1b590
Fix crash in the editor
2022-09-25 12:31:56 +04:00
AnyOldName3
581b333386
Add missing include
2022-09-24 22:11:46 +00:00
Project579
6fe89ff22b
Fix dumb regression, initialize "std::filesystem::file_time_type" with "clock::now()".
2022-09-24 21:52:10 +02:00
Project579
5cf2a958eb
Make conversions between std::chrono time_point and string safer by not using "localtime" directly.
2022-09-24 21:47:27 +02:00
elsid
06f7e8088e
Check for negative record list length
2022-09-24 19:10:38 +02:00
elsid
0688b6de40
Separate record list reading from its state
...
To make it possible to set record list state independently from reading NIF
file.
2022-09-24 19:10:35 +02:00
elsid
c338c1e5d3
Add Nif::FileView as read only interface for Nif::NIFFile
...
To make sure interface is scoped to what users require.
2022-09-24 19:10:21 +02:00
elsid
f2fb3d6de8
Separate NIFFileReader from NIFFile
...
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.
Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2022-09-24 19:10:14 +02:00
elsid
b39ccbeeef
Remove NIFFile::warn and NIFFile::fail functions
...
These functions use NIFFile only as context, they are not really a part of
either reading nor state invariant. And they only confuse reader because it's
not immediatelly obvious that no code is executed after fail.
2022-09-24 19:10:05 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base
2022-09-22 21:35:26 +03:00
elsid
63b51ead84
Use nv_default shader prefix for unhandled types
2022-09-17 17:35:25 +02:00
Alexei Kotov
7aee22be91
Further controller updates
...
Correct NiMaterialColorController base class
Load everything in NiGeomMorpherController
Make a guess at how weighted interpolators might be supposed to work like
2022-09-16 23:45:54 +03:00
elsid
ac01fd5e75
Add missing non-prefixed reserved nodes
2022-09-16 12:36:00 +02:00
psi29a
86ff454ca2
Merge branch 'thirdtimesthecharm' into 'master'
...
Rehash the rehashing of rehashed morph loading
See merge request OpenMW/openmw!2413
2022-09-16 06:09:21 +00:00
psi29a
46935e9e97
Merge branch 'renormalise' into 'master'
...
Renormalise line endings
See merge request OpenMW/openmw!2412
2022-09-16 06:08:36 +00:00
Alexei Kotov
e2ed313389
Don't load keys for Gamebryo morphs
2022-09-16 05:55:37 +03:00
AnyOldName3
84f8a6848a
Renormalise line endings
...
This should replace accidental CRLF with LF
2022-09-16 00:53:24 +01:00
elsid
fd93b7186f
Add missing include
2022-09-16 01:39:59 +02:00
psi29a
16fd01a765
Merge branch 'fix_reserved_names_init' into 'master'
...
Initialize reserved names once to avoid race condition (#7008 )
Closes #7008
See merge request OpenMW/openmw!2409
2022-09-15 22:09:08 +00:00
psi29a
ce90484898
Merge branch 'fix_lua_color' into 'openmw-48'
...
Make r, g, b, a read-only properties, rather than getters
See merge request OpenMW/openmw!2380
(cherry picked from commit 85f343e87a
)
19d01f26
Make r, g, b, a read-only properties, rather than getters
2022-09-15 22:01:59 +00:00
elsid
8068d0153f
Initialize reserved names once to avoid race condition
...
CanOptimizeCallback::isReservedName function may be executed by multiple threads
simultaneously. One of them creates a static but both of them run if statement
and see it's empty because none of them added elements there yet. Both of them
go to the branch where new elements are added doing it without any
synchronization possibly causing SIGSEGV.
2022-09-15 23:37:57 +02:00
psi29a
d1c79fa8d1
Merge branch 'pre_clang_format_fixes_2' into 'master'
...
Fixes before applying clang-format 2
See merge request OpenMW/openmw!2401
2022-09-15 08:24:23 +00:00
psi29a
6f95154ca8
Merge branch 'esm4_zero_terminated_strings' into 'master'
...
Fix reading array of zero terminated strings (ESM4 NIFZ and KFFZ sub records)
See merge request OpenMW/openmw!2403
2022-09-15 07:44:35 +00:00
psi29a
ac2b6525e9
Merge branch 'interpcontrollers' into 'master'
...
Streamline NiInterpController handling
See merge request OpenMW/openmw!2404
2022-09-15 07:44:11 +00:00
elsid
6f00641c8a
Fix reading array of zero terminated strings
...
NIFZ and KFFZ subrecords store multiple strings separated by \0 character.
2022-09-15 00:01:19 +02:00
Alexei Kotov
482de23893
Streamline NiInterpController handling
2022-09-15 00:58:10 +03:00
elsid
ae812701ec
Merge branch 'crashfix_debugdraw' into 'master'
...
crashfix of debug draw on game exit
Closes #7004
See merge request OpenMW/openmw!2398
2022-09-14 20:56:03 +00:00
florent.teppe
943198e325
Small changes
2022-09-14 13:20:35 +02:00
elsid
410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line
2022-09-14 00:36:02 +02:00
florent.teppe
e811f7ed00
Simplified the data structures.
...
DebugCustomDraw owns the vector of drawcalls and the line geometry.
There are two DebugCustomDraw, so anything they own is double buffered.
Because DebugDrawer has a ref_ptr on the DebugCustomDraw, they live at least as long as DebugDrawer, making memory access from it safe.
removed redundent this
2022-09-13 18:26:33 +02:00
psi29a
675c0f9b31
Merge branch 'disable_clang_format_for_osg' into 'master'
...
Disable clang-format for files that should have minimal diff with OSG
See merge request OpenMW/openmw!2399
2022-09-13 08:53:30 +00:00
elsid
51314db2f1
Remove AI_CNDT from AI package types
...
AI_CNDT is a label of subrecord containing cell name. It's not AI package type.
2022-09-13 00:05:12 +02:00
elsid
50d8bd9cdd
Disable clang-format for files that should have minimal diff with OSG
2022-09-12 23:57:10 +02:00
elsid
219b9e7cbf
Revert "Use raw string literals for shaders"
...
This reverts commit 0e72055385
.
2022-09-12 23:54:13 +02:00
elsid
52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line
2022-09-12 21:00:51 +02:00
elsid
0e72055385
Use raw string literals for shaders
2022-09-12 21:00:51 +02:00
elsid
409f83a149
Use raw string literal for error marker definition
2022-09-12 21:00:45 +02:00
florent.teppe
565a08b95a
crashfix on game exit
2022-09-12 19:13:02 +02:00
elsid
6ae15f08e0
Avoid chained operator() calls to prevent formatting issues
2022-09-12 16:48:15 +02:00
unrelentingtech
1c8fd2ecdb
Implement system-scaled HiDPI support (SDL_WINDOW_ALLOW_HIGHDPI - Wayland, macOS, etc)
2022-09-12 08:18:08 +00:00
elsid
4f7dcd5ae5
Fix conversion to UTF8 for ESM4 Reader strings
...
toUtf8 returns a string view to the input when input string is ASCII and nothing
is written to the buffer which means output string of Reader::getStringImpl is
not modified.
Move input to the output string and resize it in this case.
2022-09-12 01:42:01 +02:00
psi29a
80d52e3da8
Merge branch 'cursor' into 'master'
...
Support high-resolution cursor textures
Closes #6933
See merge request OpenMW/openmw!2262
2022-09-11 18:32:18 +00:00
elsid
9f35f9b45b
Add missing include <array>
2022-09-11 19:55:53 +02:00
psi29a
435eacdaad
Merge branch 'debug_draw_commands' into 'master'
...
API to draw primitives
See merge request OpenMW/openmw!2345
2022-09-11 17:17:16 +00:00
Andrei Kortunov
a2c02d2999
Support high-resolution cursor textures (feature 6933)
2022-09-11 20:54:20 +04:00
florent.teppe
43b0ae1ce7
all debug renders now use the same shader and it works
...
remove debug draw shader, now that debug and debugdraw serve the same function
remove debug draw code from actors to clean
replaced int uniforms with bool for better readability
clang format
cleanup, remove unused func, and mistake whitespace
fix namespace
added more colors
fixed missing whitespace
2022-09-11 17:54:01 +02:00
florent.teppe
21971c08ba
debug draw shader uses the generic functions
...
renamed files
roundabout way to change case with windows noticing
fixed type
fix filename in cmakelist.txt
ported shader and c++ code so glsl 120 can be used instead of 330
new debug shader and old one are almost unified
for some reason, even though I get no compilation issue, old debug draws don't work, only the new one implemented by this MR
remove useless const cast
2022-09-11 17:53:59 +02:00
florent.teppe
bd1bbc0ab8
removes mutex, and uses double buffering to avoid writing on a resource that will be read by the draw thread
...
changes when the buffers are reset -> at the end of the draw, because that's when we are certain the data isn't needed anymore
removed useless variable
fixed typo
include osg::vec3 instead of osg vec3f
compile linux
compile ?
applied clang format to the new files
2022-09-11 17:53:56 +02:00
florent.teppe
2a980ecb50
cleaned some code and fixed some naming issues
...
Moved debug draw to components, fixed some whitespace issues, added include guard
fixed uniform name, removed old files
Fixes some more whitespace weirdness
2022-09-11 17:53:53 +02:00
psi29a
29f3de30c2
Merge branch 'master' into 'cellstore_refactor'
...
# Conflicts:
# apps/openmw/mwworld/scene.cpp
2022-09-11 15:03:37 +00:00
Project579
886b8c7af2
Fix build error with stdlibc++ due to includes shuffling.
2022-09-11 14:41:21 +02:00
Project579
9ceafe770d
Hard fail on loading BSA with records using unicode paths.
2022-09-11 14:41:21 +02:00
Project579
a60cebd0f9
Use std::u8string_view in debug logger overloads parameters.
2022-09-11 14:41:21 +02:00
Project579
ca14fc00dc
Added dedicated functions for conversions between QString and std::filesystem::path.
2022-09-11 14:41:21 +02:00
Project579
c226b35f1f
Fix some remaining encoding errors due to std::filesystem transition.
2022-09-11 14:41:20 +02:00
Project579
5456ef1d50
Add new functions and overloads to support std::u8string and std::filesystem::path.
2022-09-11 14:41:20 +02:00
Project579
2df8bfed25
Fix build errors after rebase against master due to large amount of changes.
2022-09-11 14:41:20 +02:00
Project579
c3175e371a
Fix YAML::LoadFile mangling Unicode paths in Windows.
2022-09-11 14:41:20 +02:00
Project579
a13709c510
Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions.
2022-09-11 14:41:20 +02:00
Project579
dec3f24375
filesystem: configurationmanager: Store file path tokens as std::u8string.
2022-09-11 14:41:20 +02:00
Project579
78ab009d5c
Add required overloads to logger for handling unicode paths, also add conversion functions from std::filesystem::path to std::string without losing unicode data.
2022-09-11 14:41:20 +02:00
Project579
b817359bcf
Revert "Fix regression from https://gitlab.com/OpenMW/openmw/-/merge_requests/1776 "
...
This reverts commit 6a5ad4ca43
.
2022-09-11 14:41:20 +02:00
Project579
864112b5db
Fixed Windows build when using MSVC 14.26 and MacOS build.
2022-09-11 14:41:20 +02:00
Project579
e5c417c968
Make sure all paths are passed as std::filesystem::path instead of std::string where possible.
2022-09-11 14:41:15 +02:00
florent.teppe
10899ed680
typo
2022-09-11 13:18:56 +02:00
Project579
35fe214588
Updated components/misc/timeconvert.hpp to fix the Android build.
2022-09-11 02:20:01 +02:00
Project579
5446571aec
Circumvent QT MOC bugs by including the filesystem header in a specific order.
2022-09-11 02:19:07 +02:00
Project579
cf0af87c80
Revert changes from "4c8e1ccf - Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"" in "apps/openmw_test_suite/openmw/options.cpp"
2022-09-11 02:19:07 +02:00
Project579
cd229a965b
Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"
2022-09-11 02:19:07 +02:00
Project579
4bb07282c9
Replace all remaining occurrences of boost::filesystem with std::filesystem.
2022-09-11 02:19:00 +02:00
florent.teppe
cdc7864863
missing file
2022-09-10 20:25:18 +02:00
florent.teppe
256d8a699a
moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp
2022-09-10 20:13:18 +02:00
elsid
ac1688f9c1
Remove ESM::Reader base class
...
This class does not serve any useful purpose now. It was added as a first step
in attempt to define common interface for ESM3 and ESM4 readers. But this is not
going to happen.
2022-09-10 15:17:49 +02:00
florent.teppe
65bd007baa
simplified some big switch/case
2022-09-09 23:40:56 +02:00
psi29a
95f9f00bcc
Merge branch 'navigator_rtree' into 'master'
...
Optimize updating navmesh from the main thread primarily on cell loading
See merge request OpenMW/openmw!2382
2022-09-08 22:18:36 +00:00
psi29a
95ad1d91df
Merge branch 'esmstore-round-2' into 'master'
...
More ESMStore cleanup
See merge request OpenMW/openmw!2383
2022-09-08 13:08:26 +00:00
ζeh Matt
aa65df8872
Rename meta.hpp to tuplemeta.hpp
2022-09-08 15:03:01 +03:00
elsid
22ee592dd3
Lock TileCachedRecastMeshManager once per changing a cell
...
To save time on locking mutex and prevent AsyncNavMeshUpdater to use RecastMesh
for a tile in the middle of objects loading.
2022-09-08 11:06:35 +02:00
ζeh Matt
c856095562
Use compile time generated indices for tuples types
2022-09-08 03:38:07 +03:00
ζeh Matt
8f7703d5c8
Rename HasMember to TupleHasType and move code into misc/meta.hpp
2022-09-08 00:13:50 +03:00
elsid
d15e1dca84
Use R-tree for objects to be used for navmesh generation
...
Instead of storing a set of objects per tile.
2022-09-07 22:51:56 +02:00
psi29a
1859c6eded
Merge branch 'pcvisionbonus' into 'master'
...
Implement PCVisionBonus functions
Closes #6983
See merge request OpenMW/openmw!2371
2022-09-07 20:27:22 +00:00
psi29a
1f2c473242
Merge branch 'bhk' into 'master'
...
Load bhkCapsuleShape and bhkSphereShape
See merge request OpenMW/openmw!2377
2022-09-07 20:25:24 +00:00
psi29a
fcd9b78cac
Merge branch 'REFACTOR_STORE' into 'master'
...
Refactoring the ESM store to better support many new ESM4 types
See merge request OpenMW/openmw!2161
2022-09-07 20:22:29 +00:00
Alexei Kotov
f17b1cd7ab
Load bhkCapsuleShape and bhkSphereShape
2022-09-07 16:09:19 +03:00
psi29a
a5664d7ba9
Merge branch 'reserve_utf8_stream' into 'master'
...
Reserve the output buffer in lowerCaseUtf8
See merge request OpenMW/openmw!2370
2022-09-07 10:05:26 +00:00
elsid
180d609e0d
Check "wait until min distance to player" only for requiredTilesPresent wait condition
...
allJobsDone should wait even if "wait until min distance to player" is 0.
2022-09-06 21:51:48 +02:00
elsid
98ddc31902
Fix calculating min distance to nearest absent tile
...
Tile can be present in either mPushed (waiting in a queue), mProcessingTiles (
being processed or waiting in db queue), mPresentTiles (added to navmesh). It's
not enough to walk over mPushed tiles to find all not present. Need also to
check mProcessingTiles.
Otherwise if all tiles are in mProcessingTiles only
waitUntilJobsDoneForNotPresentTiles may return too early because there are none
in mPushed and therefore none tiles are considered to be absent on navmesh which
is not true.
2022-09-06 21:51:48 +02:00
elsid
de80b86cc1
Use proper type to cast enum value
2022-09-06 21:51:48 +02:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh
2022-09-06 21:51:48 +02:00
elsid
914edd1194
Make frequently called oneliners inline
2022-09-06 21:51:48 +02:00
elsid
d1a294664e
Do not try to update tile to post
...
changedTiles contains unique set of positions and tilesToPost is empty initially
therefore it's not possible to add the same position twice.
2022-09-06 21:51:48 +02:00
florent.teppe
445d91d85d
adds missing include
2022-09-06 13:26:13 +02:00
Evil Eye
489c7a10b6
Implement PCVisionBonus functions
2022-09-05 20:21:19 +02:00
psi29a
9472998bad
Merge branch 'ori' into 'master'
...
Implement the full version of the ori command
See merge request OpenMW/openmw!2368
2022-09-05 17:55:21 +00:00
jvoisin
9f62f0c292
Reserve the output buffer in lowerCaseUtf8
...
Since lowercasing an utf8 string shouldn't change its size very much,
it does make sense to reserve the output buffer, to reduce
memory allocations.
2022-09-05 19:46:39 +02:00
florent.teppe
3cbd0e0762
Fixed naming convention
2022-09-05 17:35:36 +02:00
florent.teppe
9e40550a4a
improved readability of esm3Recname and esm4Recname
2022-09-05 17:35:36 +02:00
florent.teppe
7bd7105345
code cleanup
2022-09-05 17:35:36 +02:00
florent.teppe
252550d86f
Added records for ESM4s the throw std:: logic error ensures at compile time that there is no collision
...
static_assert doesn't work because the function can be called at run time
2022-09-05 17:35:35 +02:00
Evil Eye
0b5c2b4609
Implement the full version of the ori command
2022-09-05 17:27:01 +02:00
elsid
e2d566b89d
Store changed tiles in TileCachedRecastMeshManager
2022-09-05 11:49:39 +02:00
psi29a
647b22e175
Merge branch 'DistantLOD' into 'master'
...
Support for TES distant LOD
See merge request OpenMW/openmw!1861
2022-09-04 11:36:07 +00:00
psi29a
84ec78f0d6
Merge branch 'multitargettransform' into 'master'
...
Read NiMultiTargetTransformController
See merge request OpenMW/openmw!2357
2022-09-04 07:45:11 +00:00
Alexei Kotov
44fbb5cdc3
Read NiMultiTargetTransformController
2022-09-04 08:36:32 +03:00
Alexei Kotov
8df0587793
Reformat NIF record type mapping
2022-09-04 08:36:32 +03:00
Cédric Mocquillon
83ee25711e
Use the pattern according to the esm version
2022-09-03 18:55:06 +02:00
Cédric Mocquillon
6a3d27ce82
Add a dictionary to retrieve the LOD mesh name of a mesh cache
2022-09-03 18:52:27 +02:00
AnyOldName3
4e8e2e1c60
Eliminate &thing[0] pattern
2022-09-03 16:41:35 +01:00
Alexei Kotov
a8e561d885
Avoid issues with saved games that have no screenshot data
2022-09-02 07:04:02 +03:00
Alexei Kotov
126090bdc5
Load NiBillboardNode mode field
2022-08-31 22:32:45 +03:00
psi29a
58d08d402a
Merge branch 'navigator_stats' into 'master'
...
Show stats for writing and reading navmesh db queue jobs
See merge request OpenMW/openmw!2346
2022-08-30 21:12:54 +00:00
psi29a
4ff7f8ddfb
Merge branch 'string_viewing' into 'master'
...
Use string_view in yet more places
See merge request OpenMW/openmw!2348
2022-08-30 21:12:11 +00:00
Andrei Kortunov
3037f190be
Implement per-font resolution
2022-08-30 12:16:30 +04:00
Andrei Kortunov
3178868cc3
Improve built-in default fonts
2022-08-30 07:54:20 +00:00
Arnaud Dochain
1163c12645
Allows to build on macos 10.15
2022-08-28 15:28:41 +00:00
Evil Eye
fb9bc5f535
Use string_view in Fallback::Map
2022-08-28 17:20:49 +02:00
Evil Eye
2222b47e3d
Make Settings::Manager::getString return a reference
2022-08-28 16:38:11 +02:00
elsid
c15848932b
Separate reading navigator stats and reporting
2022-08-28 14:52:34 +02:00
elsid
e9be8b5efe
Show stats for writing and reading navmesh db queue jobs
2022-08-28 14:14:43 +02:00
AnyOldName3
1d177e2d71
Merge branch 'light_fix' into 'master'
...
Fix incorrect scene lighting #6952
See merge request OpenMW/openmw!2335
2022-08-27 01:03:19 +00:00
Evil Eye
02bbb0be45
Improve format workaround and add unit tests
2022-08-26 19:43:57 +00:00
psi29a
e46be1c220
Merge branch 'rm_get_poly_height_status' into 'master'
...
Do not check getPolyHeight status (#6964 )
Closes #6964
See merge request OpenMW/openmw!2334
2022-08-25 08:55:01 +00:00
psi29a
c260a0d4c2
Merge branch 'string_me_along' into 'master'
...
Yet another string_view MR
See merge request OpenMW/openmw!2333
2022-08-25 08:53:28 +00:00
elsid
948e2f5db9
Do not use collision shapes with visual only collision to generate navmesh
...
These collision shapes are not used for actors movement physics simulation.
2022-08-25 00:56:03 +02:00
glassmancody.info
1f2d9f2280
don't recycle statesets for light cullcallback for now
2022-08-24 15:07:04 -07:00
elsid
ab1ddc690e
Do not check getPolyHeight status
...
It may fail in some cases depending on a platform without obvious reason.
2022-08-24 23:30:36 +02:00
Evil Eye
4e2e5ad002
Revert format change and ensure string_view args are null-terminated
2022-08-24 23:10:05 +02:00
Evil Eye
1d21330fcc
Return string_view from getGameSettingString
2022-08-24 22:16:03 +02:00
jvoisin
e0dbe976bc
Merge branch 'qt_signalslot_syntax_update' into 'master'
...
Migrate to functor-based Qt signal-slot connection syntax
Closes #6948
See merge request OpenMW/openmw!2332
2022-08-24 19:01:35 +00:00
Evil Eye
0cded25033
Remove various string copies
2022-08-24 20:38:52 +02:00
Evil Eye
0df45a90b3
Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary
2022-08-23 22:14:27 +02:00
mpeco
1868534071
functor-based Qt signal-slot syntax components
2022-08-23 17:14:12 -03:00
psi29a
1f5277349c
Merge branch 'span' into 'master'
...
Replace Misc::Span by std::span
See merge request OpenMW/openmw!2324
2022-08-22 17:34:51 +00:00
psi29a
9c24d6b390
Merge branch 'ci_starts_with' into 'master'
...
Replace ciCompareLen with ciStartsWith where possible
See merge request OpenMW/openmw!2325
2022-08-22 17:34:03 +00:00
Evil Eye
150d1840d6
Use more string_view and const string&
2022-08-22 16:55:53 +02:00
elsid
5dc612aa54
Replace ciCompareLen with ciStartsWith where possible
...
`ciCompareLen(a, b, b.size()) == 0` expression is an equivalent of checking for
equality of `a` prefix with size `b.size()` with `b`.
`ciCompareLen(a, b, a.size()) == 0` is also the same thing but `a` is a prefix
`b` should start with.
2022-08-22 09:32:22 +02:00
elsid
e4a254deb7
Replace Misc::Span by std::span
2022-08-21 23:53:27 +02:00
psi29a
36fbef1048
Merge branch 'apple-silicon-arm-build' into 'master'
...
Get build working on Apple Silicon
See merge request OpenMW/openmw!2286
2022-08-21 20:15:01 +00:00
psi29a
2a2268ea8b
Merge branch 'optimize_navigator_update' into 'master'
...
Optimize navigator per frame update
See merge request OpenMW/openmw!2308
2022-08-21 20:12:30 +00:00
psi29a
f36e13444e
Merge branch 'font_loading' into 'master'
...
Cleanup fonts loading
See merge request OpenMW/openmw!2309
2022-08-21 20:11:02 +00:00
psi29a
aa8eba239a
Merge branch 'animation_view' into 'master'
...
Use string_view in animation code
See merge request OpenMW/openmw!2321
2022-08-21 20:05:00 +00:00
unknown
206711876d
Address feedback
2022-08-21 19:43:29 +02:00
unknown
827a2f0b77
Use string_view in animation code
2022-08-21 18:53:38 +02:00
Mads Buvik Sandvei
70e1efdd47
omw_GetWorldPosFromUV() should use omw_GetDepth()
2022-08-21 18:03:38 +02:00
Andrei Kortunov
9e1ab590f1
Cleanup fonts loading
2022-08-21 13:19:04 +04:00
psi29a
4078f19c74
Merge branch 'SHADER_HOT_RELOAD' into 'master'
...
Shaders: Hot reload, togglable by lua debug command
See merge request OpenMW/openmw!2238
2022-08-21 09:08:27 +00:00
florent.teppe
25c1f0ca16
Renamed variable to fix case issue
2022-08-21 09:18:08 +02:00
elsid
aea4614240
Fix clang tidy warning
2022-08-20 19:17:45 +02:00
elsid
8147d49178
Remove redundant lock
...
mGeneration is const and mRevision is changed only from the same thread.
2022-08-20 19:15:58 +02:00
elsid
2885885331
Increase mutex scope in TileCachedRecastMeshManager functions
...
Which are called from the main thread.
2022-08-20 19:15:57 +02:00
elsid
e1bed86d7e
Do single navigator update per frame
...
Primarily for crossing cell border case. Each Navigator::update call has a cost.
Doing it multiple times per frame increased frame duration on cell loading.
Call Navigator::wait only when cell has changed but do not use
Scene::hasCellChanged because it doesn't always indicates it.
2022-08-20 19:15:55 +02:00
elsid
8125d51a0f
Use std::unique_ptr to implement ScopedLoad
...
This gives correct implementation of move constructor and assignment operators.
2022-08-19 22:39:39 +02:00
Andrei Kortunov
c3d3f3140b
Allow to change font settings in the launcher
2022-08-18 13:29:12 +04:00
psi29a
bf40f9b287
Merge branch 'name_view' into 'master'
...
Make Class::getName return string_view
See merge request OpenMW/openmw!2289
2022-08-17 20:14:27 +00:00
Andrew Dunn
808a2e587a
Merge commit '5ee4ce1232b0f334f29dd702f811c58dccf5c00d' into apple-silicon-arm-build
2022-08-17 23:45:51 +10:00
psi29a
5ee4ce1232
Merge branch 'nipixeldata' into 'master'
...
Support more NiPixelData formats (feature #6945 )
Closes #6945
See merge request OpenMW/openmw!2290
2022-08-17 12:20:00 +00:00
Alexei Kotov
edbd05a3f7
Support more NiPixelData formats (feature #6945 )
2022-08-17 14:22:27 +03:00
Evil Eye
4ff12d8945
Make Class::getName return string_view
2022-08-16 21:15:03 +02:00
elsid
cc8c7002ea
Cleanup components includes
2022-08-16 19:14:04 +02:00
Andrew Dunn
1d7d3d5765
Get build working on Apple Silicon
...
Will validate issues with Intel OSX later
2022-08-17 02:18:48 +10:00
psi29a
b382e92953
Merge branch 'please_dont_copy_my_nfts' into 'master'
...
Prevent various values from being copied
See merge request OpenMW/openmw!2267
2022-08-16 08:36:34 +00:00
elsid
b1fb42a28c
Cleanup detournavigator includes
2022-08-15 19:46:10 +02:00
psi29a
f42ab6a3e7
Merge branch 'coverity' into 'master'
...
Do not copy data when it is not needed
See merge request OpenMW/openmw!2277
2022-08-15 12:30:09 +00:00
Andrei Kortunov
e3ad30a517
Do not copy data when it is not needed
2022-08-15 11:52:09 +04:00
Matt
e6868fd211
Allow constexpr hashing
2022-08-14 19:06:29 +00:00
Evil Eye
de8d9b8db3
Use Fowler-Noll-Vo hash instead of std::hash
2022-08-14 19:55:32 +02:00
Evil Eye
eaa108d25d
Return string_view from SoundId methods
2022-08-14 14:39:58 +02:00
florent.teppe
166717d601
Makes sure threads are only stopped once ,and that they will be re-started
2022-08-13 00:34:01 +02:00
Evil Eye
51938f9ef7
Use string_view in Interpreter::Context
2022-08-12 19:42:35 +02:00
florent.teppe
16a4b5716b
adds missing include
2022-08-12 18:52:31 +02:00
florent.teppe
b14cc673bc
adds missing decleration
2022-08-12 18:47:29 +02:00
florent.teppe
decfbc5387
Fix threading issues
2022-08-12 18:37:19 +02:00
psi29a
18dbf722eb
Merge branch 'store_view' into 'master'
...
Allow string_view lookups in MWWorld::Store
See merge request OpenMW/openmw!2010
2022-08-10 22:29:18 +00:00
psi29a
b551e69b6f
#5534 remove OSG 3.4 support and require at least 3.6.5 support
2022-08-09 21:07:28 +00:00
Evil Eye
de51525c76
Allow string_view lookups in MWWorld::Store and get some use out of that
2022-08-09 20:43:14 +02:00
psi29a
bb9884c024
Merge branch 'split_stringops' into 'master'
...
Split components/misc/stringops.hpp into multiple headers
See merge request OpenMW/openmw!2233
2022-08-09 18:06:40 +00:00
florent teppe
baadc06e98
Merge branch 'master' into 'SHADER_HOT_RELOAD'
...
# Conflicts:
# apps/openmw/mwrender/postprocessor.hpp
2022-08-09 09:26:55 +00:00
glassmancody.info
c513ec7824
null check
2022-08-08 12:53:20 -07:00
glassmancody.info
2cea4f3172
stop excessive allocations with lightmanager callback
2022-08-07 17:04:03 -07:00
florent.teppe
603b30e117
Added some variable names to make it clearer what their function was
...
avoid having lost of ->first and ->second that aren't meaningfull
2022-08-07 22:56:32 +02:00
cody glassman
ac4b29be08
cleanup default shaders and remove confusing main shader
2022-08-07 06:42:48 -07:00
florent.teppe
3ab0a99154
Hot reload done only once every 200 ms, no point in beeing faster
...
it may also help with bugs where the file is still locked and can't be opened
2022-08-04 13:37:12 +02:00
florent.teppe
cc9d436413
includes now work when the same shader has different defines
2022-08-04 13:00:32 +02:00
florent.teppe
7b78bf4b66
Fix files with different defines weren't added to the hot reload manager
2022-08-04 12:46:39 +02:00
florent.teppe
a1c8dc9d45
C++17 compat ?
2022-08-04 09:50:02 +02:00
florent.teppe
cdd95f7889
replaced empty function body by default
2022-08-04 09:25:25 +02:00
florent.teppe
9a475b0c97
fixed blank lines and missing breaks
2022-08-04 09:19:41 +02:00
florent.teppe
b6d7293a12
Removed weird lines that I thought were necessary to please the compiler
2022-08-04 09:13:25 +02:00
florent.teppe
68d0698924
Fixed cyclical included check
2022-08-04 09:09:26 +02:00
florent.teppe
aa51d6de2a
Missing chrono include ?
2022-08-04 00:14:53 +02:00
elsid
f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
...
Replace all ciEqual overloads with one having std::string_view as argument.
2022-08-03 22:06:24 +02:00
elsid
da0a1ac9ba
Do compile time checks in compile time instead of tests
2022-08-03 21:47:00 +02:00
florent.teppe
f78fa989ee
fixed include, cleaned comments and indentation
2022-08-03 20:50:39 +02:00
florent.teppe
31d412527d
forgot memory include
2022-08-03 20:17:53 +02:00
florent.teppe
6b38d62223
Added lua bindings to toggle hot reload (disabled by default) or to trigger a reload
2022-08-03 19:56:19 +02:00
florent.teppe
4e7c1c5bef
Added break when the operation failed
2022-08-03 19:21:48 +02:00
florent.teppe
8d194a1601
Shaders: rudimentary hot reloader on shaders
...
every frame we poll the files and check if they are older or newer than the last test, if they are newer we find all the shader that included that file and update them
2022-08-03 19:12:45 +02:00
Alexei Kotov
014de72644
Use NiParticleSystemController's color for the initial particle color
2022-08-03 14:36:51 +03:00
elsid
ba69146ced
Use std::string_view to avoid redundant std::string construction
2022-08-03 00:18:55 +02:00
glassmancody.info
651916694c
use correct indexed color mask
2022-08-01 07:56:16 -07:00
psi29a
454684bad3
Merge branch 'custom_actor_collision_shape_type' into 'master'
...
Support cylinder and rotating box collision shape types for actors (#6138 )
Closes #6138
See merge request OpenMW/openmw!2043
2022-08-01 11:00:23 +00:00
psi29a
04fcfcc79d
Merge branch 'master' into 'bigpeepeventsenergy'
...
# Conflicts:
# components/sdlutil/sdlinputwrapper.cpp
2022-08-01 07:55:51 +00:00
Alexei Kotov
f9fdcfe4a7
Prevent mouse movement events from being queued in loading screens (bug #4374 )
2022-08-01 06:54:36 +03:00
Alexei Kotov
bb2fa1cbfa
Break SDL_PeepEvents loop on error (bug #6890 )
2022-08-01 06:24:45 +03:00
psi29a
9ba3ab2be9
Merge branch 'post_fog' into 'master'
...
[Postprocessing] API to work with fog
See merge request OpenMW/openmw!2212
2022-07-31 17:33:08 +00:00
Andrei Kortunov
5bfca57835
Add a way to check if water is enabled in post processing shaders
2022-07-31 10:33:18 +04:00
Andrei Kortunov
888f4d2ac1
Add a post processing API to work with fog
2022-07-30 21:44:18 +04:00
elsid
8b8e4f78b6
Support cylinder and rotating box collision shape types for actors
...
Cylinder collision shape should give the best consistency between physics
simulation and pathfinding. Rotating box is already used by some actors, so
add it to have the same collision shape type for all actors.
2022-07-30 14:28:21 +02:00
psi29a
c54822acf9
Merge branch 'locale_menu' into 'master'
...
Add a way to configure locale settings in-game
See merge request OpenMW/openmw!2179
2022-07-28 07:23:55 +00:00
elsid
8cecc55d64
Fix inserting texture to map
...
Avoid using invalidated iterator after erase call.
Use insert_or_assing instead of operator[] because OSGTexture doesn't have a
default constructor.
2022-07-27 20:01:13 +02:00
psi29a
2964e0d4fd
Merge branch 'font_cleanup' into 'master'
...
Remove code which became redundant due to changes in way how we load bitmap fonts
See merge request OpenMW/openmw!2190
2022-07-27 09:28:30 +00:00
Andrei Kortunov
8ff64ca176
Add a default way to store arrays in the settings.cfg
2022-07-27 13:03:34 +04:00
Andrei Kortunov
a787625c65
Remove code which became redundant due to changes in way how we load bitmap fonts
2022-07-27 12:15:07 +04:00
Evil Eye
55134d1e31
Use string_view in the CharacterController
2022-07-26 17:23:00 +02:00
psi29a
17a0063a7c
Merge branch 'async_delete_animation' into 'master'
...
Destruct animation asynchronously when unloading a cell
See merge request OpenMW/openmw!2177
2022-07-26 13:42:43 +00:00
psi29a
bbcf7809f0
Merge branch 'gui_cleanup' into 'master'
...
GUI cleanup
See merge request OpenMW/openmw!2169
2022-07-26 13:39:33 +00:00
elsid
d165966bea
Make OSGTexture final
...
To show that there are no more inheritance levels and also help compiler to
better optimize virtual function calls. There is no need to access virtual table
when compiler calls a virtual function of a final type.
2022-07-26 12:33:31 +02:00
elsid
5f800279ac
Remove unused Gui::FontLoader::mTextures
2022-07-26 12:33:27 +02:00
elsid
0614b82452
Restore UnrefQueue to destruct animation asynchronously
2022-07-24 21:08:43 +02:00
Andrei Kortunov
e0c05a15fb
Post processing shaders localization
2022-07-24 13:18:50 +00:00
psi29a
ad687c380a
Merge branch 'nif' into 'master'
...
Move NIF implementation to cpp files
Closes #6518
See merge request OpenMW/openmw!2170
2022-07-21 16:09:33 +00:00
Andrei Kortunov
c36c28e8f9
Move NIF implementation to cpp files
2022-07-21 15:54:52 +04:00
Petr Mikheev
643e33c11a
Merge branch 'lua_pathfinding_bindings' into 'master'
...
Add bindings for navigator utils functions (#6690 )
See merge request OpenMW/openmw!2128
2022-07-20 23:52:16 +00:00
elsid
27cc901e76
Add bindings for navigator utils functions
2022-07-21 00:04:26 +02:00
elsid
036937ee02
Store RenderManager textures by value
2022-07-20 22:49:46 +02:00
elsid
6738722aa5
Initialize all required osgMyGUI::DataManager members in constructor
2022-07-20 22:49:46 +02:00
elsid
1c507125df
Remove empty functions
2022-07-20 22:49:46 +02:00
elsid
d307178683
Replace components/vfs/manager.hpp include by forward declaration
2022-07-20 22:49:46 +02:00
elsid
a281bcaf90
Remove redundant Platform::initialize function
2022-07-20 22:49:44 +02:00
elsid
c0e1642d7f
Use unique_ptr for osgMyGUI::Platform members
2022-07-20 21:49:33 +02:00
Andrei Kortunov
de58c9dff3
Get rid of obsolete osg::Geode where it is possible
2022-07-20 15:28:56 +04:00
Andrei Kortunov
168a097c8b
Improve binding VFS to MyGUI
2022-07-20 08:06:57 +04:00
psi29a
3b75ae7ff1
Merge branch 'terrain-include-cleanup' into 'master'
...
Cleanup includes in Terrain component
See merge request OpenMW/openmw!2157
2022-07-19 14:42:43 +00:00
Matt
c6bc264b35
Use correct assertion for the file implementation
2022-07-19 13:48:57 +00:00
psi29a
4a15fae588
Merge branch 'fix-fileclose' into 'master'
...
Use ScopedHandle for File::Handle
See merge request OpenMW/openmw!2159
2022-07-19 10:05:07 +00:00
ζeh Matt
8f7ec42c09
Close handle if valid for move assignment
2022-07-18 23:11:09 +03:00
Andrei Kortunov
4e7fe5a8bd
Set VFS only once
2022-07-18 23:37:41 +04:00
ζeh Matt
8a724eb772
Delete assignment and copy constructor
2022-07-18 22:28:35 +03:00
ζeh Matt
3c8ef8463c
Close only valid handles
2022-07-18 21:44:03 +03:00
Petr Mikheev
e222afc764
Merge branch 'fwd-lua-vfs' into 'master'
...
Type forward VFS::Manager in luastate.hpp and l10n.hpp
See merge request OpenMW/openmw!2158
2022-07-18 18:23:02 +00:00
ζeh Matt
2014ea40b9
Use ScopedHandle for File::Handle
2022-07-18 21:13:41 +03:00
psi29a
40cab76de5
Merge branch 'fonts' into 'master'
...
Enhance a way to setup fonts and layout files
See merge request OpenMW/openmw!2112
2022-07-18 17:36:31 +00:00
ζeh Matt
c5d85c1854
Revert removal of <atomic>
2022-07-18 19:40:26 +03:00
ζeh Matt
764d34362e
Type forward VFS::Manager in luastate.hpp and l10n.hpp
2022-07-18 19:36:41 +03:00
ζeh Matt
ddf43ec42f
Move structs into separate headers, cleanup includes, cleanup forwarders
2022-07-18 19:15:03 +03:00
ζeh Matt
ce556ba0cc
Remove obsolete LowLevelFile
2022-07-18 16:41:43 +03:00
Andrei Kortunov
845a812ebf
Drop fonts export - users are supposed to use TrueType fonts or mods with legacy format
2022-07-18 10:40:03 +04:00
Andrei Kortunov
5bc5c1bb0c
Use our fonts as a fallback
2022-07-18 09:57:20 +04:00
Andrei Kortunov
1f864e3127
Do not override monospace font
2022-07-18 00:04:43 +04:00
Andrei Kortunov
dc0d6fe31d
Avoid code duplication
2022-07-17 23:59:35 +04:00
Andrei Kortunov
facdc8fc0d
Use string_view
2022-07-17 22:13:27 +04:00
Andrei Kortunov
d83382d236
Rework Profiler to work with VFS
2022-07-17 22:01:48 +04:00
Andrei Kortunov
59c4ea014d
Rework StatsHandler to support VFS
2022-07-17 22:01:48 +04:00
Andrei Kortunov
6f6b5ba04b
Some refactoring
2022-07-17 22:01:48 +04:00
Andrei Kortunov
db686b25c2
Use fallback data from openmw.cfg to setup fonts
2022-07-17 22:01:48 +04:00
Andrei Kortunov
8513bc9620
Fix build error on MSVC
2022-07-17 22:01:48 +04:00
Andrei Kortunov
8fc3635c2c
Use case-insensitive font keys, remove debug code
2022-07-17 22:01:48 +04:00
Andrei Kortunov
c47a48e25d
Inject layout files to VFS
2022-07-17 22:01:48 +04:00
Andrei Kortunov
2630bc21dd
Allow to override MyGUI layout
2022-07-17 22:01:48 +04:00
Andrei Kortunov
4ddba5142e
Introduce font mappings
2022-07-17 22:01:48 +04:00
Andrei Kortunov
dd04bfccfb
Load fonts
2022-07-17 22:01:48 +04:00
Evil Eye
3967509cdd
Use meaningful names instead of pretending we don't know what snow is
2022-07-17 19:54:59 +02:00
psi29a
7c442926f8
Merge branch 'platform-file' into 'master'
...
Move platform specific file code into platform and cleanup LowLevelFile
See merge request OpenMW/openmw!2143
2022-07-17 16:44:13 +00:00
psi29a
b032a643f9
Merge branch 'vfs_string_view' into 'master'
...
Use std::string_view in VFS::Manager
See merge request OpenMW/openmw!2148
2022-07-17 15:50:29 +00:00
psi29a
6cc3ec12db
Merge branch 'ci-werror' into 'master'
...
Windows, MSVC: Enable warnings as errors on CI
See merge request OpenMW/openmw!2146
2022-07-17 15:49:51 +00:00
ζeh Matt
03302a8f5b
Conditionally build cpp for platform, remove obsolete header
2022-07-17 18:40:27 +03:00
elsid
0e12d331f9
Simplify iteration over Bone::mChildren
2022-07-17 13:52:24 +02:00
elsid
e4f599575e
Use unique_ptr to manage Bone lifetime
2022-07-17 13:34:45 +02:00
Petr Mikheev
38ee6d285d
Use std::string_view in VFS::Manager
2022-07-17 12:19:19 +02:00
elsid
6c8ed4d19c
Move Files::IStreamPtr alias to a separate header
...
To avoid transitive include of Windows.h all over the engine.
2022-07-17 11:35:39 +02:00
Project579
02ef9c953e
MSVC: Fix all warnings at level 4, upgrade Qt5 to 5.15.2 to also reduce warnings, disabled 5054 warnings due to Qt5's use of deprecated operators in C++20 .
2022-07-17 11:23:12 +02:00
ζeh Matt
3d5f898920
Cleanup and fixes
2022-07-16 21:18:57 +03:00
ζeh Matt
1b70ff775d
Move platform specific file code into platform and cleanup LowLevelFile
2022-07-16 20:40:42 +03:00
elsid
9398e97600
Avoid manual memory management for VFS archives
2022-07-16 15:30:14 +02:00
jvoisin
2ef2e93a46
Merge branch 'collection-lowercase' into 'master'
...
Makes key inside Collection::getCollection use lowercase
Closes #6483
See merge request OpenMW/openmw!2135
2022-07-14 20:39:27 +00:00
ζeh Matt
92e209c62a
Simplify getIsHungAppWindow
2022-07-14 22:02:01 +03:00
Matt
888d009a1e
Apply 1 suggestion(s) to 1 file(s)
2022-07-14 16:50:25 +00:00
Matt
32d50765ab
Apply 1 suggestion(s) to 1 file(s)
2022-07-14 16:50:15 +00:00
Igor Fedosov
68887e79a0
Makes key inside Collection::getCollection use lowercase
2022-07-14 17:02:35 +03:00
ζeh Matt
0d625abde0
Declare utf8ToUtf16 static
2022-07-14 16:47:27 +03:00
ζeh Matt
100e400fed
Dynamically obtain the function pointer to IsHungAppWindow
2022-07-14 16:46:31 +03:00
psi29a
80adcf3c88
Merge branch 'maybe_lock' into 'master'
...
Refactor Maybe*Locks
See merge request OpenMW/openmw!2126
2022-07-12 14:51:21 +00:00
Andrei Kortunov
d3da09878d
Drop line about non-existent UnrefQueue
2022-07-12 17:41:07 +04:00
elsid
22ed6d5c1e
Use unsigned to define number of threads
2022-07-12 15:19:52 +02:00
psi29a
54db3a97bb
Merge branch 'multiview-refactor' into 'master'
...
[Multiview] refactoring
See merge request OpenMW/openmw!2122
2022-07-12 08:44:43 +00:00
Petr Mikheev
9fbcc5df5e
Merge branch 'localization' into 'master'
...
Use Lua's YAML-based localization for MyGUI
See merge request OpenMW/openmw!2099
2022-07-12 08:13:33 +00:00
Andrei Kortunov
ccbb5e03fb
Use YAML files to translate MyGUI's localization tags
2022-07-12 08:20:40 +04:00
Mads Buvik Sandvei
b277fa48c7
Refactor multiview to avoid littering OSG_HAS_MULTIVIEW and multiview-related uniforms around the code, keep them all in multiview.cpp.
2022-07-11 17:27:05 +02:00
psi29a
aaaeed572a
Merge branch 'fix_6841' into 'master'
...
Treat empty `RootCollisionNode` in NIF as NC flag and generate VisualOnly collision shape
Closes #6841
See merge request OpenMW/openmw!2084
2022-07-11 08:31:59 +00:00
Petr Mikheev
8b8c304953
Treat empty RootCollisionNode
in NIF as NCC flag and generate CameraOnly collision shape
2022-07-10 00:46:11 +02:00
Petr Mikheev
dc3ba3a75b
Fix #6862
2022-07-09 23:19:38 +02:00
elsid
9ac3bb753e
Move declaration private static member variables of LightManager to .cpp
...
There is no need to expose them to other translation units.
2022-07-08 17:21:01 +02:00
elsid
4211cf1c24
Use uniform indent and apply openmw naming policy
2022-07-08 17:14:13 +02:00
psi29a
510a9b9a5e
Merge branch 'navmeshtilescache_find' into 'master'
...
Avoid redundant copy when finding item in NavMeshTilesCache
See merge request OpenMW/openmw!2109
2022-07-06 13:48:24 +00:00
elsid
6fb7af3b63
Avoid redundant copy when finding item in NavMeshTilesCache
...
std::make_tuple returns a tuple for types with removed references which makes it
to copy arguments. std::tie leaves references.
2022-07-06 14:23:07 +02:00
elsid
b4f12aace1
Explicitly ignore result of std::unique_ptr::release call
...
components/nifbullet/bulletnifloader.cpp:206:13: warning: the value returned by this function should be used [bugprone-unused-return-value]
boxShape.release();
^~~~~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:232:13: warning: the value returned by this function should be used [bugprone-unused-return-value]
child.release();
^~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:233:13: warning: the value returned by this function should be used [bugprone-unused-return-value]
mStaticMesh.release();
^~~~~~~~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:240:9: warning: the value returned by this function should be used [bugprone-unused-return-value]
mStaticMesh.release();
^~~~~~~~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:246:9: warning: the value returned by this function should be used [bugprone-unused-return-value]
mAvoidStaticMesh.release();
^~~~~~~~~~~~~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:411:9: warning: the value returned by this function should be used [bugprone-unused-return-value]
childMesh.release();
^~~~~~~~~~~~~~~~~~~
components/nifbullet/bulletnifloader.cpp:425:9: warning: the value returned by this function should be used [bugprone-unused-return-value]
childShape.release();
^~~~~~~~~~~~~~~~~~~~
2022-07-06 13:52:29 +02:00
elsid
72bda2bd10
Avoid redundant initialization
...
components/nifbullet/bulletnifloader.cpp:79:24: warning: Value stored to 'a' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
unsigned short a = strip[0], b = strip[0], c = strip[1];
^ ~~~~~~~~
2022-07-06 13:52:28 +02:00
elsid
5b9ca3b979
Avoid possible division by zero
...
components/detournavigator/navmeshdb.cpp:183:43: warning: Division by zero [clang-analyzer-core.DivideZero]
setMaxPageCount(*mDb, maxFileSize / dbPageSize + static_cast<std::uint64_t>((maxFileSize % dbPageSize) != 0));
~~~~~~~~~~~~^~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:182:33: note: Calling 'getPageSize'
const auto dbPageSize = getPageSize(*mDb);
^~~~~~~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:144:13: note: 'value' initialized to 0
std::uint64_t value = 0;
^~~~~~~~~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:145:13: note: Calling 'request<DetourNavigator::(anonymous namespace)::GetPageSize, unsigned long *, >'
request(db, statement, &value, 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
components/sqlite3/request.hpp:254:64: note: Left side of '&&' is false
for (std::size_t i = 0; executeStep(db, statement) && i < max; ++i)
^
components/detournavigator/navmeshdb.cpp:145:13: note: Returning from 'request<DetourNavigator::(anonymous namespace)::GetPageSize, unsigned long *, >'
request(db, statement, &value, 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:146:13: note: Returning zero (loaded from 'value')
return value;
^~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:182:33: note: Returning from 'getPageSize'
const auto dbPageSize = getPageSize(*mDb);
^~~~~~~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:182:9: note: 'dbPageSize' initialized to 0
const auto dbPageSize = getPageSize(*mDb);
^~~~~~~~~~~~~~~~~~~~~
components/detournavigator/navmeshdb.cpp:183:43: note: Division by zero
setMaxPageCount(*mDb, maxFileSize / dbPageSize + static_cast<std::uint64_t>((maxFileSize % dbPageSize) != 0));
~~~~~~~~~~~~^~~~~~~~~~~~
2022-07-06 13:52:28 +02:00
AnyOldName3
2bb28b5e27
Merge branch 'fix_typo' into 'master'
...
Fix particle flags typo (#6857 )
Closes #6857
See merge request OpenMW/openmw!2102
2022-07-05 19:31:37 +00:00
glassmancody.info
0954597fa7
fix typo with wrong flags in particle nifloader
2022-07-05 11:00:28 -07:00
Andrei Kortunov
38042fd7a2
Init missing variables
2022-07-05 17:47:52 +04:00
Andrei Kortunov
aed0da46a9
Check a result of dynamic_cast
2022-07-05 17:47:49 +04:00
jvoisin
f451b09f10
Merge branch 'rm_stream_include' into 'master'
...
Remove redundant ostream, istream, iostream and sstream includes
See merge request OpenMW/openmw!2097
2022-07-05 11:00:50 +00:00
psi29a
9003e83470
Merge branch 'particle_vertex' into 'master'
...
Soft enforce vertex lighting on particle systems (i.e. with exception of normal maps)
See merge request OpenMW/openmw!2098
2022-07-05 10:15:36 +00:00
psi29a
85a8359b36
Merge branch 'only_when_necassary' into 'master'
...
Conditional soft particles
See merge request OpenMW/openmw!2078
2022-07-05 10:14:32 +00:00
glassmancody.info
7bed2208e9
only force ppl on particles with normal maps
2022-07-04 18:28:29 -07:00
elsid
bef15edf0b
Remove redundant ostream, istream, iostream and sstream includes
...
* Replace by std::to_string and operator+ where possible.
* Move the code requiring to include <sstream> from .hpp to .cpp files.
2022-07-05 01:41:28 +02:00
elsid
782d3d9680
Avoid calling getMultiview from ~StereoFrustumManager
...
Otherwise coverity complains about a function throwing exceptions called from a
destructor.
2022-07-04 20:44:41 +02:00
Andrei Kortunov
f6a07ab603
Merge branch 'fix_image_button_scale' into 'master'
...
Use float based scale factor for ImageButton texture (#6849 )
Closes #6849
See merge request OpenMW/openmw!2076
2022-07-03 17:46:51 +00:00
elsid
a16c55c93f
Use float based scale factor for ImageButton texture
2022-07-03 19:41:13 +02:00
jvoisin
bbcc12262f
Merge branch 'fix_icu_from_utf8_debug_crash' into 'master'
...
Avoid constructing icu::StringPiece from std::string directly (#6782 )
Closes #6782
See merge request OpenMW/openmw!2073
2022-07-03 17:37:00 +00:00