1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-20 07:23:53 +00:00
Commit graph

335 commits

Author SHA1 Message Date
Andrei Kortunov
e1cae5a029 Rework music system 2023-09-13 09:11:07 +04:00
Andrei Kortunov
7ce9fc25c5 Implement Lua bindings for sound system 2023-08-15 10:28:29 +04:00
elsid
5abbc56bf2
Use proper cell size for ESM4 cells in CoordinateConverter 2023-08-13 02:24:22 +02:00
elsid
8e7fe44514
Support terrain sample size greater than cell size 2023-08-06 23:47:35 +02:00
psi29a
ed81baf864 Merge branch 'chrono_fix' into 'master'
Simplify file_time_type to time_t conversion

See merge request OpenMW/openmw!3161
2023-08-03 21:47:40 +00:00
alekulyn
74aa7b947a Load BSTriShape NIF nodes 2023-07-09 10:14:27 +00:00
psi29a
6601b0cb15 Merge branch 'fastandloose' into 'master'
Drop support for --fs-strict

Closes #7394

See merge request OpenMW/openmw!3093
2023-07-02 19:24:14 +00:00
psi29a
31efad1dd0 Merge branch 'fix_model_path' into 'master'
Fix #7403: incorrect model path for records created by Lua scripts

Closes #7403

See merge request OpenMW/openmw!3151
2023-06-25 20:11:43 +00:00
Andrei Kortunov
2ea7eb4ba8 Simplify file_time_type to time_t conversion 2023-06-19 13:21:40 +04:00
Petr Mikheev
2f16a8d27c Fix incorrect model part for records created by Lua scripts 2023-06-18 00:19:50 +02:00
Petr Mikheev
3b43cc2aea Lua: change obj.rotation from Euler angles to Quaternion 2023-06-12 00:16:42 +02:00
Evil Eye
eeda48ec50 Drop support for --fs-strict 2023-06-08 21:10:09 +02:00
elsid
78b3f7288a
Support UTF-8 by StringRefId::toDebugString 2023-06-01 22:16:47 +02:00
Evil Eye
9c819b5705 Disallow formatting of UString 2023-05-30 17:35:26 +02:00
elsid
89eccab7f1
Add missing include
In file included from /home/elsid/dev/openmw/apps/openmw_test_suite/settings/testvalues.cpp:1:
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp: In function ‘std::string Misc::StringUtils::toHex(std::string_view)’:
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp:139:87: error: ‘uint8_t’ in namespace ‘std’ does not name a type; did you mean ‘wint_t’?
  139 |             const std::ptrdiff_t space = static_cast<std::ptrdiff_t>(static_cast<std::uint8_t>(v) <= 0xf);
      |                                                                                       ^~~~~~~
      |                                                                                       wint_t
/home/elsid/dev/openmw/components/misc/strings/conversion.hpp:140:97: error: ‘uint8_t’ in namespace ‘std’ does not name a type; did you mean ‘wint_t’?
  140 |             const auto [ptr, ec] = std::to_chars(out + space, out + space + 2, static_cast<std::uint8_t>(v), 16);
      |                                                                                                 ^~~~~~~
      |                                                                                                 wint_t
2023-05-24 12:45:50 +02:00
Evil Eye
3138eb406b Fix case sensitive comparison 2023-05-22 18:18:01 +02:00
Petr Mikheev
29031d0586 Increase ESM4 active grid 2023-05-18 00:38:41 +02:00
elsid
04d439485b
Log more info about navmesh shapes and jobs 2023-05-14 18:34:31 +02:00
florent.teppe
75561abfca Factorises code and fixes preload bug. 2023-05-12 22:05:54 +02:00
florent.teppe
5648e03e9e function to get cellsize depending on the context. 2023-05-12 22:05:54 +02:00
florent.teppe
d8a782425b can actually load and teleport to esm4 exterior spaces 2023-05-12 22:05:53 +02:00
Elias Howell
bf8fafa79a fixed some typos and spelling errors 2023-05-09 20:07:08 -04:00
jvoisin
c7a3f43915 Minor header cleanup
This has been done via CLion's "unused include directive",
set to "detect completely unused".
2023-04-30 16:26:03 +02:00
florent.teppe
21bd28542a Applies review advice
2d coord hash moved to hash.hpp file
format version adds suffix to be more coherent
don't use ESM::RefId::sEmpty
RefId equality with string_view, conversion to refId unecessary
action teleport remove test that mCellId is empty
removes some const references, when copy is enough
invalid refid => empty refid
removes useless change
2023-04-03 14:17:35 +02:00
elsid
3a0443c472
Make constexpr Misc::NotNullptr member functions 2023-03-18 16:36:26 +01:00
Shi Han
a90e3b8c3b Move from std::atoi to std::from_char 2023-03-18 09:30:48 +00:00
elsid
dfcea389be
Add helper functions for string comparison to RefId 2023-03-03 00:39:55 +01:00
elsid
996153f78d
Convert RefId to class 2023-02-15 23:20:44 +01:00
psi29a
4032c447e9 Merge branch 'load-ESM4-Cell' into 'master'
Can load and coc into an interrior oblivion cell

