Commit Graph

19580 Commits (843753da14d6551ce8ac9c9526d2223e0364ceb5)

Author SHA1 Message Date
elsid 4698a4cd2d
Use raw string literals to format command usage messages 2 years ago
elsid f269406061
Do not wrap emit expresison with parenthesis
To avoid warnings like following after clang-format applied:

apps/launcher/utils/profilescombobox.cpp:85:9: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
    emit(signalProfileChanged(mOldProfile, currentText()));
        ^
apps/launcher/utils/profilescombobox.cpp:82:5: note: previous statement is here
    if (index == -1)
    ^
2 years ago
elsid 40e899f56d
Use std::string_view for esmtool labels 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 a9826342b2
Print ESM4 EditorId and Model by esmtool dump 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
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 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
florent.teppe 12b3424dd7 initial work to get lines in
lines need the same synchronisation system as the other primitives

This two points are there because if I resize to 0 it crashes, si I need a pice of line at 0.,0.,0. so there is no crash.Not ideal

Lines are colored

didn't commit updated shader file
2 years ago
florent.teppe 80c97e48bf made code more consistent between cube, cylinder and wirecube, should also fix a clang compilation error
remove include to non existing file

Actors code displays different ways to use debug draw

oups, forgot to remove parameter in function

fix include case sensitivity

Jopefully fixes all linux issues

moves some code pieces, and the debug draw now has a group node to have different types of objects to draw
2 years ago
florent.teppe 76008e1ff8 Multiple shapes to draw
adds wireCube primitive

scale of the command taken into account

shading light is more vertical
2 years ago
florent.teppe 93af569a68 can place a cube at 0,0,0 Useless for now
Arbitrarly draw cubes at certain position with a certain color

Adds exemple of how it looks in the actor update code.

draws a green cube if alive, red else
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 1a79f098fa Use std::filesystem::create_directories instead of std::filesystem::create_directory to recursively generate directories from the provided path. 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 1fc197e404 Check std::getenv output before using it to construct a std::filesystem::path. 2 years ago
Project579 5456ef1d50 Add new functions and overloads to support std::u8string and std::filesystem::path. 2 years ago
Project579 796911e67d iniimporter: Work around some old MSVC compiler bugs. 2 years ago
Project579 199bf233e8 essimporter: Don't use "std::string" to store paths. 2 years ago
Project579 14a786bab0 iniimporter: Don't convert paths to "std::string". 2 years ago
Project579 4e428dee12 Update some settings that accept paths by "std::string" to accept them as "std::filesystem::path" instead. 2 years ago
Project579 928b131564 Implement std::filesystem::path conversion tests. 2 years ago
Project579 a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2 years ago
Project579 4d47e8d055 openmw-cs: model: world: data: Remove dead code. 2 years ago
Project579 864112b5db Fixed Windows build when using MSVC 14.26 and MacOS build. 2 years ago
Project579 6bf4c7a04f Upgraded "input-file" command line option to Files::MaybeQuotedPath from std::string to allow unicode characters on Windows. 2 years ago
Project579 e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 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 e97eeca281 Attempt to work around QT MOC bugs caused by the filesystem header. 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 9a19bb84a4 fixed Clang and whitespace difference with master 2 years ago
florent.teppe 10de4a5156 created a relationship between the record type and the corresponding state
used in readReferences and writeReferences. Simplifies the calls to those functions
2 years ago
florent.teppe 256d8a699a moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp 2 years ago
florent.teppe 73e3c0adf6 applies some review changes
fixed c style cast
fixed useless includes
fixed callback not last member
fixed situation where type==0 and therefore function call isn't necessary
2 years ago
psi29a 25fa8c3656 Merge branch 'rm_base_esm_reader' into 'master'
Remove ESM::Reader base class

See merge request OpenMW/openmw!2388
2 years ago
psi29a 525b904a44 Merge branch 'reflection-uniform' into 'master'
Added a uniform to indicate whether rendering is occurring in a reflection

See merge request OpenMW/openmw!2340
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 158eea934d removed more code from the header
simplified forEachInternal function using tupleForEach
moved some function that were in CellStoreImp that didn't need to be
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
florent.teppe bcc004ecf5 Simplified read reference, by associating the types to the recNameInt using tuple + template + fold expresions magic 2 years ago
florent.teppe 0a5c863f27 fewer header includes 2 years ago
florent.teppe c7e88344d0 cellstore refactor first version, simply replaces each individual reflist by a tuple and makes the necessary related changes 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
psi29a b9ff117dfe Merge branch 'reuse_actors_positions_buffer' into 'master'
Reuse physics actors positions buffer

