Commit Graph

6835 Commits (8cf431aeb2b80907e25d941ee6078da0236720e7)

Author SHA1 Message Date
elsid d541436b15
Support parent, type and value fields in esmtool for ESM4 2 years ago
elsid e7acced5e9
Move metafunctions to check ESM4 field existence to a separate header 2 years ago
elsid 5bb088218e
Restore original formId
To make sure esmtool prints original value and not a result of conversion.
2 years ago
florent.teppe f9da66e9ee Greatly improved how the variant on MWWorld::CellRef works 2 years ago
florent.teppe 216ca71149 Applied review comments
getEditorName => getNameId
restored cosntructor in CoordinateConverter
2 years ago
florent.teppe e6e27413d9 gives MWWorld::CellRef the MWWorld::Cell treatment
MWWorld::CellRef now has a variant, and datas that are part of the intersection of both ESM4::Reference and ESM::CellRef are part of MWWorld::CellRef

For ESM4 most data isn't filled in, so it returns default values.
2 years ago
elsid 8be2fc9fd7
Stop updating navmeshtool progress on first bad message 2 years ago
florent.teppe 23614ae2ae Renamed esm3esm4bridge => esmbridge 2 years ago
florent.teppe 5037dcf9bc Fixes a crash on launch and some compile issue
also uses std::visit in cellstore comparison to avoid missing combinasion

split loadrefs in loadref of ESM4 and ESM3.
2 years ago
florent.teppe cb8cdd8831 ESM::CellVariant aans MWWorld:Cell now take reference in constructor: signals that nullptr isn't accepted.
also applied other review comments.
2 years ago
florent.teppe 531e55e04c Better handling of the esm3 vs esm4 cell problem
Common attribute are in one structure that has two constructors, one for ESM3 vs ESM4 Cell
Mood part of MWWorld::Cell
2 years ago
elsid cf75363290
Typed launcher settings
QMultiMap is not clear about what settings exist and it's not efficient way to
access them after they are loaded.
2 years ago
elsid 0961720835
Join path components using path::operator/ instead of string::operator+ 2 years ago
florent.teppe 3515c8e61a Static references are created as refcells, nothing displayed yet. 2 years ago
florent.teppe c896a2ca48 Crashfix on launch 2 years ago
florent.teppe 0018bcf7de Should make cellvariant safer to use.
Hopefully clang tidy agrees.
2 years ago
florent.teppe e81e278363 Implements some cell params + linux compile fix 2 years ago
florent.teppe 562e129bd0 encapsulations of esm3 cell and esm4 cells. 2 years ago
florent.teppe 08b68fcd48 Cannot load a cell yet, but getting more necessary parts in 2 years ago
Evil Eye d40a9ec5bc Use worldspace coords in AiWanderStorage 2 years ago
psi29a 1422053fa9 Merge branch 'more_uniforms' into 'master'
[Postprocessing] Add sky and ambient colors

See merge request OpenMW/openmw!2638
2 years ago
psi29a eb853b1315 Merge branch 'ptmikheev-master-patch-34687' into 'master'
Fix constexprant

See merge request OpenMW/openmw!2643
2 years ago
Petr Mikheev 24ef6d29d4 Fix constexprant 2 years ago
florent.teppe a4137e941c std::string_view can be used in map and unordered map
This avoids some unecessary dynamic allocations.
Also applies some review advice.
2 years ago
florent.teppe 63e44eddc9 Navigator doesn't use RefId anymore 2 years ago
florent.teppe 150e2ba885 Revert "Use ESM::RefId for worldspace in detournavigator"
This reverts commit b4ab153418.

# Conflicts:
#	apps/navmeshtool/worldspacedata.cpp
2 years ago
florent.teppe 3780033837 Reverts Cell name to a string 2 years ago
glassmancody.info 564c408663 expose more uniforms to postprocessing 2 years ago
Petr Mikheev 95999afefd Apply clang-format to the previous commit 2 years ago
Petr Mikheev ca48b778c3 Merge branch 'addutils' into 'master'
Add remap and round to lua utils

See merge request OpenMW/openmw!2605
2 years ago
Kindi 07da7eddea Add remap and round to lua utils 2 years ago
elsid dd89403df0
Move ensureUtf8Encoding to named namespace
To follow https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#sf21-dont-use-an-unnamed-anonymous-namespace-in-a-header

Add QtGlobal include to define QT_VERSION and QT_VERSION_CHECK macroses before
they're used.
2 years ago
psi29a ee980721b8 Merge branch 'debug_lua_memory' into 'master'
Additional information in Lua profiler

See merge request OpenMW/openmw!2612
2 years ago
psi29a fbeacc1e0f Merge branch 'navigator_check_agent_bounds' into 'master'
Check agent bounds on adding agent to navigator