See merge request OpenMW/openmw!2647
2023-02-06 08:56:23 +00:00
glassmancody.info
e778ffee9b po2 scaling for average luminance 2023-02-05 12:30:38 -08:00
Andrzej Głuszak
9b0a499b58 Remove strerror usages 2023-01-29 22:41:59 +01:00
florent.teppe
216ca71149 Applied review comments
getEditorName => getNameId
restored cosntructor in CoordinateConverter
2023-01-28 12:14:00 +01:00
florent.teppe
23614ae2ae Renamed esm3esm4bridge => esmbridge 2023-01-27 18:40:15 +01:00
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
2023-01-27 13:39:39 +01:00
florent.teppe
562e129bd0 encapsulations of esm3 cell and esm4 cells. 2023-01-26 22:37:31 +01:00
Evil Eye
d40a9ec5bc Use worldspace coords in AiWanderStorage 2023-01-23 21:06:50 +01:00
psi29a
eb853b1315 Merge branch 'ptmikheev-master-patch-34687' into 'master'
Fix constexprant

See merge request OpenMW/openmw!2643
2023-01-21 22:42:03 +00:00
Petr Mikheev
24ef6d29d4 Fix constexprant 2023-01-21 21:58:17 +00:00
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.
2023-01-21 19:19:26 +01:00
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.
2023-01-18 22:58:35 +01:00
psi29a
54c18ea86d Merge branch 'change-const-to-constexpr' into 'master'
change const to constexpr

Closes #6797

See merge request OpenMW/openmw!2630
2023-01-18 14:30:36 +00:00
James-Deciutiis
4e61fec14d change const to constexpr 2023-01-17 19:31:52 -08:00
Alexei Kotov
6ff9b5d326 Make use of ends_with for KF 2023-01-15 01:48:06 +03:00
Alexei Kotov
4d0788e016 Use xnif if its xkf is present even if xnif isn't 2023-01-14 03:35:50 +03:00
Andrei Kortunov
bfcbc2350d Handle UTF-8 in Qt streams in the Qt6-compatible way 2023-01-12 15:39:50 +04:00
elsid
755067f0f3
Remove redundant ESM::RefId member functions 2022-12-30 00:32:47 +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
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
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
2f2e401559 is Hidden marker now takes a const RefId& instead of a string_view 2022-12-27 19:15:55 +01:00
Cédric Mocquillon
7e77e69a3c Use a wider type when converting to a signed type 2022-12-18 21:31:51 +01:00
elsid
843753da14
Remove unused includes 2022-10-09 16:44:18 +02:00
elsid
dd63a1602f
Handle localtime errors 2022-09-25 16:20:20 +02: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
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
elsid
409f83a149
Use raw string literal for error marker definition 2022-09-12 21:00:45 +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
5456ef1d50 Add new functions and overloads to support std::u8string and std::filesystem::path. 2022-09-11 14:41:20 +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
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
florent.teppe
65bd007baa simplified some big switch/case 2022-09-09 23:40:56 +02:00
ζeh Matt
aa65df8872
Rename meta.hpp to tuplemeta.hpp 2022-09-08 15:03:01 +03: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
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
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
Evil Eye
02bbb0be45 Improve format workaround and add unit tests 2022-08-26 19:43:57 +00: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
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
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
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
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
de51525c76 Allow string_view lookups in MWWorld::Store and get some use out of that 2022-08-09 20:43:14 +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
Andrei Kortunov
de58c9dff3 Get rid of obsolete osg::Geode where it is possible 2022-07-20 15:28:56 +04:00
Andrei Kortunov
6f6b5ba04b Some refactoring 2022-07-17 22:01:48 +04:00
elsid
22ed6d5c1e
Use unsigned to define number of threads 2022-07-12 15:19:52 +02:00
Andrei Kortunov
fe785ea788 Don't cast away const when we can avoid it 2022-07-03 16:36:41 +04:00
glassmancody.info
b09411d396 allow soft particles on meshes and add extra data extensions 2022-06-29 18:15:12 -07:00
elsid
6abb963bd9
Use string_view for StringUtils functions 2022-06-21 19:40:28 +02:00
uramer
1fb136a417 Correct icon and mesh paths in Lua records 2022-06-12 11:30:29 +02:00
psi29a
a737b05d84 Merge branch 'faster_toLower' into 'master'
Improve the speed of toLower

See merge request OpenMW/openmw!1889
2022-05-24 07:53:01 +00:00
jvoisin
998f1c960e Improve the speed of toLower
This significantly improves the speed of my fuzzer,
by something like 15%.
2022-05-23 21:24:17 +02:00
Evil Eye
e79f803402 Change includes 2022-05-21 10:48:32 +02:00
Evil Eye
c6ca0e78c9 Make getStringLiteral return a string_view 2022-05-21 01:21:55 +02:00
cody glassman
0cb63ca4e6 experimental point light bindings 2022-05-15 10:03:58 -07:00