Alexei Dobrohotov
a64057fb36
Some NIF cleanup
...
Clean up keyframe controller construction
Make LOD and switch node generation static
Clarify decal map implementation
2021-12-11 16:16:16 +03:00
elsid
a665a38aca
Use MurmurHash3_x64_128 for file hash
2021-11-21 17:05:59 +01:00
Cody Glassman
d85f772269
Depth refactor
2021-11-21 02:25:05 +00:00
Alexei Dobrohotov
50b90a594d
Loading and basic handling of BSLightingShaderProperty
2021-11-13 22:52:45 +03:00
psi29a
ba0aae06ca
Merge branch 'morphyslaw' into 'master'
...
Morph geometry more like NifSkope (bug #6416 )
Closes #6416
See merge request OpenMW/openmw!1389
2021-11-13 18:42:17 +00:00
psi29a
41bd20e358
Merge branch 'bullet_shape_hash' into 'master'
...
Store BulletShape source file name and content hash
See merge request OpenMW/openmw!1379
2021-11-13 13:33:22 +00:00
Alexei Dobrohotov
c7edca559b
Morph geometry more like NifSkope (bug #6416 )
2021-11-13 15:58:59 +03:00
elsid
d7041613ef
Store BulletShape source file name and content hash
2021-11-11 00:27:18 +01:00
Alexei Dobrohotov
9880c43c86
Add specular strength shader parameter
2021-11-10 19:58:06 +03:00
psi29a
5836d0225f
Merge branch 'leave_butter_to_soften' into 'master'
...
Soft Particles (#6128 )
See merge request OpenMW/openmw!980
2021-11-09 14:16:47 +00:00
Alexei Dobrohotov
7a0c13fcf8
Make better use of std::clamp
2021-11-06 08:47:32 +03:00
Bo Svensson
356e9d7cf0
refactors osg::Callback virtual inheritance ( #3200 )
...
With this PR we refactor `SceneUtil::KeyframeController` not to require `virtual osg::Callback` inheritance. I suppose such `virtual` overhead is not justified here because it negatively impacts many other classes we derive from `osg::Callback`.
2021-10-30 22:43:18 +02:00
glassmancody.info
8c3b00164e
soft particles
2021-10-30 12:19:31 -07:00
Bo Svensson
87d52dc1fd
fixes coverity-ci warning
2021-10-06 10:04:03 +00:00
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback ( #3147 )
...
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
2021-10-05 14:21:12 +02:00
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback ( #3144 )
...
* nodecallback.hpp
* lightmanager.hpp
* lightmanager.cpp
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* [ci skip]
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* lightmanager.cpp
* lightmanager.cpp
* nodecallback.hpp
* [ci skip]
* [ci skip]
* controller.cpp
* [ci skip]
* osgacontroller.cpp
* keyframe.hpp
* controller.hpp
* keyframe.hpp
* [ci skip]
* keyframe.hpp
* animation.hpp
* [ci skip]
* weaponanimation.cpp
* nodecallback.hpp
2021-10-04 10:56:55 +02:00
Bo Svensson
2568f119a4
reapplies PR without npe ( #3137 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
* nifloader.cpp
* shadervisitor.cpp
2021-10-01 10:11:00 +02:00
Andrei Kortunov
e109d86489
Revert "avoids creating empty statesets on drawables ( #3132 )"
...
This reverts commit 957c25a491
.
2021-09-29 21:01:22 +04:00
Bo Svensson
957c25a491
avoids creating empty statesets on drawables ( #3132 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
2021-09-29 09:58:19 +02:00
Alexei Dobrohotov
0922d0b105
Clean up text key extraction
2021-08-22 05:56:30 +03:00
Alexei Dobrohotov
956edca524
Don't re-enable specularity w/ material controller for MW models
2021-08-09 21:17:13 +03:00
Alexei Dobrohotov
1fc7cb8191
Don't use FreezeOnCull for any particle system ( #4744 )
2021-08-08 03:36:35 +03:00
glassmancody.info
09e03fde2e
refactor and fix wobbly shores
2021-08-04 17:49:57 -07:00
glassmancody.info
70fac33940
initial reverse-z depth implementation
2021-08-04 17:39:11 -07:00
Alexei Dobrohotov
11694ba87f
Correct dark map and detail map alpha handling
...
Comment texenv usage in NIF loader
2021-07-29 04:48:59 +03:00
AnyOldName3
e42b3bf960
Adapt destination alpha factor for AMD
...
As discussed in the comment, it's unclear to me whether this is a driver
bug or mandatory behaviour only AMD implement.
Some more context is here:
https://gitlab.com/OpenMW/openmw/-/issues/6119#note_618245903
2021-07-04 23:00:33 +01:00
glassmancody.info
4bbbbb00f6
use particle data for particle system quota
2021-05-14 10:52:19 -07:00
Dobrohotov Alexei
19f0b80983
Improve null root handling
2021-05-05 02:41:30 +03:00
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
...
Rework warnings settings
2021-05-01 19:03:43 +01:00
Dobrohotov Alexei
971ba81ed2
Use higher level transformations in UVController
2021-04-30 18:28:03 +03:00
Dobrohotov Alexei
24f4bf9c28
Fix NiUVController UV offset calculations (bug #5995 )
2021-04-30 14:38:16 +03:00
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
2021-04-23 22:53:59 +04:00
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
2021-04-20 10:52:51 +04:00
Andrei Kortunov
7d5c5f8a24
Do not assign negative values to unsigned variables
2021-04-19 16:08:19 +04:00
fredzio
fda639eb57
Remove unused forward declarations
2021-04-11 14:46:51 +02:00
Alexei Dobrohotov
2fdbe9b3f6
Handle BSShader[PP/No]LightingProperty
2021-03-22 01:55:58 +03:00
Dobrohotov Alexei
952b31ac5c
NiZBufferProperty: handle depth test flag (bug #5902 )
2021-03-15 13:40:02 +03:00
Alexei Dobrohotov
46ec40fa92
Make sure NIFLoader avoids working further with empty geometry
2020-12-18 01:22:34 +03:00
Alexei Dobrohotov
1e6156e04a
Turn all NIF records into structs
2020-12-16 01:54:31 +03:00
Alexei Dobrohotov
c0b9823372
Read BSShaderProperty and handle NiGeometry properties
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
42226533d8
Handle BSLODTriShape
...
Its levels of detail are currently not handled
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
8fd45d85ec
Unify NiGeometry/NiGeometryData handling
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
8ca324af0a
Handle emissive TexEnv creation in one place
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
5310dd6807
Clean up particle vertex handling
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
1c83e4936d
Read BSShaderTextureSet and NiColorInterpolator
...
Accept boolean-based and 4D vector-based NiInterpolators in ValueInterpolator constructor
2020-12-15 00:06:43 +03:00
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