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
Capostrophic
1bf2ddac4d
Cleanup
...
Move static variable declaration out of the loop
Remove redundant boolean argument from applyDrawableProperties()
Improve HeightCullCallback class formatting
2020-05-07 18:54:09 +03:00
Bret Curtis
f51476a3c5
Merge pull request #2816 from Capostrophic/switchlod
...
CollisionSwitch and Switch/LOD node fixes
2020-05-01 23:49:08 +02:00
Bret Curtis
bf6daa7269
Merge pull request #2811 from Capostrophic/emitter
...
Allow particle emitters to be attached to an arbitrary node
2020-04-30 14:56:49 +02:00
Capostrophic
63fe02b1ba
CollisionSwitch and Switch/LOD node fixes
...
Properly apply transformations to both switch and LOD nodes
Allow both NiSwitchNode and NiLODNode to be the root node
Properly add CollisionSwitch into the scene graph
2020-04-30 15:04:57 +03:00
Capostrophic
89282d14aa
Fix collision switch node mask (again)
2020-04-29 17:18:39 +03:00
Capostrophic
f516178ec9
Fix particle processor cloning
...
Extend emitter handling comment in NIF loader
2020-04-29 11:14:22 +03:00
Capostrophic
c08f9e13af
Allow emitters to be attached to nodes after particle systems
2020-04-29 11:13:45 +03:00
Capostrophic
3b7fb9ec09
Use pipe-equal operator
2020-04-28 10:00:46 +03:00
Capostrophic
bbd15cccd5
Fix hidden node with NiVisController optimization
2020-04-27 00:21:34 +03:00
Bret Curtis
68549828b4
create static functions to set/get hidden node mask; compromise on magic numbers to make things easier to understand
2020-04-22 13:34:19 +02:00
Bret Curtis
e1a5435531
Merge commit '8a8107e8'
2020-04-22 13:22:54 +02:00
Chris Djali
71c46204ec
Merge pull request #2781 from mp3butcher/partsysfix
...
Particle System shading and lighting (fixing bug#3676 and #4949 )
2020-04-20 21:29:50 +01:00
Julien Valentin
886fd5efc9
enable particle shading and force particle normal to (0.3,0.3,0.3)
...
and update changelog
2020-04-20 22:15:34 +02:00
Bret Curtis
8a8107e837
as it says; revert vismask and uncomplicate openmw
2020-04-20 20:57:38 +02:00
Capostrophic
c3cc8ee1e1
Disable specular lighting for 4.0.0.2 and earlier files
2020-04-17 14:08:29 +03:00
Julien Valentin
6e2a651252
fix particle alpha
2020-04-16 02:48:42 +02:00
Capostrophic
e1d635cd71
Make extra sure groups with special behavior aren't optimized out
2020-04-10 18:11:21 +03:00
Capostrophic
80239235d3
Always create NiGeometry nodes as MatrixTransform
2020-03-31 13:04:03 +03:00
Capostrophic
7319eda54e
Correct drawable property apply order (bug #5313 )
2020-03-23 20:47:47 +03:00
Capostrophic
2b3ecff004
Remove broken fixed function pipeline support
...
Added by mistake
2020-03-03 21:50:50 +03:00
Capostrophic
6999f1fd28
Add an option to apply lighting to environment maps
2020-03-03 20:08:59 +03:00
Capostrophic
19a7245251
Add bump mapping support
2020-03-03 13:32:30 +03:00
Andrei Kortunov
8c177f0306
Take in account transformations of NiCollisionSwitch
2020-02-25 11:09:36 +04:00
Bret Curtis
c907cd98c8
Merge pull request #2704 from akortunov/collisionswitch
...
Handle NiCollisionSwitch node
2020-02-19 21:24:25 +01:00
Andrei Kortunov
77d6fe46ca
Handle NiCollisionSwitch node
2020-02-19 12:14:21 +04:00
Andrei Kortunov
7b5ec76db4
Fix regression in the NiVisController
2020-02-19 11:50:59 +04:00
Andrei Kortunov
84979fa8b7
Move VisMask to components
2020-02-16 16:03:35 +04:00
Capostrophic
e363d5df21
Some more minor NIF support fixes
2020-02-02 17:28:46 +03:00
Alexei Dobrohotov
234fdfefb7
Revert "Don't apply 1.6 magic value to NiGravity decay factor ( #5266 )"
2020-01-31 15:11:29 +03:00
Capostrophic
dcafe719a5
Don't apply 1.6 magic value to NiGravity decay factor ( #5266 )
2020-01-31 01:15:58 +03:00
capostrophic
32caab663f
Enumerate interpolation types properly
2020-01-02 13:07:27 +03:00
capostrophic
e654a52b70
More NIF adjustments
...
Constant interpolation support
2020-01-02 13:07:27 +03:00
Andrei Kortunov
c41562fa27
Make TextureProperty warnings more informative
2019-12-15 13:56:20 +04:00
Capostrophic
909c8ef0ea
Avoid working with empty controller data (bug #5229 )
2019-12-14 20:35:23 +03:00
Andrei Kortunov
5b5c52d92e
Handle NiKeyframeController for NiTriShape (feature #5224 )
2019-12-10 16:20:27 +04:00
Andrei Kortunov
eec82f676a
Merge pull request #2602 from elsid/clang_tidy
...
Fix clang-tidy issues
2019-12-03 08:27:43 +04:00
Andrei Kortunov
1b98fe4395
Fix GCC9 warnings about implicit declarations
2019-11-29 12:41:23 +04:00
elsid
8d358eeb7d
Avoid virtual call in ParticleSystem ctor
2019-11-17 18:50:45 +01:00
Alexei Dobrohotov
ef138e9afc
Merge pull request #2592 from akortunov/switchnode
...
Use transformations of NiSwitchNode
2019-11-15 19:46:45 +03:00
Andrei Kortunov
af41e9acc1
Initialize variables to avoid undefined values
2019-11-13 14:47:29 +04:00
Andrei Kortunov
51cfd070c6
Use transformations of NiSwitchNode
2019-11-09 21:43:08 +04:00
Capostrophic
8056107c6e
More minor NIF improvements
2019-10-16 01:36:43 +03:00
Capostrophic
83f61d1636
Support target color in NiMaterialColorController (bug #5159 )
2019-09-16 22:31:18 +03:00
Capostrophic
8baddefdbd
Refactor extra data and particle modifier handling
...
Objects no longer inherit from extra data class
"Controlled" harmful abstraction no longer exists
Introduced NiParticleModifier/NiParticleCollider abstractions
Extra data size reading moved into the base read() method
2019-09-13 20:26:22 +03:00
Capostrophic
c0438a0c6b
Avoid using getPtr on empty geometry data
2019-08-26 23:01:58 +03:00
Alexei Dobrohotov
64fde2d7c2
Fix crash when NiGeometry lacks NiGeometryData
2019-08-24 22:34:56 +03:00
capostrophic
9c7474f88c
Implement NiPalette support (feature #4882 )
2019-08-16 20:21:09 +03:00
capostrophic
efa463af8f
Fix non-tiling textures clamp mode (bug #5137 )
2019-08-16 16:26:11 +03:00
Alexei Dobrohotov
3668473d6d
Fix comment
2019-08-10 19:22:46 +03:00
Alexei Dobrohotov
eaedf34975
Fix ventriloquism
2019-08-10 19:21:36 +03:00
Alexei Dobrohotov
307e9ba666
Merge pull request #2413 from akortunov/weapon
...
Refactor weapon types behaviour
2019-08-09 20:02:10 +03:00
Andrei Kortunov
f0cef772fa
Refactor weapon types behaviour
...
1. Move weapon types behaviour from switches to the table (should allow
us to de-hardcode weapon types later)
2. Gereralize bones injection to actors skeletons (instead of using the
hardcoded xbase_anim_sh.nif)
2019-08-09 19:40:27 +04:00
capostrophic
9e93c9ecd2
Fix multiple-strip NiTriStrips loading
2019-08-08 22:48:24 +03:00
capostrophic
93f73fe87b
Fix comparison
2019-08-08 20:41:46 +03:00
capostrophic
7fc3153f62
Reduce code duplication further
2019-08-08 20:29:45 +03:00
capostrophic
91efdf18a9
Reduce Bullet part code duplication
2019-08-08 19:02:08 +03:00