Andrei Kortunov
251d01304f
Use move semantics for osg::ref_ptr
2024-01-21 13:48:33 +04:00
Petr Mikheev
2900351777
Render ESM4 NPCs
2023-10-07 17:21:25 +02:00
Nelsson Huotari
4abd47f430
Fix regression with Collada-animated creatures
2023-05-23 08:30:02 +00:00
Petr Mikheev
5983f22290
Remember actor in the actor's InventoryStore instead passing the actor in every call
2023-01-21 23:43:00 +01:00
Alexei Kotov
e24db874dc
Correct xnif use for creatures
2023-01-14 04:55:12 +03:00
Alexei Kotov
434b4deda1
Don't use xkf if xnif is merely the base model (bug #5371 )
2023-01-14 04:55:12 +03:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base
2022-09-22 21:35:26 +03:00
elsid
0614b82452
Restore UnrefQueue to destruct animation asynchronously
2022-07-24 21:08:43 +02:00
elsid
1e7989c5e5
Remove animation objects from scene outside destructor
2022-07-24 21:08:27 +02:00
elsid
24712e2cb1
Avoid changing map when updating ptr
...
This is not necessary and has overhead.
2022-05-21 00:12:33 +02:00
Nelsson Huotari
6869fa18e4
Fix unsafe memory access at object.cpp
2022-03-26 15:16:22 +00:00
Evil Eye
c277e8bf3f
Unset store listeners for creatures
2021-11-15 16:31:38 +01:00
Bo Svensson
a854a6e04a
removes UnrefQueue ( #3181 )
...
Currently, we use an `UnrefQueue` which supposedly aims to transfer destruction costs to another thread. The implications of this unusual pattern can not be well understood because some allocators might free resources more efficiently if they are freed by the same thread that allocated them. In addition, `UnrefQueue` complicates the validation of thread safety in our engine. Lastly, our current usage of `UnrefQueue` triggers `ref()`, `unref()` atomic operations as objects are passed into the queue. These operations could be more expensive than the actual destruction.
With this PR we thus remove `UnrefQueue`. We can expect these changes to have a minor impact at most because we free most resources elsewhere in `ResourceSystem::updateCache`.
2021-10-20 23:02:15 +02:00
Bret Curtis
8a8107e837
as it says; revert vismask and uncomplicate openmw
2020-04-20 20:57:38 +02:00
Andrei Kortunov
84979fa8b7
Move VisMask to components
2020-02-16 16:03:35 +04:00
AnyOldName3
8482236a82
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
2019-01-24 23:09:23 +00:00
Capostrophic
624db99bf2
Remove some redundant code
2019-01-05 01:25:52 +03:00
AnyOldName3
0124be5713
Merge upstream/master
2018-10-10 21:23:19 +01:00
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
2018-10-09 10:21:12 +04:00
AnyOldName3
553094669b
Merge upstream/master (& fix merge conflicts)
2018-06-20 00:11:23 +01:00
David Cernat
04a2025340
Fix crash when adding items to certain disabled creatures (bug #4441 )
2018-06-05 18:09:10 +03:00
scrawl
cfdf99f601
Revert "Merged pull request #1573 "
...
This reverts commit 7324bd368f103a5dc3c029dfd1c7024e90200cdf, reversing
changes made to 810e4416f68cd564a9d189e88c15b1cae29e663e.
2018-05-26 11:39:30 +00:00
Andrei Kortunov
22fb1f3403
Play spellcasting effects from objects
2018-04-30 17:12:06 +04:00
AnyOldName3
6f582f5411
Make indoor shadows do something meaningful.
2018-03-01 17:30:53 +00:00
MiroslavR
d24286273b
Prevent respawned references from being added to the scene twice in certain cases ( Fixes #3864 )
2017-08-01 00:11:14 +02:00
Allofich
db2f97f308
Fix shadowing warning
2017-03-27 20:22:20 +09:00
scrawl
d163228199
Fix updatePtr
2017-02-22 21:02:34 +01:00
scrawl
00d4fea91c
Derive Animation from osg::Referenced to allow the UnrefQueue to delete it
2017-02-22 15:27:20 +01:00
scrawl
a5247394dc
(Re)set the inventory listener outside of the Animation class
2017-02-22 15:08:22 +01:00
scrawl
c5f8ff6e0e
Add names to several nodes for debugging purposes
2017-02-02 21:49:52 +01:00
scrawl
6615330430
Fix use of UnrefQueue in removeObject
2016-10-08 16:41:17 +02:00
scrawl
a9561f738a
Move RemoveParticlesVisitor to animation.cpp
2016-05-19 22:35:17 +02:00
scrawl
f898bf493f
Don't use Geodes
2016-03-10 13:17:01 +01:00
scrawl
5824619a95
Clean up includes
2016-02-12 19:28:10 +01:00
scrawl
8b596dfcbe
Remove support for OSG 3.2
...
Since commit e8662bea3133ba9dbb09b86c3abb1af39425e90d, we're using OSG functionality that contains an unfixed crash bug in version 3.2. The bug is fixed in version 3.4 (OSG commit 6351e5020371b0b72b300088a5c6772f58379b84)
2016-02-12 14:46:45 +01:00
scrawl
d11c2864df
Introduce UnrefQueue to handle the deleting of no longer needed objects in the background thread
2016-02-09 15:45:35 +01:00
scrawl
7a8a7e3dd6
Add const version of getAnimation
2015-12-18 17:21:51 +01:00
scrawl
62169a7039
Use a single-precision PositionAttitudeTransform in speed critical places
2015-11-22 19:54:26 +01:00
scrawl
8c268f239e
Set the object node scale before inserting model
...
This fixes initWorldSpaceParticles not taking object scale into account. Still not taking into account object rotation or node animations. Ideally the initWorldSpaceParticles needs to run in an updateCallback.
2015-11-19 15:57:12 +01:00
scrawl
f1ac408f35
Place Drawables directly in the scene graph when built with OSG 3.4
...
OSG 3.4 adds the ability to place Drawables directly in the scene graph, without a Geode decorating them. Leveraging this should give a small performance boost, because the redundant Geodes increase culling overhead.
There is still an oustanding issue with the RemoveDrawableVisitor no longer working correctly, because Drawables can have multiple parents.
2015-11-10 18:23:42 +01:00
scrawl
d7695f2560
Remove unused NpcAnimation visibilityFlags
2015-06-22 21:14:44 +02:00
scrawl
7b35882814
RemoveParticlesVisitor fix
2015-06-17 15:13:17 +02:00
scrawl
f4ee805e3b
Object animation fix
2015-05-28 15:44:58 +02:00
scrawl
723beb1cac
Move IncrementalCompileOperation to SceneManager
2015-05-26 20:20:18 +02:00
scrawl
3dcb167066
Map rendering
2015-05-26 16:40:44 +02:00
scrawl
8b322fcd06
Implement getFacedObject using osgUtil::IntersectionVisitor
2015-05-24 03:36:34 +02:00
scrawl
da24e298ee
Fix -Wreorder warnings
2015-05-23 22:44:00 +02:00
scrawl
0b042b75cc
Restore actor visibility mask
2015-05-23 05:42:37 +02:00
scrawl
2235d2978b
Restore animation text key handling
2015-05-22 04:36:33 +02:00
scrawl
b7258c8d23
Readded Objects::updatePtr
2015-05-14 17:34:55 +02:00