See merge request OpenMW/openmw!2384
2 years ago
Andrei Kortunov 6ec9616ddd Localize the 'show effect duration' option 2 years ago
ζeh Matt c856095562
Use compile time generated indices for tuples types 2 years ago
elsid cdc9141e2f
Reuse physics actors positions buffer 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 1943486812 Merge branch 'savescreenshots' into 'master'
!2358 follow-up (bug #6661)

Closes #6661

See merge request OpenMW/openmw!2376
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
florent.teppe 31a14952b7 no more getIdType, only setIdType 2 years ago
Alexei Kotov 81c78f5477 Keep savegame screenshots up-to-date 2 years ago
Alexei Kotov 0d3a1470c9 Fix double quote marks 2 years ago
psi29a 912a4d69ee Merge branch 'reuse_simulations_buffer' into 'master'
Reuse physics simulations buffer (#6588)

Closes #6588

See merge request OpenMW/openmw!2374
2 years ago
elsid 277211c5b4
Reuse physics simulations buffer
To avoid redundant allocations.

Use 2 buffers to make sure there is no overlap between main and the background
threads.
2 years ago
florent.teppe e961ac6f7c function doesn't need to return int 2 years ago
florent.teppe b1d5d604be various fixes
fixed naming convention
replaced std::string by string_view when possible
removed unused function and member varaible
replaced type::value by type_v
set default destructor in cpp
function getTypeIndex => getnextindex
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 955db8f825
Call Navigator::setWorldspace once per changing cell 2 years ago
elsid 204ab6fea3
Use version instead of generation and revision for recast mesh 2 years ago
florent.teppe 7bc506ff86 linux copmile 2 years ago
florent.teppe 564c5d6690 fixed naming convention issue 2 years ago
florent.teppe e23d9c11a8 moved a bit of code back in the header to avoid many template specialization 2 years ago
florent.teppe 0dd529ab1d With the records include removed from store.hpp, need to include the relevant files accross the codebase.Lots of touched files, but very little done 2 years ago
Evil Eye 6117b10cfa Derive screen brightness from the blind modifier 2 years ago
Evil Eye 489c7a10b6 Implement PCVisionBonus functions 2 years ago
psi29a 8e7cee5861 Merge branch 'shut_it' into 'master'
Make the Sound magic effect make noise

Closes #6986

See merge request OpenMW/openmw!2369
2 years ago
florent.teppe 4bb9a4166d The tuple types declaration is back in the header, but there is no need for implementation details to be known for any of the types 2 years ago
Evil Eye 9484d8ce51 Make the Sound magic effect make noise 2 years ago
florent.teppe 57df51b4a6 fixed made by @ZehMatt in 6abb96250f and cdcf1393fc 2 years ago
florent.teppe 9092c32f2e fixed incompatibilities caused bu merge 2 years ago
florent.teppe 1ed22a298d fix compile 2 years ago
florent.teppe 7bd7105345 code cleanup 2 years ago
florent.teppe 33ea66b86d Type index type error fixed 2 years ago
florent.teppe 85a9edf2ee removes useless make_tuple, and changes type of typeIndex to size_t 2 years ago
florent.teppe 31330c9abc oups 2 years ago
florent.teppe cbb9b65286 linux compile 2 years ago
florent.teppe ee06cccbe1 gets rid of the macros, we use a tuple instead, with a mechanism to assign an index to each type.
so the tuple is only defined in the cpp, but we can still have template functions in the header that can ge tthe index with the type
2 years ago
florent.teppe 16482243fa rename StoreBase =>DynamicStore, and create new class Storebase
all stores inherit from base class StoreBase.Storebase is just an empty interface class
2 years ago
florent.teppe 0d84b32d46 Rename member to be clearer and more generic 2 years ago
florent.teppe 0d7bd19119 removes recname type, we use what is already included in ESM types 2 years ago
florent.teppe bff4096652 Removed macro that didn't serve any real purpose
Renamed member that didn't respect the naming convention
2 years ago
florent.teppe 78ba3f91f3 Binds at compile time esm struct and RecNameInts to automatically populate mESM3RecordToStore
fewer possible mistakes now, one macro takes all the information to create all the stores and maps from RecName to Store
2 years ago
florent.teppe a7207a9220 Linux compilation 2 years ago
florent.teppe 59ebee634b Very convincing experiment, by associatingg a compiletime index to the esm record, it becomes possible to automate the loop that creates them
it will also be possible to associate AT COMPILETIME the RecNameInt to the esm type, which in the same manner will automatically populate mESM3RecordToStore
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