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