Mads Buvik Sandvei
4c9278522e
Misc practical fixes from integrating with vr. Reordered construction. Added more callbacks.
2020-12-16 20:59:10 +01:00
Mads Buvik Sandvei
d03f55bc2d
Basic functions in place. Still bad handling of GUI
2020-12-11 18:37:50 +01:00
Mads Buvik Sandvei
76fc1a8f84
Stereo now initializes before anything is drawn. Added option to add initial/pre/post draw callbacks to stereo.
2020-12-10 21:29:56 +01:00
Mads Buvik Sandvei
b98b4db4c1
Merge remote-tracking branch 'remotes/origin/multiview_test_branch' into openxr_vr_geometryshader_feature_branch
2020-12-09 21:11:53 +01:00
Mads Buvik Sandvei
c974e1dde3
Merge remote tracking branch multiview_test_branch
2020-12-09 19:42:15 +01:00
Mads Buvik Sandvei
1bebe51c29
Make use of shared shadow maps in the brute force method
2020-12-08 21:37:27 +01:00
Mads Buvik Sandvei
c870749c39
Merge remote-tracking branch 'remotes/origin/master' into multiview_test_branch
2020-12-06 15:24:12 +01:00
Mads Buvik Sandvei
49e76fa077
Merge remote-tracking branch 'remotes/origin/master' into openxr_vr
2020-11-27 00:36:10 +01:00
David Cernat
7f435ceeac
Add OpenMW commits up to 1 Nov 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/main.cpp
# apps/openmw/mwclass/container.hpp
# apps/openmw/mwclass/creature.hpp
# apps/openmw/mwclass/npc.hpp
# apps/openmw/mwdialogue/dialoguemanagerimp.hpp
# apps/openmw/mwdialogue/journalimp.hpp
# apps/openmw/mwgui/container.cpp
# apps/openmw/mwgui/dialogue.hpp
# apps/openmw/mwgui/mainmenu.cpp
# apps/openmw/mwgui/windowmanagerimp.hpp
# apps/openmw/mwmechanics/aiactivate.hpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
# apps/openmw/mwscript/containerextensions.cpp
# apps/openmw/mwscript/interpretercontext.hpp
# components/CMakeLists.txt
2020-11-01 23:17:59 +02:00
Mads Buvik Sandvei
4f8f0cc8ac
Merge branch 'master' of https://gitlab.com/madsbuvi/openmw into openxr_vr
2020-10-22 20:39:53 +02:00
fredzio
1357bba0a0
Use some C++17 where it makes the code more readable
...
Also replace boost::optional
2020-10-22 07:15:16 +02:00
Bret Curtis
82431b752d
removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd
2020-10-20 23:38:05 +02:00
AnyOldName3
df178ed97c
Merge branch 'container-regressions' into 'master'
...
Fix container regressions
See merge request OpenMW/openmw!346
(cherry picked from commit b0aee6f83d4cddb0116284b197913f9687dd9cee)
95e7a22d fix container regressions
2020-10-16 22:55:10 +00:00
David Cernat
68837aaf4a
Add OpenMW commits up to 15 Oct 2020
...
# Conflicts:
# .travis.yml
# CI/before_script.linux.sh
# CMakeLists.txt
# apps/openmw/mwgui/containeritemmodel.cpp
# apps/openmw/mwgui/tradewindow.cpp
# apps/openmw/mwphysics/actor.cpp
# apps/openmw/mwworld/actionteleport.cpp
# apps/openmw/mwworld/containerstore.cpp
2020-10-15 19:51:39 +02:00
fredzio
3c2504b442
Process movement queue in one or several background threads
...
Before movement calculation, the main thread prepare a
vector of ActorFrameData, which contains all data necessary to perform
the simulation, and feed it to the solver. At the same time it fetches
the result from the previous background simulation, which in turn is
used by the game mechanics.
Other functions of the physics system (weapon hit for instance)
interrupt the background simulation, with some exceptions described
below.
The number of threads is controlled by the numeric setting
[Physics]
async num threads
In case 'async num threads' > 1 and Bullet doesn't support multiple threads,
1 async thread will be used. 0 means synchronous solver.
Additional settings (will be silently switched off if async num threads = 0)
[Physics]
defer aabb update
Update AABBs of actors and objects in the background thread(s). It is not an especially
costly operation, but it needs exclusive access to the collision world, which blocks
other operations. Since AABB needs to be updated for collision detection, one can queue
them to defer update before start of the movement solver. Extensive tests on as much
as one installation (mine) show no drawback having that switched on.
[Physics]
lineofsight keep inactive cache
Control for how long (how many frames) the line of sight (LOS) request will be kept updated.
When a request for LOS is made for the first time, the background threads are stopped to
service it. From now on, the LOS will be refreshed preemptively as part of the background
routine until it is not required for lineofsight keep inactive cache frames. This mean
that subsequent request will not interrupt the background computation.
2020-10-15 06:41:35 +02:00
Assumeru
72549651e0
Rework container resolution ( #3006 )
...
* Rework container resolution
* add optional argument to getCount
* remove now-redundant changes
* undo worldimp changes
* move save-fixing code to InventoryState
* replace Rng instances with Seeds
2020-10-13 17:46:32 +02:00
Mads Buvik Sandvei
5056ca8cd8
missing include
2020-10-11 18:16:45 +02:00
Mads Buvik Sandvei
8a6738469e
Merge branch 'master' of https://gitlab.com/madsbuvi/openmw into multiview_test_branch
2020-09-19 20:58:07 +02:00
Mads Buvik Sandvei
2952463112
Configurability. Brute force option.
2020-09-19 20:55:06 +02:00
Mads Buvik Sandvei
943fe06173
Cleaned up update callbacks. Rescued floating point accuracy of gl_Position
2020-09-14 23:09:44 +02:00
Mads Buvik Sandvei
9c171869cb
Geometry shader stereo functional
2020-09-14 22:17:07 +02:00
David Cernat
80af0ce6a7
Add OpenMW commits up to 29 Aug 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwmechanics/character.cpp
2020-08-29 16:15:22 +02:00
psi29a
f90a049702
Merge branch 'movement_refactoring' into 'master'
...
Refactoring related to "smooth movement"
See merge request OpenMW/openmw!285
(cherry picked from commit 6eaf0a389d5aed3b74ab1a7cf89574612f964bdf)
e847b4c8 Split getSpeed() to getMaxSpeed() and getCurrentSpeed()
a96c46bc Refactor calculation of movement.mSpeedFactor
03ee9090 Use getMaxSpeed instead of getCurrentSpeed where it makes sense.
a178af5c Create helper functions `normalizeAngle` and `rotateVec2f`
2020-08-27 11:54:30 +00:00
Mads Buvik Sandvei
89ff075936
New config options
2020-08-07 23:33:21 +02:00
David Cernat
39e429c9eb
Add OpenMW commits up to 11 Jul 2020
...
# Conflicts:
# .travis.yml
# apps/openmw/mwmechanics/actors.cpp
2020-07-11 21:42:01 +02:00
elsid
02f9b44f01
Use RAII for object ptr from pool
2020-07-04 01:15:27 +02:00
elsid
6ca29c6107
Use common type for pool of sounds and streams
2020-07-04 01:09:04 +02:00
David Cernat
3b2eb6f62c
Add OpenMW commits up to 22 Jun 2020
...
# Conflicts:
# .travis.yml
# CMakeLists.txt
2020-06-22 20:50:55 +03:00
Andrei Kortunov
d1a3cc98ff
Get rid of ECLD and dependencies
2020-06-17 13:09:16 +04:00
elsid
c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection
2020-06-12 21:04:02 +02:00
David Cernat
053a5a6258
Add OpenMW commits up to 9 May 2020
...
# Conflicts:
# apps/openmw/mwmechanics/spellcasting.cpp
# apps/openmw/mwscript/aiextensions.cpp
2020-05-09 15:17:04 +03:00
elsid
bd1ef4dd6d
Add detournavigator test for multiple worker threads
2020-04-26 22:00:55 +02:00
David Cernat
a20f8e77dc
Add OpenMW commits up to 25 Apr 2020
...
# Conflicts:
# .travis.yml
# apps/openmw/mwclass/container.cpp
# apps/openmw/mwclass/door.cpp
2020-04-25 09:52:58 +03:00
Frederic Chardon
513ac8986d
Add link to opencs documentation on readthedocs, available through
...
context menu.
The documentation opens in default browser.
There are 3 contexts:
- global: opens the OpenMW CS User Manual main page
- when a record is selected: opens the "Tables" page
- when the filter field is selected: opens the "Record Filters" page
There is also a link to the OpenCS tutorial in the help menu.
2020-04-18 20:54:21 +00:00
David Cernat
60b6f92fa3
Add OpenMW commits up to 13 Jan 2020
...
# Conflicts:
# apps/openmw/mwmechanics/actors.cpp
2020-01-15 07:49:26 +02:00
Andrei Kortunov
a250a405b4
An attempt to fix the MSVC2017 build
2020-01-09 20:42:06 +04:00
Andrei Kortunov
1cdd33b434
Implement additional stringops to avoid Boost functions
2020-01-09 19:40:22 +04:00
David Cernat
b57c0bcafe
Add OpenMW commits up to 6 June 2019
...
# Conflicts:
# apps/openmw/mwgui/hud.cpp
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwgui/waitdialog.cpp
# apps/openmw/mwinput/inputmanagerimp.cpp
# apps/openmw/mwworld/worldimp.hpp
2019-08-22 11:42:02 +03:00
David Cernat
f671c0bddc
Add OpenMW commits up to 1 Apr 2019
...
# Conflicts:
# .travis.yml
# CMakeLists.txt
# apps/openmw/engine.cpp
# apps/openmw/mwdialogue/dialoguemanagerimp.cpp
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwgui/trainingwindow.cpp
# apps/openmw/mwgui/travelwindow.cpp
# apps/openmw/mwgui/waitdialog.cpp
2019-08-21 23:54:39 +03:00
David Cernat
8729c3c5e3
Add OpenMW commits up to 9 Mar 2019
...
# Conflicts:
# .travis.yml
# CI/before_script.linux.sh
# README.md
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwscript/animationextensions.cpp
# apps/openmw/mwscript/guiextensions.cpp
# apps/openmw/mwscript/miscextensions.cpp
# apps/openmw/mwscript/soundextensions.cpp
2019-08-21 19:04:04 +03:00
David Cernat
95a5607509
Add OpenMW commits up to 22 Feb 2019
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwmechanics/spellcasting.cpp
# apps/openmw/mwscript/containerextensions.cpp
2019-08-21 17:29:24 +03:00
David Cernat
3efffe92e3
Add OpenMW commits up to 5 Nov 2018
...
# Conflicts:
# CI/before_install.linux.sh
# CMakeLists.txt
# apps/openmw/mwmechanics/aifollow.cpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
# apps/openmw/mwphysics/physicssystem.hpp
# apps/openmw/mwworld/scene.cpp
# apps/openmw/mwworld/worldimp.cpp
# components/CMakeLists.txt
2019-08-21 05:08:50 +03:00
David Cernat
fba07194cf
Add OpenMW commits up to 29 Oct 2018
...
# Conflicts:
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwinput/inputmanagerimp.cpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/aicombat.cpp
# apps/openmw/mwmechanics/character.cpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
2019-08-20 13:15:00 +03:00
David Cernat
84cab59057
Add OpenMW commits up to 19 Aug 2018
...
# Conflicts:
# .travis.yml
# CI/before_install.linux.sh
# CI/before_script.linux.sh
# apps/openmw/engine.cpp
# apps/openmw/main.cpp
# apps/openmw/mwgui/windowmanagerimp.cpp
# apps/openmw/mwmechanics/actors.hpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
# apps/openmw/mwscript/aiextensions.cpp
# apps/openmw/mwscript/containerextensions.cpp
# apps/openmw/mwscript/dialogueextensions.cpp
# apps/openmw/mwworld/cellstore.cpp
# apps/openmw/mwworld/containerstore.cpp
# apps/openmw/mwworld/scene.cpp
# apps/openmw/mwworld/worldimp.cpp
# components/misc/debugging.hpp
2019-08-20 10:06:15 +03:00
David Cernat
0339958e21
[General] Rename Log class into TimedLog
2019-08-19 21:39:33 +03:00
Andrei Kortunov
e679190f31
Introduce a custom format() function to get rid of boost::format() and hackish replace()
2019-05-20 09:20:01 +04:00
Andrei Kortunov
861d41f4a4
Native graphics herbalism support (feature #5010 )
2019-05-02 23:03:47 +04:00
elsid
ccc709a316
Store guarded navmesh cache item in shared_ptr
...
Remove useless SharedGuarded type.
2019-03-10 17:06:19 +03:00
Andrei Kortunov
bf5f68a4d8
Replace boost GCD to the homebrew implementation
2019-03-02 17:32:05 +04:00
Grigory Latyshev
3872d7476b
Move makeOsgVec3f() to settingsutils.hpp
...
Remove all other makeOsgVec3f() implementations
2019-02-28 20:03:42 +00:00
Grigory
af7b6a09a8
Simplify Misc::StringUtils::toLower
2019-02-28 00:24:43 +03:00
elsid
33f6fb258d
Option to set specific random seed for random number generator
2019-02-26 09:36:34 +03:00
Capostrophic
8ecd0b82a4
Replace Boost format and replace_all where possible
2019-02-24 03:20:20 +03:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
elsid
16675fd254
Return empty path when navmesh is not found for agent
2019-02-16 15:37:06 +03:00
Andrei Kortunov
9e4a339ad3
Daytime node switch support (feature #4836 )
2019-02-02 10:50:15 +04:00
elsid
264ea99af6
Use explicit default ctors call
...
Special change for MSVC2015.
2018-11-02 10:35:57 +03:00
elsid
ed73d130f9
Cache navmesh tiles
...
Use LRU modification to hold currently used items. Use RecastMesh binary
data for item key.
Store original pointer of btCollisionShape in user pointer to make available
it as an identifier within all duplicates. Use pointer to heights data array
for btHeightfieldTerrainShape.
2018-10-13 22:22:12 +03:00
elsid
ae7285e960
Use ScopeGuarded instead of raw mutex
2018-10-13 22:16:35 +03:00
elsid
cf4066751c
Add classes to encapsulate value guarded by mutex
2018-10-13 22:16:35 +03:00
Andrei Kortunov
43c7438e8e
Move WeakCache to components/misc
2018-09-28 16:47:47 +04:00
Andrei Kortunov
70ed8fd1a9
Use constants instead of widely used magic numbers (task #4645 )
2018-09-17 19:22:50 +04:00
David Cernat
a083439139
Merge pull request #469 from davidcernat/master while resolving conflicts
...
# Conflicts:
# apps/openmw/main.cpp
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwdialogue/dialoguemanagerimp.cpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwscript/dialogueextensions.cpp
# apps/openmw/mwworld/worldimp.hpp
2018-08-20 14:08:44 +03:00
Marc Zinnschlag
dc9aedca7d
Merged merge request !33
2018-08-18 12:08:05 +02:00
James Carty
1c49698053
Implement 'g' flag
2018-08-13 20:31:11 +01:00
James Carty
579f35511a
Add support for scietific notation flag for MessageBox
2018-08-12 22:45:03 +01:00
Andrei Kortunov
7d6e3673e0
Implement advanced logging system (feature #4581 )
2018-08-12 13:38:15 +04:00
Capostrophic
348c6f848e
Fix a bunch of MSVC warnings
2018-08-09 02:27:33 +03:00
Andrei Kortunov
1f4dd3b393
Make partial binary search case insensitive, as it supposed to be (bug #4558 )
2018-08-05 13:26:12 +04:00
Andrei Kortunov
e2519226aa
Move boost include
2018-08-03 17:04:07 +04:00
Andrei Kortunov
c2a175c2e0
Move crash catcher wrapper to separate file
2018-08-03 15:51:17 +04:00
Andrei Kortunov
c454f1bdad
Use log file for editor (feature #4012 )
2018-08-03 09:05:08 +04:00
Marc Zinnschlag
13f7b53b1c
Revert "Don't force DDS file usage ( fixes #1392 )"
...
This reverts commit 90f3ff2da4
.
2018-06-04 17:08:09 +02:00
Andrei Kortunov
afae398b5c
Use utf8 lowercase function for journal index to avoid code duplication
2018-05-24 12:53:06 +04:00
Andrei Kortunov
b5374029e5
Implement case-insensitive search in spell window
2018-05-24 12:39:00 +04:00
Evgeny Kurnevsky
48fb6bb9e8
Fix crash when rollDice is called with 0.
2018-04-21 16:46:36 +03:00
scrawl
1f1f47431f
Merge pull request #1672
2018-04-19 13:36:40 +00:00
Capostrophic
48467814d4
Improve random number generation
2018-04-19 15:55:26 +03:00
Capostrophic
90f3ff2da4
Don't force DDS file usage ( fixes #1392 )
...
Fallback to a DDS file if the requested texture path doesn't point to an existing file, not vice versa
2018-04-18 17:55:12 +03:00
Andrei Kortunov
94c0e3ed10
Move toUpper() from StringUtils to the JournalViewModel
2017-11-23 19:37:45 +04:00
Andrei Kortunov
67acb83b62
Add missing include
2017-11-21 13:27:33 +04:00
Andrei Kortunov
5f41f7c48d
Clean code up a bit
2017-11-21 13:03:38 +04:00
Andrei Kortunov
ba91cd658b
Convert topic name to Unicode
2017-11-21 12:31:23 +04:00
Andrei Kortunov
f0ca3eabd3
Merge from upstream master
2017-11-21 09:39:54 +04:00
Andrei Kortunov
a391990f2a
Provide multibyte toLower() and single chars comparator
2017-11-20 21:30:46 +04:00
Alexander Stillich
43b5c2e36b
Fixed parameter naming
2017-11-07 23:20:10 +01:00
Alexander Stillich
af3e1f92ec
Added StringUtil::replaceAll()
2017-11-07 23:06:23 +01:00
Andrei Kortunov
4bb349a525
Use default 0 precision in the float formatting (bug #4096 )
2017-09-17 15:07:04 +04:00
Bret Curtis
b7c27e5e96
remove boost/tuple
2017-06-09 19:08:53 +02:00
scrawl
813af876f6
Use a partial binary search in isReservedName ( Fixes #3835 )
2017-05-07 23:28:56 +02:00
MiroslavR
c962b6dd6d
Fix correctActorModelPath to work properly when both backward and forward slashes are used in the path ( Fixes #3822 )
2017-04-09 18:34:36 +02:00
scrawl
1d6b5b2a52
Add StringUtils::CiComp operator
2017-02-23 23:28:50 +01:00
Allofich
8c5aae0722
Add virtual destructors
2016-08-21 18:31:46 +09:00
MiroslavR
f6f3f71db5
Improve format specifiers for message boxes
2016-07-09 03:18:45 +02:00
scrawl
07b064f616
Rename to lowerCaseInPlace
2015-12-07 22:49:15 +01:00
scrawl
e3d3380c8c
Remove return value for in-place toLowerStr
2015-12-07 22:43:08 +01:00
scrawl
42d68eb7fb
Build fix
2015-12-07 22:29:57 +01:00
scrawl
f875597be5
Don't use tolower()
...
See https://forum.openmw.org/viewtopic.php?f=8&t=3231&p=35968
2015-12-07 21:58:30 +01:00
scrawl
27e669296e
StringUtils: use the locale-unaware tolower function
...
There is no change in behaviour since we were using the C locale.
The locale-aware tolower is much slower than the locale-unaware one. At least on Linux/GCC it calls dynamic_cast's, and is overall slower by an order of magnitude.
2015-11-27 03:22:52 +01:00
scrawl
82c4d01b37
Add back resource handling workarounds to the gui code
2015-05-01 18:37:24 +02:00