See merge request OpenMW/openmw!2629
2 years ago
psi29a 54c18ea86d Merge branch 'change-const-to-constexpr' into 'master'
change const to constexpr

Closes #6797

See merge request OpenMW/openmw!2630
2 years ago
elsid cf1d8544e3
Check agent bounds on adding agent to navigator
Do not add agent bounds which are not supported by recastnavigation with given
settings and log such events.

To avoid reaching navmesh tile generation to find out it can't be generated for
such agent bounds.
2 years ago
James-Deciutiis 4e61fec14d change const to constexpr 2 years ago
Andrei Kortunov ee9ab8d393 Use STL-style iterators instead of Java-style ones 2 years ago
Andrei Kortunov 792feae39e Do not use deprecated implicit conversion 2 years ago
Andrei Kortunov 0864d997d0 Add missing includes 2 years ago
psi29a a7a89ba7c1 Merge branch 'launcher' into 'master'
Rework how OpenMW launcher looks

Closes #6922

See merge request OpenMW/openmw!2587
2 years ago
psi29a dc3ec1a0a0 Merge branch 'mwscript' into 'master'
Multiple mwscript optimizations and some refactoring

See merge request OpenMW/openmw!2600
2 years ago
psi29a 32733d23fa Merge branch 'xanim' into 'master'
X-file handling fixes (bug #5371)

Closes #5371

See merge request OpenMW/openmw!2614
2 years ago
Andrei Kortunov 902c48d1bb Rework launcher UI 2 years ago
elsid 44429f0393
Limit NavMeshManager update range by player tile and max tiles
Object AABB may be much larger than area currently covered by navmesh. In this
case all tiles beyond covered range should be ignored. Attempt to iterate over
them will not result in any new tile updates but can take quite a while. At
maximum this can be pow(INT_MAX - INT_MIN, 2) iterations.

Use arbitrary time limit to check for update call to finish in the test.
2 years ago
Alexei Kotov 6ff9b5d326 Make use of ends_with for KF 2 years ago
Alexei Kotov 434b4deda1 Don't use xkf if xnif is merely the base model (bug #5371) 2 years ago
Alexei Kotov 4d0788e016 Use xnif if its xkf is present even if xnif isn't 2 years ago
elsid d4ab1101eb
Change Interpreter type aliases to be fixed size types
Remove no longer relevant comment for float type.
2 years ago
elsid b88f0d2dbd
Replace mwscript program serialization into a vector with simple struct
Mostly to avoid string literal lookup by index with iteration over all preciding
literals and calling strlen. This is very inefficient. In genral this makes code
much more straightforward but also makes it portable since now int and float of
different sizes are properly supported.
2 years ago
Petr Mikheev d9e9db0983 Additional information in Lua profiler 2 years ago
psi29a 25d7ee7fdc Merge branch 'streams' into 'master'
Setup utf8qtextstream in the way consistent with other Qt components

See merge request OpenMW/openmw!2611
2 years ago
Andrei Kortunov 8da93d4b12 Setup utf8qtextstream in the way consistent with other Qt components 2 years ago
jvoisin c90d22f3b2 Replace usage of QRegularExpression::anchoredPattern with `^` and `$`
Using `^` and `$` is shorter than `QRegularExpression::anchoredPattern`,
and even allows us in one case to get rid of a trailing `.*`.
2 years ago
Andrei Kortunov bfcbc2350d Handle UTF-8 in Qt streams in the Qt6-compatible way 2 years ago
elsid 60eede6a1d
Fix variable naming styleguide 2 years ago
elsid 0ab3090385
Make Runtime::getPC and setPC inline 2 years ago
elsid 46b4427d2e
Remove user defined constructor for Runtime 2 years ago
elsid 9c8df09475
Remove user defined constructors for Interpreter 2 years ago
Andrei Kortunov 307a60e87c Migrate from QRegExp to more modern QRegularExpression 2 years ago
elsid c173348cbe
Use default initializers for ESM::RefNum members
Instead of unset function that is removed now and assignments all over the code.
2 years ago
psi29a 6a250c5900 Merge branch 'baby_it_is_occluded_outside' into 'master'
Weather Particle Occlusion (#5492)

Closes #5492

See merge request OpenMW/openmw!1328
2 years ago
psi29a 83718878b2 Merge branch 'Load_ESM4' into 'master'
Loading ESM4 data and storing them in the ESMStore

See merge request OpenMW/openmw!2557
2 years ago
psi29a a9d3186173 Merge branch 'fix_esm_fixed_string_warning' into 'master'
Fix gcc warning: array subscript n is outside array bounds of ‘const char [n]’

See merge request OpenMW/openmw!2585
2 years ago
Andrei Kortunov 9630246cae Sort quests in journal by name (bug 7054) 2 years ago
glassmancody.info 9a4977d334 rain occlusion 2 years ago
elsid 2bbed8cc06
Fix gcc warning: array subscript 5 is outside array bounds of ‘const char [5]’
In function ‘bool ESM::operator==(const FixedString<capacity>&, const T* const&) [with long unsigned int capacity = 5; T = char; <template-parameter-1-3> = void]’,
    inlined from ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1358:11,
    inlined from ‘static testing::AssertionResult testing::internal::EqHelper::Compare(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*; typename std::enable_if<((! std::is_integral<_Tp>::value) || (! std::is_pointer<_Dp>::value))>::type* <anonymous> = 0]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1377:64,
    inlined from ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’ at apps/openmw_test_suite/esm/test_fixed_string.cpp:165:9:
components/esm/esmcommon.hpp:134:19: warning: array subscript 5 is outside array bounds of ‘const char [5]’ [-Warray-bounds]
  134 |         return rhs[capacity] == '\0';
      |                ~~~^
apps/openmw_test_suite/esm/test_fixed_string.cpp: In member function ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’:
apps/openmw_test_suite/esm/test_fixed_string.cpp:164:20: note: at offset 5 into object ‘other’ of size 5
  164 |         const char other[5] = { 'a', 'b', 'c', 'd', '\0' };
      |                    ^~~~~
2 years ago
psi29a 55ba5ed7ea Merge branch 'mygui_log' into 'master'
Use OpenMW logging levels for MyGUI log

Closes #7130

See merge request OpenMW/openmw!2582
2 years ago
Andrei Kortunov b217d1fc36 Use OpenMW logging levels for MyGUI log (feature 7130) 2 years ago
psi29a 0d8d15a732 Merge branch 'fixcolladaanimopbug' into 'master'
Fix Collada animated object bug #7051

Closes #7051

See merge request OpenMW/openmw!2565
2 years ago
unelsson 5b0713517a Clang-format 2 years ago
psi29a 319aa11d84 Merge branch 'l10n_rename' into 'master'
Reorganize l10n files

See merge request OpenMW/openmw!2546
2 years ago
psi29a 1e62b84f9a Merge branch 'lua_initdata' into 'master'
Allow passing `initData` to the :addSript call (#7091)

Closes #7091

See merge request OpenMW/openmw!2568
2 years ago
florent.teppe 631fa26872 Applies review advice. 2 years ago
unelsson ba9c2c9928 Add TemplateRef to animated Collada model 2 years ago
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.
2 years ago
florent.teppe e9190bedc8 Reverts useless CmakeList formatting 2 years ago
Petr Mikheev 8c7d347179 Reorganize l10n files 2 years ago
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
2 years ago
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
2 years ago
Petr Mikheev b248c3e173 Allow passing `initData` to the :addSript call (#7091) 2 years ago
unelsson d60fd86719 clang format 2 years ago
unelsson c71504eeb0 Better comments 2 years ago
unelsson 4676ac4ac9 Cleaner code part 2 2 years ago
unelsson 960019cf65 Cleaner code 2 years ago
unelsson 2efc691736 clang format 2 years ago
unelsson 7ef6b3cb62 automatic clang format 2 years ago
unelsson d8de56e33c Coding style improvements, add Torso animation layer 2 years ago
unelsson ffc64205c5 Force collada animation layers, remove nif blend mask detection. 2 years ago
elsid c71862a8df
Reset rcPolyMeshDetail members after rcFree
To avoid double free causing by later recastnavigation versions.
2 years ago
psi29a e6064645db Merge branch 'esm_ref_id_refactor' into 'master'
Simplify ESM::RefId

See merge request OpenMW/openmw!2563
2 years ago
elsid 755067f0f3
Remove redundant ESM::RefId member functions 2 years ago
elsid fe57aec2a4
Move ESM::RefId comment to make sure IDEs recognize it and show in tooltips 2 years ago
elsid b4ab153418
Use ESM::RefId for worldspace in detournavigator 2 years ago
Petr Mikheev b8fb013edf Merge MWLua::ObjectRegistry and MWWorld::WorldModel 2 years ago
psi29a 80e2cd79ec Merge branch 'boat_closer_to_todd' into 'master'
Ignore special characters preceding script commands

Closes #6807

See merge request OpenMW/openmw!2555
2 years ago
florent.teppe afed7e60ef Upgraded Filesave version for RefIDs
Fix logic issue
2 years ago
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
2 years ago
florent.teppe 1ef1de974d script blacklist => RefId
Applies changes from review

Fixed clang format

Clang format + review.
2 years ago
florent.teppe 2c30575b3b CellName is now a RefId, makes more sense that way. 2 years ago
florent.teppe 6ff90b34a8 Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
Fixed multiple issues from the review.
2 years ago
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
2 years ago
florent.teppe e7deffb376 Adds comment that explains what RefIds are 2 years ago
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
2 years ago
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
2 years ago
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
2 years ago
fteppe c283ea0ae8 string_view& => string_view
fixed ref to temp variable
2 years ago
fteppe 7da38113be Changed more hardcoded RefId to be static to avoid multiple runtime creations
adresses multiple review comments
2 years ago
fteppe 62d8fe3fc2 changed a few hardcoded refIds used in mutliple places to be defined only once in a variable 2 years ago
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
2 years ago
fteppe 2f2e401559 is Hidden marker now takes a const RefId& instead of a string_view 2 years ago
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
2 years ago
fteppe c8bb733360 removed clear() function, the only way to change the Id from the outside is from the assignment operator
replaced ciEqual with == operator
2 years ago
fteppe ee941f9b09 RefId's mId can't be get as mutable from the outside
also removed useless operator= defintion
2 years ago
fteppe d6d2a37d03 some clean and better comments 2 years ago
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!
2 years ago
Evil Eye b19ad079c2 Ignore special characters preceding script commands 2 years ago
Alexei Kotov cdd6a8c007 Merge branch 'models_for_the_model_god' into 'master'
Implement TestModels/T3D

Closes #7058

See merge request OpenMW/openmw!2506
2 years ago
psi29a 14afde4689 Merge branch 'recast_context' into 'master'
Check input and report errors via RecastContext (#7093)

Closes #7093

See merge request OpenMW/openmw!2544
2 years ago
psi29a df92d76536 Merge branch 'drippy' into 'master'
Ignore non-3D agents in the navigator

Closes #7093

See merge request OpenMW/openmw!2537
2 years ago
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.
2 years ago
Cédric Mocquillon 7e77e69a3c Use a wider type when converting to a signed type 2 years ago
Evil Eye d40c09c18c Ignore non-3D agents in the navigator 2 years ago
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.
2 years ago
psi29a 1d55be8214 Merge branch 'lua_profiler' into 'master'
Lua profiler

See merge request OpenMW/openmw!2523
2 years ago
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) 2 years ago
Andrei Kortunov b0d687964e Make sure that local path has a trailing slash on Linux and Windows 2 years ago
Petr Mikheev 6fa65e4729 Track memory and CPU usage per script in LuaUtil::LuaState 2 years ago
Evil Eye bbbcc5e4b7 Add an early out to dialogue loading to match Morrowind.exe behaviour 2 years ago
AnyOldName3 66e5415895 Log screenshot capture 2 years ago
elsid 89884fae0b
Add link dependencies to libosgSim and collada-dom 2 years ago
Evil Eye b94818b24a Tweak message and temporarily set model ttl to 0 2 years ago
Evil Eye 0ae5755abb Implement TestModels/T3D 2 years ago
elsid baa39c06bb
Move fourCC to a separate file 2 years ago
glassmancody.info 87c0a6e6dc fix line numbers being off by one for each jump block 2 years ago
uramer a2fa1fe0a5 Execute async callbacks on the main Lua stack 2 years ago
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.
2 years ago
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.
2 years ago
psi29a 8162541a14 Merge branch 'fix_macos_build' into 'master'
Use separate header to define missing GL constants

See merge request OpenMW/openmw!2464
2 years ago
psi29a e16c451d08 Merge branch 'l10n' into 'master'
Separate l10n manager from lua

See merge request OpenMW/openmw!2451
2 years ago
psi29a c164437d91 Merge branch 'classism' into 'master'
Use class service flags for autocalc NPCs

Closes #7044

See merge request OpenMW/openmw!2461
2 years ago
elsid c324482338
Use separate header to define missing GL constants 2 years ago
elsid 843753da14
Remove unused includes 2 years ago
jvoisin 3cbf1dc042 First pass with include-what-you-use 2 years ago
Evil Eye 60c26832d2 Use class service flags for autocalc NPCs 2 years ago
Petr Mikheev 3697c9266b Separate l10n manager from lua 2 years ago
elsid bb8b5e2108
Add META_Node to clang-format StatementMacros 2 years ago
psi29a 66e14fa3bd Merge branch 'fix_extra_semi_warning' into 'master'
Fix and prevent -Wextra-semi warning

See merge request OpenMW/openmw!2455
2 years ago
elsid 063fff7fa4
Fix and prevent -Wextra-semi warning 2 years ago
elsid 6b8ed4c64f
Use sorted vector for ViewData::contains implementation 2 years ago
elsid 624d8bc931
Support unsigned settings values 2 years ago
elsid 2388b21f63
Use std::from_chars to parse settings integral numbers and handle errors 2 years ago
psi29a 6e71804048 Merge branch 'keying_in' into 'master'
Add key flag on load

Closes #7034

See merge request OpenMW/openmw!2444
2 years ago
Evil Eye e6592aa850 Add key flag on load 2 years ago
elsid 4de8ea30c8
Report used memory by Lua interpreter 2 years ago
elsid 1b9b61b60b
Format navmesh water vertices and indices 2 years ago
psi29a b58c658b56 Merge branch 'localtime_errors' into 'master'
Handle localtime errors

See merge request OpenMW/openmw!2434
2 years ago
clang-format-bot 88ec8a9523
Apply clang-format 2 years ago
elsid dd63a1602f
Handle localtime errors 2 years ago
psi29a aed0ad6b83 Merge branch 'nifosg_tests' into 'master'
Add tests for NifOsg::Loader

See merge request OpenMW/openmw!2421
2 years ago
Andrei Kortunov 890be1b590 Fix crash in the editor 2 years ago
AnyOldName3 581b333386 Add missing include 2 years ago
Project579 6fe89ff22b Fix dumb regression, initialize "std::filesystem::file_time_type" with "clock::now()". 2 years ago
Project579 5cf2a958eb Make conversions between std::chrono time_point and string safer by not using "localtime" directly. 2 years ago
elsid 06f7e8088e
Check for negative record list length 2 years ago
elsid 0688b6de40
Separate record list reading from its state
To make it possible to set record list state independently from reading NIF
file.
2 years ago
elsid c338c1e5d3
Add Nif::FileView as read only interface for Nif::NIFFile
To make sure interface is scoped to what users require.
2 years ago
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.
2 years ago
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.
2 years ago
clang-format-bot ddb0522bbf
Apply clang-format to code base 2 years ago
elsid 63b51ead84
Use nv_default shader prefix for unhandled types 2 years ago
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
2 years ago
elsid ac01fd5e75
Add missing non-prefixed reserved nodes 2 years ago
psi29a 86ff454ca2 Merge branch 'thirdtimesthecharm' into 'master'
Rehash the rehashing of rehashed morph loading

See merge request OpenMW/openmw!2413
2 years ago
psi29a 46935e9e97 Merge branch 'renormalise' into 'master'
Renormalise line endings

See merge request OpenMW/openmw!2412
2 years ago
Alexei Kotov e2ed313389 Don't load keys for Gamebryo morphs 2 years ago
AnyOldName3 84f8a6848a Renormalise line endings
This should replace accidental CRLF with LF
2 years ago
elsid fd93b7186f
Add missing include 2 years ago
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
2 years ago
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
2 years ago
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.
2 years ago
psi29a d1c79fa8d1 Merge branch 'pre_clang_format_fixes_2' into 'master'
Fixes before applying clang-format 2

See merge request OpenMW/openmw!2401
2 years ago
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
2 years ago
psi29a ac2b6525e9 Merge branch 'interpcontrollers' into 'master'
Streamline NiInterpController handling

See merge request OpenMW/openmw!2404
2 years ago
elsid 6f00641c8a
Fix reading array of zero terminated strings
NIFZ and KFFZ subrecords store multiple strings separated by \0 character.
2 years ago
Alexei Kotov 482de23893 Streamline NiInterpController handling 2 years ago
elsid ae812701ec Merge branch 'crashfix_debugdraw' into 'master'
crashfix of debug draw on game exit

Closes #7004

See merge request OpenMW/openmw!2398
2 years ago
florent.teppe 943198e325 Small changes 2 years ago
elsid 410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line 2 years ago
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
2 years ago
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
2 years ago
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.
2 years ago
elsid 50d8bd9cdd
Disable clang-format for files that should have minimal diff with OSG 2 years ago
elsid 219b9e7cbf
Revert "Use raw string literals for shaders"
This reverts commit 0e72055385.
2 years ago
elsid 52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line 2 years ago
elsid 0e72055385
Use raw string literals for shaders 2 years ago
elsid 409f83a149
Use raw string literal for error marker definition 2 years ago
florent.teppe 565a08b95a crashfix on game exit 2 years ago
elsid 6ae15f08e0
Avoid chained operator() calls to prevent formatting issues 2 years ago
unrelentingtech 1c8fd2ecdb Implement system-scaled HiDPI support (SDL_WINDOW_ALLOW_HIGHDPI - Wayland, macOS, etc) 2 years ago
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.
2 years ago
psi29a 80d52e3da8 Merge branch 'cursor' into 'master'
Support high-resolution cursor textures

Closes #6933

See merge request OpenMW/openmw!2262
2 years ago
elsid 9f35f9b45b
Add missing include <array> 2 years ago
psi29a 435eacdaad Merge branch 'debug_draw_commands' into 'master'
API to draw primitives

See merge request OpenMW/openmw!2345
2 years ago
Andrei Kortunov a2c02d2999 Support high-resolution cursor textures (feature 6933) 2 years ago
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
2 years ago
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
2 years ago
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
2 years ago
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
2 years ago
psi29a 29f3de30c2 Merge branch 'master' into 'cellstore_refactor'
# Conflicts:
#   apps/openmw/mwworld/scene.cpp
2 years ago
Project579 886b8c7af2 Fix build error with stdlibc++ due to includes shuffling. 2 years ago
Project579 9ceafe770d Hard fail on loading BSA with records using unicode paths. 2 years ago
Project579 a60cebd0f9 Use std::u8string_view in debug logger overloads parameters. 2 years ago
Project579 ca14fc00dc Added dedicated functions for conversions between QString and std::filesystem::path. 2 years ago
Project579 c226b35f1f Fix some remaining encoding errors due to std::filesystem transition. 2 years ago
Project579 5456ef1d50 Add new functions and overloads to support std::u8string and std::filesystem::path. 2 years ago
Project579 2df8bfed25 Fix build errors after rebase against master due to large amount of changes. 2 years ago
Project579 c3175e371a Fix YAML::LoadFile mangling Unicode paths in Windows. 2 years ago
Project579 a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2 years ago
Project579 dec3f24375 filesystem: configurationmanager: Store file path tokens as std::u8string. 2 years ago
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. 2 years ago
Project579 b817359bcf Revert "Fix regression from https://gitlab.com/OpenMW/openmw/-/merge_requests/1776"
This reverts commit 6a5ad4ca43.
2 years ago
Project579 864112b5db Fixed Windows build when using MSVC 14.26 and MacOS build. 2 years ago
Project579 e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 2 years ago
florent.teppe 10899ed680 typo 2 years ago
Project579 35fe214588 Updated components/misc/timeconvert.hpp to fix the Android build. 2 years ago
Project579 5446571aec Circumvent QT MOC bugs by including the filesystem header in a specific order. 2 years ago
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" 2 years ago
Project579 cd229a965b Fixed windows build and updated tests to reflect changes of escape character from "&" to "\" 2 years ago
Project579 4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2 years ago
florent.teppe cdc7864863 missing file 2 years ago
florent.teppe 256d8a699a moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp 2 years ago
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.
2 years ago
florent.teppe 65bd007baa simplified some big switch/case 2 years ago
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
2 years ago
psi29a 95ad1d91df Merge branch 'esmstore-round-2' into 'master'
More ESMStore cleanup

See merge request OpenMW/openmw!2383
2 years ago
ζeh Matt aa65df8872
Rename meta.hpp to tuplemeta.hpp 2 years ago
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.
2 years ago
ζeh Matt c856095562
Use compile time generated indices for tuples types 2 years ago
ζeh Matt 8f7703d5c8
Rename HasMember to TupleHasType and move code into misc/meta.hpp 2 years ago
elsid d15e1dca84
Use R-tree for objects to be used for navmesh generation
Instead of storing a set of objects per tile.
2 years ago
psi29a 1859c6eded Merge branch 'pcvisionbonus' into 'master'
Implement PCVisionBonus functions

Closes #6983

See merge request OpenMW/openmw!2371
2 years ago
psi29a 1f2c473242 Merge branch 'bhk' into 'master'
Load bhkCapsuleShape and bhkSphereShape

See merge request OpenMW/openmw!2377
2 years ago
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
2 years ago
Alexei Kotov f17b1cd7ab Load bhkCapsuleShape and bhkSphereShape 2 years ago
psi29a a5664d7ba9 Merge branch 'reserve_utf8_stream' into 'master'
Reserve the output buffer in lowerCaseUtf8

See merge request OpenMW/openmw!2370
2 years ago
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.
2 years ago
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.
2 years ago
elsid de80b86cc1
Use proper type to cast enum value 2 years ago
elsid 204ab6fea3
Use version instead of generation and revision for recast mesh 2 years ago
elsid 914edd1194
Make frequently called oneliners inline 2 years ago
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.
2 years ago
florent.teppe 445d91d85d adds missing include 2 years ago
Evil Eye 489c7a10b6 Implement PCVisionBonus functions 2 years ago
psi29a 9472998bad Merge branch 'ori' into 'master'
Implement the full version of the ori command

See merge request OpenMW/openmw!2368
2 years ago
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.
2 years ago
florent.teppe 3cbd0e0762 Fixed naming convention 2 years ago
florent.teppe 9e40550a4a improved readability of esm3Recname and esm4Recname 2 years ago
florent.teppe 7bd7105345 code cleanup 2 years ago
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
2 years ago
Evil Eye 0b5c2b4609 Implement the full version of the ori command 2 years ago
elsid e2d566b89d
Store changed tiles in TileCachedRecastMeshManager 2 years ago
psi29a 647b22e175 Merge branch 'DistantLOD' into 'master'
Support for TES distant LOD

See merge request OpenMW/openmw!1861
2 years ago
psi29a 84ec78f0d6 Merge branch 'multitargettransform' into 'master'
Read NiMultiTargetTransformController

See merge request OpenMW/openmw!2357
2 years ago
Alexei Kotov 44fbb5cdc3 Read NiMultiTargetTransformController 2 years ago
Alexei Kotov 8df0587793 Reformat NIF record type mapping 2 years ago
Cédric Mocquillon 83ee25711e Use the pattern according to the esm version 2 years ago
Cédric Mocquillon 6a3d27ce82 Add a dictionary to retrieve the LOD mesh name of a mesh cache 2 years ago
AnyOldName3 4e8e2e1c60 Eliminate &thing[0] pattern 2 years ago
Alexei Kotov a8e561d885 Avoid issues with saved games that have no screenshot data 2 years ago
Alexei Kotov 126090bdc5 Load NiBillboardNode mode field 2 years ago
psi29a 58d08d402a Merge branch 'navigator_stats' into 'master'
Show stats for writing and reading navmesh db queue jobs

See merge request OpenMW/openmw!2346
2 years ago
psi29a 4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2 years ago
Andrei Kortunov 3037f190be Implement per-font resolution 2 years ago
Andrei Kortunov 3178868cc3 Improve built-in default fonts 2 years ago
Arnaud Dochain 1163c12645 Allows to build on macos 10.15 2 years ago
Evil Eye fb9bc5f535 Use string_view in Fallback::Map 2 years ago
Evil Eye 2222b47e3d Make Settings::Manager::getString return a reference 2 years ago
elsid c15848932b
Separate reading navigator stats and reporting 2 years ago
elsid e9be8b5efe
Show stats for writing and reading navmesh db queue jobs 2 years ago
AnyOldName3 1d177e2d71 Merge branch 'light_fix' into 'master'
Fix incorrect scene lighting #6952

See merge request OpenMW/openmw!2335
2 years ago
Evil Eye 02bbb0be45 Improve format workaround and add unit tests 2 years ago
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
2 years ago
psi29a c260a0d4c2 Merge branch 'string_me_along' into 'master'
Yet another string_view MR

See merge request OpenMW/openmw!2333
2 years ago
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.
2 years ago
glassmancody.info 1f2d9f2280 don't recycle statesets for light cullcallback for now 2 years ago
elsid ab1ddc690e
Do not check getPolyHeight status
It may fail in some cases depending on a platform without obvious reason.
2 years ago
Evil Eye 4e2e5ad002 Revert format change and ensure string_view args are null-terminated 2 years ago
Evil Eye 1d21330fcc Return string_view from getGameSettingString 2 years ago
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
2 years ago
Evil Eye 0cded25033 Remove various string copies 2 years ago
Evil Eye 0df45a90b3 Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary 2 years ago
mpeco 1868534071 functor-based Qt signal-slot syntax components 2 years ago
psi29a 1f5277349c Merge branch 'span' into 'master'
Replace Misc::Span by std::span

See merge request OpenMW/openmw!2324
2 years ago
psi29a 9c24d6b390 Merge branch 'ci_starts_with' into 'master'
Replace ciCompareLen with ciStartsWith where possible

See merge request OpenMW/openmw!2325
2 years ago
Evil Eye 150d1840d6 Use more string_view and const string& 2 years ago
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.
2 years ago
elsid e4a254deb7
Replace Misc::Span by std::span 2 years ago
psi29a 36fbef1048 Merge branch 'apple-silicon-arm-build' into 'master'
Get build working on Apple Silicon

See merge request OpenMW/openmw!2286
2 years ago
psi29a 2a2268ea8b Merge branch 'optimize_navigator_update' into 'master'
Optimize navigator per frame update

See merge request OpenMW/openmw!2308
2 years ago
psi29a f36e13444e Merge branch 'font_loading' into 'master'
Cleanup fonts loading

See merge request OpenMW/openmw!2309
2 years ago
psi29a aa8eba239a Merge branch 'animation_view' into 'master'
Use string_view in animation code

See merge request OpenMW/openmw!2321
2 years ago
unknown 206711876d Address feedback 2 years ago
unknown 827a2f0b77 Use string_view in animation code 2 years ago
Mads Buvik Sandvei 70e1efdd47 omw_GetWorldPosFromUV() should use omw_GetDepth() 2 years ago
Andrei Kortunov 9e1ab590f1 Cleanup fonts loading 2 years ago
psi29a 4078f19c74 Merge branch 'SHADER_HOT_RELOAD' into 'master'
Shaders: Hot reload, togglable by lua debug command

See merge request OpenMW/openmw!2238
2 years ago
florent.teppe 25c1f0ca16 Renamed variable to fix case issue 2 years ago
elsid aea4614240
Fix clang tidy warning 2 years ago
elsid 8147d49178
Remove redundant lock
mGeneration is const and mRevision is changed only from the same thread.
2 years ago
elsid 2885885331
Increase mutex scope in TileCachedRecastMeshManager functions
Which are called from the main thread.
2 years ago
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.
2 years ago
elsid 8125d51a0f
Use std::unique_ptr to implement ScopedLoad
This gives correct implementation of move constructor and assignment operators.
2 years ago
Andrei Kortunov c3d3f3140b Allow to change font settings in the launcher 2 years ago
psi29a bf40f9b287 Merge branch 'name_view' into 'master'
Make Class::getName return string_view

See merge request OpenMW/openmw!2289
2 years ago
Andrew Dunn 808a2e587a Merge commit '5ee4ce1232b0f334f29dd702f811c58dccf5c00d' into apple-silicon-arm-build 2 years ago
psi29a 5ee4ce1232 Merge branch 'nipixeldata' into 'master'
Support more NiPixelData formats (feature #6945)

Closes #6945

See merge request OpenMW/openmw!2290
2 years ago
Alexei Kotov edbd05a3f7 Support more NiPixelData formats (feature #6945) 2 years ago
Evil Eye 4ff12d8945 Make Class::getName return string_view 2 years ago
elsid cc8c7002ea
Cleanup components includes 2 years ago
Andrew Dunn 1d7d3d5765 Get build working on Apple Silicon
Will validate issues with Intel OSX later
2 years ago
psi29a b382e92953 Merge branch 'please_dont_copy_my_nfts' into 'master'
Prevent various values from being copied

See merge request OpenMW/openmw!2267
2 years ago
elsid b1fb42a28c
Cleanup detournavigator includes 2 years ago
psi29a f42ab6a3e7 Merge branch 'coverity' into 'master'
Do not copy data when it is not needed

See merge request OpenMW/openmw!2277
2 years ago
Andrei Kortunov e3ad30a517 Do not copy data when it is not needed 2 years ago
Matt e6868fd211 Allow constexpr hashing 2 years ago
Evil Eye de8d9b8db3 Use Fowler-Noll-Vo hash instead of std::hash 2 years ago
Evil Eye eaa108d25d Return string_view from SoundId methods 2 years ago
florent.teppe 166717d601 Makes sure threads are only stopped once ,and that they will be re-started 2 years ago
Evil Eye 51938f9ef7 Use string_view in Interpreter::Context 2 years ago
florent.teppe 16a4b5716b adds missing include 2 years ago
florent.teppe b14cc673bc adds missing decleration 2 years ago
florent.teppe decfbc5387 Fix threading issues 2 years ago
psi29a 18dbf722eb Merge branch 'store_view' into 'master'
Allow string_view lookups in MWWorld::Store

See merge request OpenMW/openmw!2010
2 years ago
psi29a b551e69b6f #5534 remove OSG 3.4 support and require at least 3.6.5 support 2 years ago
Evil Eye de51525c76 Allow string_view lookups in MWWorld::Store and get some use out of that 2 years ago
psi29a bb9884c024 Merge branch 'split_stringops' into 'master'
Split components/misc/stringops.hpp into multiple headers

See merge request OpenMW/openmw!2233
2 years ago
florent teppe baadc06e98 Merge branch 'master' into 'SHADER_HOT_RELOAD'
# Conflicts:
#   apps/openmw/mwrender/postprocessor.hpp
2 years ago
glassmancody.info c513ec7824 null check 2 years ago
glassmancody.info 2cea4f3172 stop excessive allocations with lightmanager callback 2 years ago
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
2 years ago
cody glassman ac4b29be08 cleanup default shaders and remove confusing main shader 2 years ago
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
2 years ago
florent.teppe cc9d436413 includes now work when the same shader has different defines 2 years ago
florent.teppe 7b78bf4b66 Fix files with different defines weren't added to the hot reload manager 2 years ago
florent.teppe a1c8dc9d45 C++17 compat ? 2 years ago
florent.teppe cdd95f7889 replaced empty function body by default 2 years ago
florent.teppe 9a475b0c97 fixed blank lines and missing breaks 2 years ago
florent.teppe b6d7293a12 Removed weird lines that I thought were necessary to please the compiler 2 years ago
florent.teppe 68d0698924 Fixed cyclical included check 2 years ago