Commit Graph

456 Commits (581c3f48829983cedea3f072a3194ce2be9270b3)

Author SHA1 Message Date
Timo Gurr 8512f7cb4c cmake: only download benchmarks if we build with it
Since 70623d0b23 CMake tries to download
benchmarks even if we pass -DBUILD_BENCHMARKS:BOOL=FALSE.
3 years ago
elsid 70623d0b23
Move FetchContent for benchmark to extern 3 years ago
psi29a ca6262c033 switch Static Deps and Tests from GCC to clang and set to -O0 to speed up builds 3 years ago
Bret Curtis 6672014a51 make this great again 3 years ago
Bret Curtis f0db576611 removed redundant get on smart pointer; made pictq_[r|w]index unsigned longs to be type compatible with std::array pictq.size(); fixes assert issue 3 years ago
Bret Curtis bae8713998 make use of std::array `pictq.size()` instead of VIDEO_PICTURE_ARRAY_SIZE; remove redundant smart-pointer .get calls; fix typos 3 years ago
Bret Curtis 4eea734551 Resolves #6088 by rolling our own PacketList that replaces the deprecated AVPacketList; initial work done by akortunov in 60aec04606; adapted and cleaned up some old cruft along the way. 3 years ago
psi29a e4ee6ab0c1 Update extern/i18n.lua/CMakeLists.txt to be like the rest... (make i18n work on macOS) 3 years ago
Petr Mikheev f91a5499d3 Add extern/i18n.lua 3 years ago
elsid f85053d78c
Support unaligned blocks 3 years ago
elsid 86bf9d5b8d
Support 128bit seed for MurmurHash3_x64_128 3 years ago
elsid d04d4ab499
Add MurmurHash3_x64_128 implementation
Sources:
92cf3702fc/src/MurmurHash3.h
92cf3702fc/src/MurmurHash3.cpp

Other hash functions and unused implementation details are removed.
3 years ago
elsid 2bace703d5
Add dependency to SQLite3
This will be required by navmeshtool.
3 years ago
jvoisin 8056476d64 Add clang-tidy 3 years ago
Petr Mikheev 4db5fa351d Add sol3.2.2/sol/sol.hpp to extern instead of downloading during building 4 years ago
Petr Mikheev 84721fb58a Disable special processing of Lua errors in debug builds. Fixes #6151. 4 years ago
Petr Mikheev 9e168fd9cc Add Lua/LuaJit and sol3 to openmw 4 years ago
elsid 7498a86abe
Remove redundant semicolons 4 years ago
AnyOldName3 873b3b4800 Handle empty strings. 4 years ago
Dan Church 70a0229010
Fix future FFMpeg API changes
avcodec_find_decoder now returns const AVCodec*.
4 years ago
Evil Eye 54d32817d5 Use av_free and maybe get Coverity to understand 4 years ago
psi29a 4bc7012104 Merge branch 'pack-default-settings' into 'master'
Pack default settings

Closes #5925

See merge request OpenMW/openmw!822
4 years ago
AnyOldName3 081650a2e5 Integrate Base64 library with build 4 years ago
AnyOldName3 2b1326cb74 Change namespace to Base64
The functions do Base64 encoding and decoding and do not feed me
delicious almond and meringue based confectionary.
4 years ago
AnyOldName3 d66cc3b7ae Fix undefined behaviour 4 years ago
AnyOldName3 aba735e615 Check in external Base64 implementation
Taken from https://gist.github.com/tomykaira/f0fd86b6c73063283afe550bc5d77594

MIT licenced
4 years ago
Bret Curtis 66a527c3de
Merge pull request #3075 from akortunov/warnfix
Fix MSVC's C4244 and C4267 warnings
4 years ago
Gleb Mazovetskiy bdfbf01772 Update extern Bullet to 3.17
Includes performance improvements that affect OpenMW:

* https://github.com/bulletphysics/bullet3/pull/3287
* https://github.com/bulletphysics/bullet3/pull/3293
4 years ago
Evil Eye 69aaf6ab04 don't touch frame->data 4 years ago
Evil Eye ed118537a8 use unique_ptr instead 4 years ago
Evil Eye 3b7cef9e88 add PacketGuard and move try/catch up 4 years ago
Evil Eye 1b61ec979d switch to lock_guards 4 years ago
Andrei Kortunov 963e1b8b3f Fix MSVC's C4244 warnings 4 years ago
Andrei Kortunov f9d42ed396 Fix MSVC's C4267 warnings 4 years ago
Evil Eye de37ca8e2c Catch exceptions in VideoThread 4 years ago
fredzio 6fd04cb8f6 Remove support for single-precision Bullet, fail during configuration instead of during linking. 4 years ago
Andrei Kortunov 124a33d8a3 Fix uninitialized variables 4 years ago
Andrei Kortunov 93954a961c Unlock mutex on return to avoid hang 4 years ago
AnyOldName3 3ad2335d11 Fix FetchContent Bullet with MSVC 4 years ago
psi29a f8d32c0576 Merge branch 'upd-mygui' into 'master'
Update MyGUI

Closes #5897

See merge request OpenMW/openmw!650
4 years ago
Gleb Mazovetskiy 493659d4f9 MSVC: extern/ tweaks to make it build
Not everything is supported but it does build with the following CMakeSettings.json
variables and dependencies from vcpkg:

      "variables": [
        { "name": "OPENMW_USE_SYSTEM_BULLET", "value": "False", "type": "BOOL" },
        { "name": "OPENMW_USE_SYSTEM_MYGUI", "value": "False", "type": "BOOL" },
        { "name": "OPENMW_USE_SYSTEM_OSG", "value": "False", "type": "BOOL" },
        { "name": "BULLET_STATIC", "value": "True", "type": "BOOL" },
        { "name": "OSG_STATIC", "value": "False", "type": "BOOL" },
        { "name": "MYGUI_STATIC", "value": "False", "type": "BOOL" }
      ],

What works: it builds

What does not work: Not all DLLs are copied into the output directory with this set up
(SDL2, MyGUI, Bullet, OSG, are not copied).
4 years ago
Gleb Mazovetskiy 918fd174f3 Set `MYGUI_DONT_USE_OBSOLETE=OFF`
Fixes https://gitlab.com/OpenMW/openmw/-/issues/5896
4 years ago
Gleb Mazovetskiy 36cea2073f Update MyGUI
Includes f01cba4bb3
Fixes https://gitlab.com/OpenMW/openmw/-/issues/5897
4 years ago
Gleb Mazovetskiy fe6b990f2e Update Bullet to improve performance
Updates Bullet to include https://github.com/bulletphysics/bullet3/pull/3287

This massively improves heightfield collision detection performance in
some areas.

E.g. with single-threaded bullet in the `--skip-menu` starting area
on my test desktop: 30 FPS -> 60 FPS
4 years ago
Gleb Mazovetskiy 1db7d2ec4e Restore compatibility with FFMpeg < 57.80.100
This should fix macOS Travis build broken by 58d33aa95b
4 years ago
Gleb Mazovetskiy 36bac353df AV: Handle varying video frame dimensions 4 years ago
Gleb Mazovetskiy 58d33aa95b AV: Fix all memory leaks
The most substantial memory leak came from `PacketQueue::get`
not unreferencing its argument packet.

Other leaks came from using `av_free` instead of type-specific free
functions.

Also modifies `PacketQueue::put` for readability.
4 years ago
Gleb Mazovetskiy eb93fdfbea Use unique_ptr with custom deleter for VideoPicture::rgbaFrame 4 years ago
Gleb Mazovetskiy b7076549a3 osg-ffmpeg-videoplayer: Fix crash on ARM
osg-ffmpeg-videoplayer handled frame allocation incorrectly.

It used a `vector<uint8_t>` as its buffer, meaning the addresses could
did not respect alignment.

Instead, changes it to use `AVFrame` as buffers, allocated via `av_image_alloc`.

We also now only allocate the buffer once, instead of on every frame,
which should improve the framerate of videos.

Fixes the following crash on startup on ARM:

> Invalid address alignment (signal 7)

Fixes #5807
4 years ago
Gleb Mazovetskiy 8a1644885b MyGUI: Bump version to 3.4.1
Also set MYGUI_DONT_USE_OBSOLETE
4 years ago