Alexei Dobrohotov
db9c174ca8
Make NIF particle node handling more generic
2020-11-30 12:33:18 +03:00
Andrei Kortunov
8084a336b5
Replace zeroes and nulls by nullptrs
2020-11-29 11:14:07 +04:00
AnyOldName3
86fad60c7d
Merge branch 'roots' into 'master'
...
Handle multiple root nodes (bug #5604 )
Closes #5604
See merge request OpenMW/openmw!428
2020-11-29 01:25:22 +00:00
Alexei Dobrohotov
5b6377b061
Handle multiple root nodes (bug #5604 )
2020-11-28 13:25:39 +03:00
Nelsson Huotari
f78a5d795c
Separate keyframes logic to provide basis for osgAnimation integration.
2020-11-18 22:48:47 +02:00
Alexei Dobrohotov
8a6d3d1b4f
Minor fixes
...
Fix extra semicolon
Disable collision avoidance if AI is disabled
2020-11-13 22:53:12 +03:00
Evil Eye
94c89e6d5e
check ValueTs
2020-11-13 16:41:45 +01:00
Evil Eye
d8897c4509
remove inline and use enable_if_t
2020-11-12 20:46:45 +01:00
Evil Eye
d8d4351962
fix MSVC2017 builds
2020-11-12 19:45:32 +01:00
Alexei Dobrohotov
a46699fb1e
Handle NiGeomMorpherController interpolator list
2020-11-10 23:23:11 +03:00
Alexei Dobrohotov
f3f5dcb016
Read a few more NIF types
...
NiFloatInterpolator, NiPoint3Interpolator, NiTransformInterpolator, NiBoolInterpolator
Update a few existing controller records
Update NiSkinInstance
2020-11-10 22:37:39 +03:00
Alexei Dobrohotov
c79f509652
Misc NIF loader improvements
...
Bullet NIF loader cleanup
Collect all extra records of a node
Remove code duplication in geometry type detection in OSG-side NIF loader
2020-11-08 13:23:18 +03:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
Alexei Dobrohotov
7e521788e9
Try to fix build
2020-10-26 15:09:31 +03:00
Alexei Dobrohotov
4fc5e22e9e
NIF fixes and cleanup
...
Get rid of NodeIndexHolder
Use unsigned 32-bit type for NIF record index
Fix calculation of the number of UV sets
2020-10-26 02:51:25 +03:00
Alexei Dobrohotov
71056c6014
Clean up palettized NiPixelData loading
2020-10-25 14:37:29 +03:00
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
2020-10-18 10:27:35 +04:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
Alexei Dobrohotov
9f08dc9968
Revert "Merge branch 'skinning' into 'master'"
...
This reverts merge request !327
2020-10-08 23:24:28 +00:00
Alexei Dobrohotov
6be808e301
RigGeometry: convert some pairs to structs
2020-10-08 03:05:59 +03:00
Alexei Dobrohotov
302d8eed27
Clean up Roll- and FlipController implementation
2020-10-06 20:47:06 +03:00
Alexei Dobrohotov
29ccb09da5
Introduce some extended NIF definitions
2020-10-04 13:18:56 +03:00
AnyOldName3
a338e8c561
Actually set the uvSet value
...
This got lost when uvSet was made into a local variable.
2020-09-24 17:13:09 +01:00
AnyOldName3
b2cb98d30e
Fix NiFlipController
...
NiFlipControllers *always* affect the base texture, even if no base
texture is bound. When no base texture is bound, they default to UV set
zero and to having wrapped UV coordinates, instead of using the settings
for the disabled base texture.
2020-09-16 23:03:42 +01:00
Bret Curtis
05a19f4f93
Merge pull request #2984 from Capostrophic/optimizer
...
Avoid optimizing animated shapes once again (regression #5565 )
2020-08-07 22:09:02 +02:00
Capostrophic
aa131262ea
Implement quadratic interpolation for scalars and vectors
2020-08-07 11:13:53 +03:00
Capostrophic
35de34c019
Don't clamp GeomMorpherController recovered weight value
...
Seems that Morrowind doesn't do it.
2020-08-07 11:13:53 +03:00
Capostrophic
8c213cbfb1
Avoid optimizing animated shapes once again (regression #5565 )
2020-08-05 22:39:48 +03:00
Capostrophic
3d31d21bc2
Don't encapsulate NIF transformation changes
...
Currently that causes issues
2020-07-29 20:46:36 +03:00
Capostrophic
46825e8a4d
Move NIF record index back to a separate user object
...
This makes sure it's never erroneously optimized out. NodeIndexHolders don't need to be cloned as their record index is never supposed to be changed.
2020-07-26 09:57:43 +03:00
Capostrophic
f93655e803
Encapsulate NIF transform changes in NifOsg::MatrixTransform
2020-07-26 09:57:43 +03:00
Capostrophic
ad87289d59
Fix NifOsg::MatrixTransform constructor inheritance
2020-07-26 09:57:43 +03:00
Capostrophic
a61267f57d
Replace NodeUserData with a custom transform node
2020-07-26 09:57:43 +03:00
Capostrophic
4c9cefefdd
Get rid of NifOsg::CollisionSwitch
2020-07-26 09:57:43 +03:00
Bret Curtis
0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
...
Replace OpenThreads by std types
2020-07-04 13:11:23 +02:00
Frederic Chardon
f268bc13f1
Do not set particle lifetime to 0 ( #5472 )
2020-07-01 11:04:18 +00:00
elsid
40ad87bc4d
Replace OpenThreads by std types
2020-06-25 22:16:09 +02:00
bzzt lost a hitlab login
26ab176389
profiling
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
f12879a04c
allow statesetupdater as cullcallback = faster + works in paging
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
Capostrophic
7aca18f92b
Handle NiLines (feature #5445 )
2020-05-30 19:09:34 +03:00
Capostrophic
74a74209ac
Allow junk (data-less) NiParticleColorModifiers
2020-05-26 15:08:10 +03:00
Capostrophic
7a9403aeed
Remove unnecessary casts
2020-05-26 15:01:26 +03:00
Capostrophic
fc9a10ba48
Streamline node controller handling
...
Reduce code duplication
Allow non-animated nodes controlled by NiVisController to be optimized out
2020-05-26 15:00:47 +03:00
Capostrophic
89a2c69a61
Support particle node transformations
2020-05-25 23:51:15 +03:00
elsid
a59e25e093
Optimize MWRender::Animation::hasAnimation
...
Use a set to check for group start existence.
Reduce time taken from 2.6% to 0.08% and
MWMechanics::MechanicsManager::update from 7% to 5%
in relative CPU time usage for a scene with ~100 actors.
2020-05-21 16:21:11 +02:00
Capostrophic
b665fed8f2
Introduce NiGeometry abstraction
2020-05-14 10:52:27 +03:00
Capostrophic
30558c2434
Try to resolve CI concerns
2020-05-14 10:00:33 +03:00
Capostrophic
915ffe2241
Handle non-node roots more gracefully (bug #5416 )
2020-05-14 00:57:00 +03:00
Capostrophic
30fc2e3e5e
Add basic NiPathController support (movement only)
2020-05-13 18:01:22 +03:00
Capostrophic
b91d0d889f
Fix warning
...
/home/travis/build/OpenMW/openmw/components/nifosg/nifloader.cpp:615:42: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
if (hasVisController |= (ctrl->recType == Nif::RC_NiVisController))
~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/travis/build/OpenMW/openmw/components/nifosg/nifloader.cpp:615:42: note: place parentheses around the assignment to silence this warning
if (hasVisController |= (ctrl->recType == Nif::RC_NiVisController))
^
( )
2020-05-10 14:38:07 +03:00