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
capostrophic
ed154f0e2c
Fix typo and replace failsave with an assert
2019-08-08 18:42:58 +03:00
capostrophic
7cc70ffb50
Reduce skinned shape code duplication
2019-08-08 18:37:42 +03:00
capostrophic
bd6c455fd4
Reduce code duplication for non-skinned shapes
2019-08-08 18:12:46 +03:00
capostrophic
b4f54651f8
Make sure strips have valid size
2019-08-08 17:15:33 +03:00
capostrophic
adb06913f7
Add basic NiTriStrips rendering (no physics yet)
2019-08-08 17:09:06 +03:00
capostrophic
8efbdeaa57
Load NiTriStrips/NiTriStripsData (don't do anything yet)
2019-08-08 17:09:06 +03:00
capostrophic
6928adcee1
Prevent front() and operator[] from causing undefined behavior
2019-08-04 14:47:33 +03:00
AnyOldName3
bb72ed9744
Merge branch '9' into 'master'
...
IMPORTANT!! racingcrashfix #4766
See merge request OpenMW/openmw!119
2019-07-01 15:36:40 +00:00
Capostrophic
e06178bf0f
Make sure shadow shapes aren't visible (bug #5063 )
2019-06-22 18:13:41 +03:00
Capostrophic
7c8360d0f3
Use NiSwitchNode initial index field
2019-06-09 01:58:02 +03:00
bzzt
ffe8bbd2dd
racingcrashfix #4766
2019-05-29 13:37:00 +00:00
Andrei Kortunov
861d41f4a4
Native graphics herbalism support (feature #5010 )
2019-05-02 23:03:47 +04:00
Andrei Kortunov
7995a92672
Initialize missing variables
2019-03-19 09:12:31 +04:00
bzzt
a567111400
Use emplace instead of find-assign
2019-02-27 00:10:34 +03:00
Bret Curtis
d4564a9be7
Merge pull request #2180 from akortunov/includes
...
Remove redundant includes
2019-02-24 01:14:16 +01:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
Andrei Kortunov
60f112d11c
Add support for NiRollController (feature #4675 )
2019-02-21 12:34:35 +04:00
Chris Djali
cb5a57e41b
Merge pull request #1547 from AnyOldName3/osgshadow-test-vdsm
...
Shadows
2019-02-20 15:35:49 +00:00
Andrei Kortunov
058e289162
Do not create a redundant parent node for LOD and Switch nodes (bug #4837 )
2019-02-09 12:02:09 +04:00
Bret Curtis
f4313c02e1
Merge pull request #2153 from akortunov/glowing_windows
...
Native glowing windows support
2019-02-04 14:50:13 +01:00
Andrei Kortunov
60c9806d62
Share RigGeometry node data
2019-02-03 13:09:49 +04:00
Andrei Kortunov
9e4a339ad3
Daytime node switch support (feature #4836 )
2019-02-02 10:50:15 +04:00
Bret Curtis
e748abde7d
Merge pull request #2147 from akortunov/uvcontroller
...
Apply UVControllers only for given UV Set
2019-01-28 10:20:43 +01:00
Andrei Kortunov
87598f9419
Fill Switch and LOD nodes names
2019-01-27 15:18:57 +04:00
Andrei Kortunov
b2126c2b6b
Apply UVControllers only for given UV Set (bug #4827 )
2019-01-26 14:53:33 +04:00
AnyOldName3
8482236a82
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
2019-01-24 23:09:23 +00:00
Andrei Kortunov
2c38e337ae
Support NiSwitchNode (feature #4812 )
2019-01-23 21:01:54 +04:00
Andrei Kortunov
39c4a7833c
Fix out of range exception when try to load a particle node with empty sizes array (bug #4804 )
2019-01-16 22:00:50 +04:00
Andrei Kortunov
8e6fd348d1
RigGeometry optimization: optimize geometry optimization
2019-01-09 21:01:33 +04:00
Andrei Kortunov
254f01b89d
RigGeometry optimization: vector iteration is more cheap than map iteration
2019-01-09 11:52:11 +04:00
AnyOldName3
3785ba6aa0
Merge upstream/master
2018-10-30 22:38:09 +00:00
Andrei Kortunov
41e90bd56c
Unify random generator usage
2018-10-19 16:16:18 +04:00
AnyOldName3
474770eca8
Switch shadow map rendering to a specialised, simplified shader.
2018-10-16 21:23:31 +01:00
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
2018-10-09 10:21:12 +04:00
Andrei Kortunov
87394f2ebb
Revert "Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437 )"
...
This reverts commit 09427d3f5e
since the
fix is not entirely correct.
2018-09-29 16:21:40 +04:00
Andrei Kortunov
09427d3f5e
Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437 )
2018-09-16 14:38:58 +04:00