1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-25 12:41:01 +00:00

348 Commits

Author SHA1 Message Date
fredzio
91b3926a49 We need to update the collision world after each step.
Change order of traversal simulation step to make it rare enough to be parallelizable

Before:
for actor in actors:
    repeat numstep:
        solve(actor)
After:
repeat numstep:
    for actor in actors:
        solve(actor)

Introduce struct ActorFrameData to pack all data that is necessary for
the solver
2020-10-15 06:41:22 +02:00
fredzio
d76cc5d0a9 Make the Object class manage its collision object and position. 2020-10-15 06:41:16 +02:00
fredzio
4ef36973fb Make the Actor class manage its collision object and position. 2020-10-15 06:41:08 +02:00
fredzio
82da2045a9 Non functionnal changes in preparation for async physics feature 2020-10-15 06:41:03 +02:00
Alexei Dobrohotov
ec825b2510 Fix RayCastingResult warning 2020-10-08 22:44:46 +03:00
AnyOldName3
9e78f3d936 Skip raycasting for zero-length rays
Rays with no length can't intersect anything. This also prevents an
assertion triggering with Bullet built in Debug mode.
2020-10-03 02:19:38 +01:00
Andrei Kortunov
f9e667dd8c Fix MSVC warnings 2020-08-26 12:34:27 +04:00
Petr Mikheev
0de6650add Add RayCastingInterface 2020-08-06 22:03:33 +02:00
Petr Mikheev
ed3426cf2f Move third person camera collision check from World::updatePlayer() to Camera::updatePosition() 2020-08-06 00:43:33 +02:00
Andrei Kortunov
4a5fce8ca5 Use more C++11 in the physics code 2020-06-26 14:22:00 +04:00
bzzt lost a hitlab login
89ec6cfea2 tooltips labels
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
Capostrophic
577786f110 Don't disable player's collision shape in TCL (#5435) 2020-05-30 00:55:17 +03:00
elsid
69df6098e5
Report frame number, number of actors and objects to stats 2020-05-22 17:39:18 +02:00
elsid
2d7c3bae61
Support bullet with double precision 2020-05-13 19:24:28 +02:00
Capostrophic
5e2e5b7aa9 Fix btCollisionObjectWrapper forward declaration 2020-03-31 18:31:46 +03:00
Capostrophic
4f08f6e09b Separate ClosestNotMeConvexResultCallback 2020-03-31 00:38:34 +03:00
Capostrophic
19010ec045 Separate MovementSolver 2020-03-31 00:38:34 +03:00
Capostrophic
ca6cce0c7e Separate Stepper 2020-03-31 00:38:34 +03:00
Capostrophic
5d625c12dc Separate ContactTestResultCallback 2020-03-31 00:38:34 +03:00
Capostrophic
c94cd775bf Separate ClosestNotMeRayResultCallback 2020-03-31 00:38:34 +03:00
Capostrophic
ce588fb39c Separate DeepestNotMeContactTestResultCallback 2020-03-31 00:38:34 +03:00
Capostrophic
1629791885 Port wareya's actor tracer consistency fixes 2020-03-30 21:23:41 +03:00
elsid
4a0c056489
Do not wander to occupied area by other actor 2020-02-10 22:29:54 +01:00
Capostrophic
4e54ed86b3 Fix jumping mechanics framerate dependency (bug #4991) 2019-07-29 15:45:57 +03:00
Andrei Kortunov
6832a2fa9a Remove BOM from CPP files (allows to build OpenMW with LCC on Elbrus) 2019-05-21 19:22:34 +04:00
Andrei Kortunov
6a01e4cd8a Fix arguments order for raytracing in the getHitContact() (bug #4990) 2019-04-22 20:46:38 +04:00
Andrei Kortunov
d23a0ce2ae Use C++11-style loops in the game world instead of iterators 2019-03-07 12:39:57 +04:00
elsid
43b39e8418
Use not scaled player half extents as default to find path 2019-03-04 22:59:38 +03:00
Bret Curtis
14c93b3df0 Revert "Merge pull request #2204 from elsid/fix_navigator_update"
This reverts commit 26fb0e7a0f0729e727c72c2eefe1475f6cc8e956, reversing
changes made to 42b2391303b87a3fbe06cab17bc16079ae5a00f9.
2019-03-04 11:06:15 +01:00
elsid
c066ee9dc5
Use not scaled player half extents as default to find path 2019-03-03 16:21:12 +03:00
Grigory Latyshev
3872d7476b Move makeOsgVec3f() to settingsutils.hpp
Remove all other makeOsgVec3f() implementations
2019-02-28 20:03:42 +00:00
Andrei Kortunov
3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
Capostrophic
a584aa25ab Don't re-enable collision object for dead actors 2019-02-04 22:13:30 +03:00
Capostrophic
403db9afe3 Don't reset player jumping flag unnecessarily (bug #4775) 2019-01-07 16:08:26 +03:00
Capostrophic
0bbcc0e787 Avoid falling height reset if onGround state didn't change (bug #4411) 2018-12-23 13:39:35 +03:00
Andrei Kortunov
a53333c3d5 Native animated containers support (feature #4730) 2018-12-13 23:11:16 +04:00
elsid
49d81241db Merge branch 'master' into pathfinder_detour 2018-10-28 17:08:09 +03:00
Marc Zinnschlag
9dd0d641bc Merged pull request #1931 2018-10-28 11:02:33 +01:00
Andrei Kortunov
e7de6b974a Optimize actors processing
1. Do not update physics and animations for actors outside processing range (bug #4647)
2. Do not render such actors
3. Add transparency to actors near processing border, so they will not pop up suddenly
2018-10-25 22:52:59 +04:00
Andrei Kortunov
61e6e359c4 Allow creatures to use the autogenerated collision box (feature #2787) 2018-10-22 15:48:23 +04:00
Andrei Kortunov
13bd81f896 Try to use collisions from basic actor model if an animated one has no collisions (feature #4682) 2018-10-16 22:28:19 +04:00
elsid
fa23b590a4
Add unwalkable areas to NavMesh 2018-10-13 22:16:32 +03:00
elsid
144e1a063b
Support animated objects 2018-10-13 22:16:30 +03:00
elsid
fafba8ea0c
Use recastnavigation to find path 2018-10-13 22:16:25 +03:00
elsid
c866fdff86
Move physics object, heightfield, ptrholder into separate files 2018-10-13 22:16:24 +03:00
Andrei Kortunov
e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
Andrei Kortunov
70ed8fd1a9 Use constants instead of widely used magic numbers (task #4645) 2018-09-17 19:22:50 +04:00
Andrei Kortunov
ae1c054635 Make GetPCJumping return true only when jumping (bug #4641) 2018-09-16 11:58:01 +04:00
Capostrophic
7ef6fa9f61 Remove deprecated GMST get* functions 2018-08-29 18:38:12 +03:00
Andrei Kortunov
c6dcfd1fce Do not apply scale twice for animated collision nodes (bug #4607) 2018-08-25 17:26:17 +04:00