Commit Graph

591 Commits (5c0214142b77e1bf91085c4065023cf4fc64245d)

Author SHA1 Message Date
psi29a 5c0214142b Merge branch 'static-build' into 'master'
Optional local source builds of OSG, MyGUI, Bullet

See merge request OpenMW/openmw!547
3 years ago
Gleb Mazovetskiy 8737453498 cmake: Compiler-specific whole-archive macro 3 years ago
Gleb Mazovetskiy 99ba45a308 Optional static builds of OSG, MyGUI, Bullet 3 years ago
Andrei Kortunov 14cf0ce1dc Implement instanced groundcover 3 years ago
psi29a d2c5de5211 Merge branch 'projectile_physics' into 'master'
Precise projectile physics (closes #4201)

Closes #4201

See merge request OpenMW/openmw!550
3 years ago
fredzio 1f4c85520f Use convexSweepTest for projectile movement to solve any
imprecision issue with projectile collision detection.
Simplify the mechanics: manage hits in one spot.
Give magic projectiles a collision shape similar in size to their visible
model.

Rename the 2 convex result callback to clearly state their purpose.
3 years ago
elsid cc24f13b39
Remove duplicated sound_buffer entry 3 years ago
psi29a 9eba086c34 Merge branch 'sound_buffer_pool_2' into 'master'
Separate sound buffer pool from sound manager

See merge request OpenMW/openmw!520
3 years ago
Andrei Kortunov 799bd3379c Move screenshots handling to the separate class 3 years ago
elsid 944033db4e
Separate sound buffer pool from sound manager 3 years ago
wareya 18ef32ca82 values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset 3 years ago
Andrei Kortunov dc7b48e92e Generate physics collisions for projectiles (bug #3372)
Remove redundant now mHit field
3 years ago
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.
4 years ago
Petr Mikheev 0de6650add Add RayCastingInterface 4 years ago
Evil Eye 6ad20ec9c7 Mutate base records when adding/removing spells 4 years ago
Petr Mikheev 51173ebcf5 Refactoring. Move all code related to 'view over shoulder' to a separate file. 4 years ago
Bret Curtis 0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
Replace OpenThreads by std types
4 years ago
elsid a36a55bfb5
Clamp sound volume on settings update 4 years ago
Bret Curtis acf36344d4
Merge pull request #2946 from elsid/sound_update_water
Put logic to update water sound id and volume into a separate class
4 years ago
elsid 439891ef53
Put logic to update water sound id and volume into a separate class 4 years ago
Andrei Kortunov 27f1a3376c Add a separate stats watcher for GUI 4 years ago
elsid 0594b7d1a0
Put logic for the next region sound selection into a separate class 4 years ago
elsid 40ad87bc4d
Replace OpenThreads by std types 4 years ago
bzzt d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
4 years ago
elsid c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection 4 years ago
Andrei Kortunov 4afc332a0c Add a FogManager 4 years ago
Bret Curtis 5d019c27ae
Merge pull request #2887 from akortunov/worldmanager
Introduce a separate class to control world date and time
4 years ago
Andrei Kortunov 81805b7263 Introduce a separate class to control world date and time 4 years ago
elsid d35ccc39c6
Fix build tests with double precision bullet 4 years ago
Andrei Kortunov 2ff04b4e73 Move TextColours initialization to the TextColours itself 4 years ago
Andrei Kortunov add42830d9 Add a flag to use double-precision functions from Bullet 4 years ago
Andrei Kortunov b33c4c920c Move all OICS handling to the separate file 4 years ago
Andrei Kortunov 8512133bb1 Move control switches to the separate file 4 years ago
Andrei Kortunov d3a9f893c8 Move keyboard-specific code to the separate file 4 years ago
Andrei Kortunov e353647d15 Move gamepads handling to the separate file 4 years ago
Andrei Kortunov ce40294124 Move input actions handling to the separate file 4 years ago
Andrei Kortunov fcac7d3ab7 Split mouse handling to the separate file 4 years ago
Andrei Kortunov 1560e71f4e Move SDL mappigs to the separate file 4 years ago
Andrei Kortunov 3c09d05615 Split actions enum to the separate file 4 years ago
Andrei Kortunov 15dc4d241d Split sensors handling so the separate file 4 years ago
Capostrophic 4c1c30db33 Address akortunov's concerns regarding spell refactoring
Separate linked effect handling into linked effects header
Separate spell absorption handling into spell absorption header
Make armor disintegration loop a range-based for loop
4 years ago
Capostrophic 8d22e075e6 Separate functions that don't belong to CastSpell class 4 years ago
Capostrophic db13984db0 Separate spell resistance 4 years ago
Bret Curtis 8a8107e837 as it says; revert vismask and uncomplicate openmw 4 years ago
Bret Curtis baf3c36a76
Merge pull request #2722 from akortunov/gyro
Rotate camera via gyroscope on mobile devices
4 years ago
Andrei Kortunov e63325ebff Support for camera rotation via gyroscope on Android (feature #5311) 4 years ago
Capostrophic 4f08f6e09b Separate ClosestNotMeConvexResultCallback 4 years ago
Capostrophic 19010ec045 Separate MovementSolver 4 years ago
Capostrophic ca6cce0c7e Separate Stepper 4 years ago
Capostrophic ce588fb39c Separate DeepestNotMeContactTestResultCallback 4 years ago